docker 安装 mysql、redis、rabbitmq、RocketMQ、Nacos 等中间件

docker 用宝塔进行管理比较方便,如果想外部访问,一定要用宝塔在安全那里打开对应端口

一、docker安装

  • 使用 宝塔 直接安装即可

二、mysql安装

# 1.删除原来的MySQL容器
docker rm -f mysql

# 2.进入root目录
cd ~

# 3.创建并运行新mysql容器,挂载本地目录
docker run -d 
  --name mysql 
  -p 3306:3306 
  -e TZ=Asia/Shanghai 
  -e MYSQL_ROOT_PASSWORD=123 
  -v ./mysql/data:/var/lib/mysql 
  -v ./mysql/conf:/etc/mysql/conf.d 
  -v ./mysql/init:/docker-entrypoint-initdb.d 
  mysql

# 4.查看root目录,可以发现~/mysql/data目录已经自动创建好了
ls -l mysql
# 结果:
总用量 4
drwxr-xr-x. 2 root    root   20 5月  19 15:11 conf
drwxr-xr-x. 7 polkitd root 4096 5月  19 15:11 data
drwxr-xr-x. 2 root    root   23 5月  19 15:11 init

# 查看data目录,会发现里面有大量数据库数据,说明数据库完成了初始化
ls -l data

# 5.查看MySQL容器内数据
# 5.1.进入MySQL
docker exec -it mysql mysql -uroot -p123
# 5.2.查看编码表
show variables like "%char%";
# 5.3.结果,发现编码是utf8mb4没有问题
+--------------------------+--------------------------------+
| Variable_name            | Value                          |
+--------------------------+--------------------------------+
| character_set_client     | utf8mb4                        |
| character_set_connection | utf8mb4                        |
| character_set_database   | utf8mb4                        |
| character_set_filesystem | binary                         |
| character_set_results    | utf8mb4                        |
| character_set_server     | utf8mb4                        |
| character_set_system     | utf8mb3                        |
| character_sets_dir       | /usr/share/mysql-8.0/charsets/ |
+--------------------------+--------------------------------+

# 6.查看数据
# 6.1.查看数据库
show databases;
  • 注意:mysql这样是没办法进行外部链接的还需要一步打开外部链接操作。
    需要在进入 mysql 的bash之后进行操作:具体操作

三、Redis Latest

docker run -p 6379:6379 --name redis  -d redis redis-server --requirepass "123456"
  • 通过简易版方式安装,主打的就是有问题铲了重装。

四、RocketMQ 4.5.1安装步骤

(1)安装 NameServer

docker run -d -p 9876:9876 --name rmqnamesrv foxiswho/rocketmq:server-4.5.1

(2)安装 Brocker

  • 1)新建配置目录。
mkdir -p ${HOME}/docker/software/rocketmq/conf
  • 2)新建配置文件 broker.conf — ${HOME}/docker/software/rocketmq/conf下面
# 进入目录
cd ${HOME}/docker/software/rocketmq/conf

# 使用 vim 创建文件并编辑
vim broker.conf 
#配置文件
brokerClusterName = DefaultCluster
brokerName = broker-a
brokerId = 0
deleteWhen = 04
fileReservedTime = 48
brokerRole = ASYNC_MASTER
flushDiskType = ASYNC_FLUSH
# 此处为本地ip, 如果部署服务器, 需要填写服务器外网ip
brokerIP1 = xx.xx.xx.xx
  • 3)创建容器
docker pull pangliang/rocketmq-console-ng
docker run -d 
--link rmqnamesrv:namesrv 
-e "JAVA_OPTS=-Drocketmq.config.namesrvAddr=namesrv:9876 -Drocketmq.config.isVIPChannel=false" 
--name rmqconsole 
-p 8088:8080 
-t pangliang/rocketmq-console-ng

运行成功,稍等几秒启动时间,浏览器输入xx.xx.xx.xx:8088 查看。

注意要记得打开 linux 的端口,可以在宝塔设置。

五、Nacos 2.1.2

docker run 
-d -p 8848:8848 
-p 9848:9848 
--name nacos2 
-e MODE=standalone 
-e TIME_ZONE='Asia/Shanghai' 
nacos/nacos-server:v2.1.2

运行成功,稍等几秒启动时间,浏览器输入 http://服务器地址:8848/nacos/index.html 查看控制台。