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 服务器将每个写操作追加到持久化文件中,以提高数据的可靠性。

redis:7.2的redis.conf配置文件内容

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 镜像的最新版本。

rabbitmq

docker run \
 -e RABBITMQ_DEFAULT_USER=admin \
 -e RABBITMQ_DEFAULT_PASS=123456 \
 -v mq-plugins:/plugins \
 --name mq \
 --hostname mq \
 -p 15672:15672 \
 -p 5672:5672 \
 -d \
 rabbitmq:3.8-management

docker run:Docker 命令,用于创建并启动一个新的容器。
-e RABBITMQ_DEFAULT_USER=itheima:设置环境变量 RABBITMQ_DEFAULT_USER,指定 RabbitMQ 的默认用户名为 admin
-e RABBITMQ_DEFAULT_PASS=123321:设置环境变量 RABBITMQ_DEFAULT_PASS,指定 RabbitMQ 的默认密码为 123456
-v mq-plugins:/plugins \:挂载一个名为 mq-plugins 的 Docker 卷到容器的 /plugins 目录。这允许你在容器外部管理 RabbitMQ 插件。
--name mq:为容器指定一个名称,这里是 mq
--hostname mq:设置容器的主机名为 mq
-p 15672:15672:将容器内部的 15672 端口映射到宿主机的 15672 端口。RabbitMQ 的管理界面默认监听在这个端口。
-p 5672:5672:将容器内部的 5672 端口映射到宿主机的 5672 端口。这是 RabbitMQ 服务默认使用的 AMQP 协议端口。
-d:以守护进程模式运行容器,即在后台运行。
rabbitmq:3.8-management:指定要运行的 Docker 镜像名称和标签,这里是 rabbitmq 镜像的 3.8-management 版本。这个标签通常包含了 RabbitMQ 的基础功能以及管理界面。

elasticsearch

docker run -d \
  --name es \
  -e "ES_JAVA_OPTS=-Xms512m -Xmx512m" \
  -e "discovery.type=single-node" \
  -v es-data:/usr/share/elasticsearch/data \
  -v es-plugins:/usr/share/elasticsearch/plugins \
  --privileged \
  -p 9200:9200 \
  -p 9300:9300 \
  elasticsearch:7.12.1
  1. docker run:这是 Docker 的命令行工具,用来创建并启动一个新的容器。
  2. -d:这个参数告诉 Docker 在后台运行容器,也就是以“分离模式”运行。
  3. --name es:这个参数给容器指定一个名称,这里是 es,代表 Elasticsearch。
  4. -e "ES_JAVA_OPTS=-Xms512m -Xmx512m":这个参数设置环境变量 ES_JAVA_OPTS,用于配置 Elasticsearch 使用的 JVM 启动参数。这里设置了最小堆内存(-Xms)和最大堆内存(-Xmx)均为 512MB。
  5. -e "discovery.type=single-node":这个参数设置环境变量 discovery.type,用于配置 Elasticsearch 的发现机制。这里设置为 single-node,意味着 Elasticsearch 将作为一个单一节点运行,不参与集群。
  6. -v es-data:/usr/share/elasticsearch/data:这个参数挂载一个卷,将宿主机上的 es-data 目录挂载到容器内的 /usr/share/elasticsearch/data 目录。这样,Elasticsearch 的数据可以持久化存储在宿主机上。
  7. -v es-plugins:/usr/share/elasticsearch/plugins:这个参数挂载另一个卷,将宿主机上的 es-plugins 目录挂载到容器内的 /usr/share/elasticsearch/plugins 目录。这样,Elasticsearch 的插件可以持久化存储在宿主机上。
  8. --privileged:这个参数给予容器扩展的权限,使其能够访问宿主机的某些资源。
  9. -p 9200:9200:这个参数将容器的 9200 端口映射到宿主机的 9200 端口,这样可以通过宿主机的 9200 端口访问 Elasticsearch 的 HTTP REST API。
  10. -p 9300:9300:这个参数将容器的 9300 端口映射到宿主机的 9300 端口,这是 Elasticsearch 用于节点间通信的端口。
  11. elasticsearch:7.12.1:这是要运行的 Docker 镜像的名称和标签,这里是 Elasticsearch 的官方镜像,版本为 7.12.1。
Logo

有“AI”的1024 = 2048,欢迎大家加入2048 AI社区

更多推荐