redis
docker run -p 6379:6379 --name redis2 -v D:\Docker_Container\redis\conf\redis.conf:/etc/redis/redis.conf -v D:\Docker_Container\redis\data:/data -d redis:7.2.3 redis-server /etc/redis/redis.conf --appendonly yes
-p 6379:6379
:将宿主机的 6379 端口映射到容器的 6379 端口。Redis 默认在 6379 端口上运行,这使得宿主机上的应用可以通过 localhost:6379 访问容器中的 Redis 实例。
--name redis2
:给容器指定一个名称 redis2。这样可以通过这个名称来管理容器(例如启动、停止、查看日志等)。
-v E:\docker\redis\conf\redis.conf:/etc/redis/redis.conf
:
将宿主机的 E:\docker\redis\conf\redis.conf 文件挂载到容器的 /etc/redis/redis.conf 路径。这使得 Redis 容器使用宿主机上的配置文件。
-v E:\docker\redis\data:/data
:
将宿主机的 E:\docker\redis\data 目录挂载到容器的 /data 目录。这样 Redis 的数据持久化文件(如 AOF 文件和 RDB 文件)会保存在宿主机上,即使容器被删除,数据也不会丢失。
-d
:以守护进程(后台)模式运行容器。这意味着容器启动后会在后台运行,不会阻塞当前终端。
redis:7.2.3
:使用标签为 7.2.3 的 Redis 镜像。Docker 会从 Docker Hub 上拉取这个 Redis 镜像(如果本地没有的话)。
redis-server /etc/redis/redis.conf --appendonly yes
:
这是容器启动后执行的命令。它启动 Redis 服务器,并指定使用 /etc/redis/redis.conf 作为配置文件,同时启用 AOF(Append-Only File)持久化模式。
redis-server /etc/redis/redis.conf
:指定使用 /etc/redis/redis.conf 配置文件启动 Redis 服务器。
--appendonly yes
:启用 AOF 持久化模式,这将确保 Redis 服务器将每个写操作追加到持久化文件中,以提高数据的可靠性。
mysql
docker run -d --name mysql8.0 -p 3306:3306 -v ./mysql/data:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=123456 mysql:8.0
-d
:以后台的方式运行;
--name mysql
:指定容器的名称为 mysql8.0;
-p 3306:3306
: 将容器中的 3306 端口挂载到宿主机的 3306 端口上(前面是宿主机的端口号,后面是容器的端口号);
-e MYSQL_ROOT_PASSWORD=123456
:指定 root 用户的密码为 123456;
-v ./mysql/data:/var/lib/mysql
:数据持久化到宿主机
nacos
docker run -d --name nacos2 \
-p 8848:8848 \
-p 9848:9848 \
-p 9849:9849 --env-file ./custom.env \
nacos/nacos-server:latest
这条命令是在后台启动一个名为 nacos2
的 Nacos 服务器容器。该容器将以下端口映射到主机:
- 容器的8848端口映射到主机的8848端口。
- 容器的9848端口映射到主机的9848端口。
- 容器的9849端口映射到主机的9849端口。
同时,容器会读取 ./custom.env
文件中的环境变量,并应用到容器中。启动的容器使用的是 nacos/nacos-server
镜像的最新版本。