1.先关闭防火墙先

sudo yum install -y yum-utils device-mapper-persistent-data lvm2
sudo yum-config-manager --add-repo https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
sudo yum install docker-ce docker-ce-cli containerd.io
sudo systemctl start docker
# 开机自启动
sudo systemctl enable docker

2.安装docker

https://juejin.cn/post/6844904122932871182

[mysql]
# mysql客户端默认字符集
default-character-set=utf8
[mysqld]
# 设置默认时区
default-time_zone='+8:00'
# 设置3306端口
port = 3306 
# 就是将mysql回收空闲连接的时间变长,mysql默认回收时间是8小时
wait_timeout=86400
#日志时区为系统时间
log_timestamps=SYSTEM
# 设置mysql的安装目录
#basedir=
# 设置mysql数据的存放目录
datadir=/var/lib/mysql
# 允许最大连接数
max_connections=200
# 服务端使用的字符集默认为8比特编码的latin1字符集
character-set-server=utf8
# 创建新表时将使用的默认存储引擎
default-storage-engine=INNODB
# innodb缓存池的大小
innodb_buffer_pool_size=512M
# innodb重做日志的缓存池大小
innodb_log_buffer_size=10M

# 日志部分

## 错误日志
log_error = /var/lib/mysql/mysql-error.log
# 二进制日志
# binlog过期的时间
expire_logs_days = 3

## 查询日志
#开启查询日志
general_log=ON
# 查询日志路径
general_log_file=/var/lib/mysql/mysql-query.log

# 慢查询日志
# 开启慢查询,0表示关闭
slow_query_log=1
# 指定慢查询日志路径
slow_query_log_file = /var/lib/mysql/mysql-slow-query.log
# 查询时间>=1秒才记录日志
long_query_time = 1
# 记录没有使用索引的 SQL 语句
# log_queries_not_using_indexes = 1
docker pull mysql:8.0

docker images |grep mysql

docker run --name mysql01 \
-p 3306:3306 \
-v /app/mysql/my.cnf:/etc/mysql/my.cnf \
-v /app/mysql/data:/var/lib/mysql \
-v /app/mysql/logs:/logs \
-v /app/mysql/mysql-files:/var/lib/mysql-files \
-v /etc/localtime:/etc/localtime \
-e MYSQL_ROOT_PASSWORD=root \
--restart=always \
--privileged=true \
-d mysql:8.0

-p 3306:3306:将容器的 3306 端口映射到主机的 3306 端口。
-v /app/mysql/conf.d:/etc/mysql/conf.d -v /app/mysql/logs:/logs -v /app/mysql/data:/var/lib/mysql:挂载文件
-e MYSQL_ROOT_PASSWORD=123456:初始化 root 用户的密码。

# 进入容器
docker exec -it mysql01 /bin/bash

开启慢日志后,日志的时间和容器的时间相差8小时
这里的log_timestamps参数值为UTC,修改为SYSTEM系统时间就好
解决方法:

show global variables like ‘log_timestamps’
set global log_timestamps=SYSTEM;

注意:使用旧数据时,需要删除data中的mysql.sock

3.docker安装redis

docker run -p 6379:6379 --name redis01 \
-v /app/redis/redis.conf:/etc/redis/redis.conf \
-v /app/redis:/data \
-v /etc/localtime:/etc/localtime:ro \
-d redis redis-server /etc/redis/redis.conf

4.docker安装nacos

新建文件夹 init.d logs
新建文件 custom.properties

# 配置
server.contextPath=/nacos
server.servlet.contextPath=/nacos
server.port=8848

spring.datasource.platform=mysql
db.num=1
db.url.0=jdbc:mysql://bj-cynosdbmysql-grp-brlewqje.sql.tencentcdb.com:12306/study-nacos?characterEncoding=utf8&connectTimeout=1000&socketTimeout=3000&autoReconnect=true
db.user=root
db.password=root

nacos.cmdb.dumpTaskInterval=3600
nacos.cmdb.eventTaskInterval=10
nacos.cmdb.labelTaskInterval=300
nacos.cmdb.loadDataAtStart=false
management.metrics.export.elastic.enabled=false
management.metrics.export.influx.enabled=false
server.tomcat.accesslog.enabled=true
server.tomcat.accesslog.pattern=%h %l %u %t "%r" %s %b %D %{User-Agent}i
nacos.security.ignore.urls=/,/**/*.css,/**/*.js,/**/*.html,/**/*.map,/**/*.svg,/**/*.png,/**/*.ico,/console-fe/public/**,/v1/auth/login,/v1/console/health/**,/v1/cs/**,/v1/ns/**,/v1/cmdb/**,/actuator/**,/v1/console/server/**
nacos.naming.distro.taskDispatchThreadCount=1
nacos.naming.distro.taskDispatchPeriod=200
nacos.naming.distro.batchSyncKeyCount=1000
nacos.naming.distro.initDataRatio=0.9
nacos.naming.distro.syncRetryDelay=5000
nacos.naming.data.warmup=true
nacos.naming.expireInstance=true
# 安装
docker  run --name nacos01 -d \
-p 8848:8848 \
--privileged=true \
--restart=always \
-e JVM_XMS=256m \
-e JVM_XMX=256m \
-e MODE=standalone \
-e PREFER_HOST_MODE=hostname \
-v /app/nacos/logs:/home/nacos/logs \
-v /app/nacos/init.d/custom.properties:/home/nacos/init.d/custom.properties \
-v /etc/localtime:/etc/localtime:ro \
nacos/nacos-server

docker安装

docker pull docker.io/rabbitmq:3.8-management
# 运行
docker run -d --name rabbitmq01 \
-p 5672:5672 -p 15672:15672 \
-v /app/rabbitmq:/var/lib/rabbitmq --hostname localhost \
-e RABBITMQ_DEFAULT_VHOST=localhost  \
-e RABBITMQ_DEFAULT_USER=root \
-e RABBITMQ_DEFAULT_PASS=root \
-v /etc/localtime:/etc/localtime:ro \
rabbitmq:3.8-management

原文链接: https://blog.csdn.net/weixin_46399870/article/details/122052729