文章目录
1、下载镜像
docker pull nacos/nacos-server
查看镜像:docker images
2、启动nacos
注意:如果nacos版本在2.0及以上,需要把8848、9848和9849三个端口映射出来,否则访问会404失败
也可以直接使用步骤3中的启动命令,可以挂载目录和设置启动内存
docker run --env MODE=standalone --name nacos -d -p 8848:8848 -p 9848:9848 -p 9849:9849 nacos/nacos-server
3、挂载nacos
-
新建nacos挂载目录
只需要新建conf的挂载即可,其他目录的挂载会自动生成目录(如logs)
mkdir /mydata/nacos/conf
-
把nacos容器中的/home/nacos/conf文件夹拷贝
上述步骤2中,已经启动了nacos容器,我们把容器中的配置文件拷贝出来即可
docker cp nacos:/home/nacos/conf/ /mydata/nacos/
windows:
docker cp nacos:/home/nacos/conf/ D:/Develop/Docker/my/nacos/conf
-
删除nacos容器
docker stop nacos docker remove nacos
-
重新run nacos容器(挂载目录的方式)
docker run --name nacos -p 8848:8848 \ -p 9848:9848 -p 9849:9849 \ --privileged=true \ --restart=always \ -e MODE=standalone \ -e PREFER_HOST_MODE=hostname \ -e JVM_XMS=256m \ -e JVM_XMX=1024m \ -v /mydata/nacos/logs:/home/nacos/logs \ -v /mydata/nacos/conf/:/home/nacos/conf \ -d nacos/nacos-server
windows:
docker run --name nacos -p 8848:8848 -p 9848:9848 -p 9849:9849 --privileged=true --restart=always -e MODE=standalone -e PREFER_HOST_MODE=hostname -e JVM_XMS=256m -e JVM_XMX=1024m -v D:/Develop/Docker/my/nacos/logs:/home/nacos/logs -v D:/Develop/Docker/my/nacos/conf:/home/nacos/conf -d nacos/nacos-server
参数详解:
-p 8848:8848 # 宿主机端口:容器端口 –name nacos # 容器名字 –privileged=true # 使用该参数,container内的root拥有真正的root权限 –network host # 设置属于该容器的网络 –restart=always # 总是重启 -e PREFER_HOST_MODE=hostname # 是否支持 hostname,可选参数为hostname/ip,默认值是当前宿主机的ip -e MODE=standalone # 使用 standalone模式(单机模式),MODE值有cluster模式/standalone模式两种 -e JVM_XMS=256m # -Xms 为jvm启动时分配的内存[我设置会导致nacos启动异常,无法访问,故没有设置] -e JVM_XMX=1024m # -Xmx 为jvm运行过程中分配的最大内存[我设置会导致nacos启动异常,无法访问,故没有设置] -d nacos/nacos-server # 后台启动模式及使用的镜像 -v /mydata/nacos/logs:/home/nacos/logs \ -v:挂载宿主机的一个目录, 持久化存储的关键所在,将主机目录挂载到容器对应目录,分别是:配置文件、日志文件 –restart=always:容器自动启动参数,其值可以为[no,on-failure,always] no为默认值,表示容器退出时,docker不自动重启容器 on-failure表示,若容器的退出状态非0,则docker自动重启容器,还可以指定重启次数,若超过指定次数未能启动容器则放弃 always表示,只要容器退出,则docker将自动重启容器
4、配置mysql
方式一:进入nacos容器修改配置
docker exec -it nacos bash vi conf/application.properties
方式二:修改宿主挂载目录的配置文件即可
vi /mydata/nacos/conf/application.properties
5、创建nacos数据库
创建SQL脚本在官方的GitHub上,这里附上gitee地址:
https://gitee.com/mirrors/Nacos/blob/develop/distribution/conf/mysql-schema.sql#
6、 重启容器
docker restart nacos
7、访问nacos
http://IP地址:8848/nacos
默认账号:nacos
默认密码:nacos