Docker创建运行Nacos容器
1 简单创建nacos,进入容器配置数据库
#查看镜像
docker search nacos
#拉取镜像
docker pull nacos/nacos-server:v2.2.3
#创建容器
docker run -d --name nacos -p 9007:8848 -e PREFER_HOST_MODE=hostname -e MODE=standalone nacos/nacos-server:v2.2.3
#进入容器
docker exec -it *****(服务id) /bin/bash
【//此时已经进入容器
cd conf
vi application.properties --> insert插入模式 -> 更改内容 如下图
【
esc 退出编辑模式
:wq 保存并退出
】
#列出运行中的容器
docker ps
#重启nacos
docker restart ***(nacos容器id)
复杂创建nacos容器,使用参数配置数据库【推荐】
# 首先准备好,需要挂载的文件夹
# 1.需要转杯什么文件夹,并不知道,那就先随便创一个nacos容器
#查看镜像
docker search nacos
#拉取镜像
docekr pull nacos/nacos-server
#创建容器
docker run -d --name nacos -p 8848:8848 -e PREFER_HOST_MODE=hostname -e MODE=standalone nacos/nacos-server
# 2.查看容器
docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
150acd34989b nacos/nacos-server "bin/docker-startup.…" 30 minutes ago Up 30 minutes 0.0.0.0:8848->8848/tcp, :::8848->8848/tcp nacos
# 3.进入nacos容器,150acd34989b 是 容器id
docker exec -it 150acd34989b /bin/bash
进入容器的操作,查看文件夹
[root@iZ2zeb30om76a6yxf6tje2Z ~]# docker exec -it 150acd34989b /bin/bash
[root@150acd34989b nacos]# ls
LICENSE NOTICE bin conf data derby.log logs target work
[root@150acd34989b nacos]# cd ..
[root@150acd34989b home]# ls
nacos
[root@150acd34989b home]#
# 查看挂载是否成功,以及环境变量的配置 docker inspect 9a361cd1952a(容器id)
# 4.输入“exit”, 退出容器
# 5.创建文件夹可以这样 mkdir -p /data/docker/nacos
# 我这边直接使用docker cp将容器内容复制出来
# /data/docker/nacos这个nacos文件夹如果没创建,则直接赋值在这一层,如果存在,会复制在这个文件夹里面,变成 /data/docker/nacos/nacos
(格式: docker cp 容器id:容器内文件位置 将要拷贝到最外层的位置)
docker cp 150acd34989b:/home/nacos /data/docker/nacos
# 6.文件夹创建好,就可以把这个容器删除
# 停止容器运行
docker stop 容器id
# 移除容器
docker rm 容器id
细节解析
docker run -d \
--privileged=true \给与权限,使用该参数,container内的root拥有真正的root权限
-e PREFER_HOST_MODE=hostname \ #
-e MODE=standalone \ # 使用单机模式
-e SPRING_DATASOURCE_PLATFORM=mysql \ # 数据库类型
-e MYSQL_SERVICE_HOST=localhost \ # 数据库地址
-e MYSQL_SERVICE_USER=root \ # 数据库账号
-e MYSQL_SERVICE_PASSWORD=12345678 \ # 数据库密码
-e MYSQL_SERVICE_DB_NAME=nacos_config_name \ # 数据库名称
-e JVM_XMS=256m \ # 程序启动时占用内存大小
-e JVM_XMX=256m \ # 程序运行期间最大可占用的内存大小
-e JVM_XMN=256m \ #
-p 8848:8848 \ #端口映射
-v /lbs/nacos/logs:/nacos/logs \ #挂载
--name nacos \ #容器名
--restart=always \ # 自动启动
nacos/nacos-server:latest #镜像名:版本(是最新的版本直接镜像名即可)
————————————————
docker run -d --name nacos -p 8848:8848 -e PREFER_HOST_MODE=hostname -e MODE=standalone nacos/nacos-server
docker exec -it 150acd34989b /bin/bash
(格式: docker cp 容器id:容器内文件位置 将要拷贝到最外层的位置)
docker cp 43f24956762e:/home/nacos /root/docker-dir
docker run -itd \
--privileged=true \
--name nacos \
--restart=always \
-e PREFER_HOST_MODE=hostname \
-e MODE=standalone \
-e SPRING_DATASOURCE_PLATFORM=mysql \
-e MYSQL_SERVICE_HOST=127.0.0.1 \
-e MYSQL_SERVICE_PORT=3306 \
-e MYSQL_SERVICE_USER=root \
-e MYSQL_SERVICE_PASSWORD=master$12342023 \
-e MYSQL_SERVICE_DB_NAME=xy-config \
-e TIME_ZONE='Asia/Shanghai' \
-p 9007:8848 \
-v /root/docker-dir/nacos/logs:/home/nacos/logs \
-v /root/docker-dir/nacos/conf:/home/nacos/conf \
-v /root/docker-dir/nacos/data:/home/nacos/data \
nacos/nacos-server
**************************
NACOS 2.3.2
要多开几个端口
docker run -itd \
--privileged=true \
--name nacos \
--restart=always \
-e PREFER_HOST_MODE=hostname \
-e MODE=standalone \
-e TIME_ZONE='Asia/Shanghai' \
-p 8848:8848 \
-p 9848:9848 -p 9849:9849 \
-v /home/user/docker-dir/nacos/logs:/home/nacos/logs \
-v /home/user/docker-dir/nacos/conf:/home/nacos/conf \
-v /home/user/docker-dir/nacos/data:/home/nacos/data \
nacos/nacos-server
docker run -itd \
--privileged=true \
--name nacos \
--restart=always \
-e PREFER_HOST_MODE=hostname \
-e MODE=standalone \
-e TIME_ZONE='Asia/Shanghai' \
-p 8848:8848 \
-p 9848:9848 -p 9849:9849 \
-v /home/user/docker-dir/nacos/logs:/home/nacos/logs \
-v /home/user/docker-dir/nacos/conf:/home/nacos/conf \
-v /home/user/docker-dir/nacos/data:/home/nacos/data \
nacos/nacos-server
posted on 2024-04-12 10:15 zyp_java_net 阅读(384) 评论(0) 编辑 收藏 举报
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· 单线程的Redis速度为什么快?
2021-04-12 vue 跳转 同一路由不刷新问题解决