Docker-java常用容器安装命令

1.常用容器安装命令

前言

仅作参考学习,若有错误请评论留言!

1.elasticsearch

  • 通过下面的Docker命令即可安装单机版本的elasticsearch:
docker run -d \                          # -d 表示以守护进程(后台)模式运行容器
  --name es \                           # 为容器指定名称为"es"
  -e "ES_JAVA_OPTS=-Xms512m -Xmx512m" \ # 设置JVM堆内存初始值和最大值均为512MB
  -e "discovery.type=single-node" \      # 设置为单节点模式(开发测试用,生产环境需集群)
  -v es-data:/usr/share/elasticsearch/data \  # 挂载数据卷,持久化存储索引数据
  -v es-plugins:/usr/share/elasticsearch/plugins \ # 挂载插件卷,保存安装的插件
  --privileged \                         # 授予容器特权模式
  --network xxx \                        # 将容器加入名为"xxx"的自定义Docker网络
  -p 9200:9200 \                        # 映射REST API端口(HTTP通信)
  -p 9300:9300 \                        # 映射节点通信端口(TCP协议)
  elasticsearch:7.12.1                  # 使用指定版本的Elasticsearch镜像

2. seata

docker run --name seata \               # 指定容器名称为"seata"
  -p 8099:8099 \                       # 映射TCP服务端口
  -p 7099:7099 \                       # 映射控制台端口
  -e SEATA_IP=192.168.100.128 \        # 设置Seata服务器IP(必须与客户端配置一致)
  -v ./seata:/seata-server/resources \ # 挂载配置文件目录(宿主机当前目录下的seata文件夹)
  --privileged=true \                  # 授予容器特权模式
  --network xxx \                      # 加入自定义Docker网络(实现容器间通信)
  -d \                                 # 后台运行模式
  seataio/seata-server:1.5.2          # 使用指定版本的Seata镜像

3. nacos

docker run -d \                          # 后台模式运行容器
  --name nacos \                         # 为容器指定名称为 "nacos"
  --env-file ./nacos/custom.env \        # 从文件加载环境变量(推荐用于生产配置)
  -p 8848:8848 \                        # 映射主服务端口
  -p 9848:9848 \                        # 集群RPC端口(2.0+版本新增)
  -p 9849:9849 \                        # 集群RAFT端口(2.0+版本新增)
  --restart=always \                    # 容器退出时自动重启
  --network xxx \                       # 加入自定义Docker网络
  nacos/nacos-server:v2.1.0-slim        # 使用轻量版的Nacos 2.1.0镜像

4. mysql

docker run -d \
  --name mysql \
  -p 3306:3306 \
  -e TZ=Asia/Shanghai \  #设置容器内系统的时区为中国上海时区      
  -e MYSQL_ROOT_PASSWORD=123 \             #mysql容器密码
  -v /root/mysql/data:/var/lib/mysql \
  -v /root/mysql/conf:/etc/mysql/conf.d \
  -v /root/mysql/init:/docker-entrypoint-initdb.d \
  #将宿主机目录 `/root/mysql/init` 挂载到容器内的 `/docker-entrypoint-initdb.d` 目录
  --network xxx\
  mysql
参数解释:
-v mysql:/var/lib/mysql # 会被识别为一个数据卷叫mysql,运行时会自动创建这个数据卷
-v ./mysql:/var/lib/mysql # 会被识别为当前目录下的mysql目录,运行时如果不存在会创建目录

5. nginx

docker run -d \  
  --name nginx \  
  -p 18080:18080 \  
  -p 18081:18081 \  
  -v /root/nginx/html:/usr/share/nginx/html \  
  #将宿主机上的 /root/nginx/html 目录挂载到容器内的 /usr/share/nginx/html 目录
  -v /root/nginx/nginx.conf:/etc/nginx/nginx.conf \  
  #将宿主机上的/root/nginx/nginx.conf文件挂载到容器内的/etc/nginx/nginx.conf文件
  --network xxx \  
  nginx
  

6. Rabbitmq

docker run \
  -e RABBITMQ_DEFAULT_USER=itheima \      # 设置默认用户名
  -e RABBITMQ_DEFAULT_PASS=123321 \      # 设置默认密码
  -v mq-plugins:/plugins \               # 挂载插件卷
  --name mq \                            # 容器命名
  --hostname mq \                        # 设置主机名
  -p 15672:15672 \                       # 管理界面端口映射
  -p 5672:5672 \                         # AMQP协议端口映射
  --network xxx \                        # 指定自定义网络
  -d \                                   # 后台运行
  rabbitmq:3.8-management                # 镜像名称

7.Kibana

docker run -d \                   
  --name kibana \                 # 指定容器名称为 "kibana"
  -e ELASTICSEARCH_HOSTS=http://es:9200 \  # 配置要连接的Elasticsearch地址
  --network=xxx \                 # 加入名为 "xxx" 的Docker自定义网络
  -p 5601:5601 \                  # 端口映射(将容器5601端口暴露给宿主机)
  kibana:7.12.1                  # 使用指定版本的Kibana镜像
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值