1、创建nacos的数据库配置
1.1、创建数据库
1.2、创建用户nacos并授权数据库
参考 06 mysql 创建账户部分内容
1.3、执行数据库脚本
导入官方nacos sql语句。如果是历史有历史数据, 从历史数据sql导入
2、创建 bridge 网络并指定 IP 区间
2.1、创建自定义网络
docker network create --driver bridge --subnet 172.0.0.0/16 nacos_network
2.2、查看已存在网络
docker network ls
3、创建数据和配置服务器存放目录
3.1、 创建 nacos 配置存放目录
mkdir -p /root/docker/nacos/conf && chown -R 200 /root/docker/nacos/conf
3.2、 创建 nacos 日志存放目录
mkdir -p /root/docker/nacos/logs && chown -R 200 /root/docker/nacos/logs
3.3、 创建 nacos 数据存放目录
mkdir -p /root/docker/nacos/data && chown -R 200 /root/docker/nacos/data
4、安装nacos
4.1、注意点
1、先启动,然后从容器中复制出来配置文件、然后挂载本地目录,再次启动,启动时候可以修改运行端口号等其他配置项内容哦
4.2、测试运行(未挂载本地目录): 目的是复制配置文件出来
docker run -d -p 17000:17000 \ --name nacos \ --network nacos_network \ --ip 172.0.0.28 \ --env MODE=standalone \ --env SPRING_DATASOURCE_PLATFORM=mysql \ --env MYSQL_SERVICE_HOST=127.0.0.1 \ --env MYSQL_SERVICE_PORT=18001 \ --env MYSQL_SERVICE_DB_NAME=nacos \ --env MYSQL_SERVICE_USER=nacos \ --env MYSQL_SERVICE_PASSWORD=nacos \ nacos/nacos-server:latest
4.3、复制相关配置文件到挂载目录
docker cp -a nacos:/home/nacos/conf /root/docker/nacos
4.4、修改端口(不是必须的, 可默认)或数据库配置
vi /root/docker/nacos/conf/application.properties
开启需要密码才登录
4.5、删除已生成的历史容器
docker rm -f nacos
4.6、重新部署nacos(挂载本地目录)
docker run -d -p 17000:8848 \
--name nacos \
--network nacos_network \
--ip 172.0.0.28 \
--env MODE=standalone \
--env SPRING_DATASOURCE_PLATFORM=mysql \
--env MYSQL_SERVICE_HOST=数据库IP \
--env MYSQL_SERVICE_PORT=18001 \
--env MYSQL_SERVICE_DB_NAME=cloud_nacos \
--env MYSQL_SERVICE_USER=mydbuser \
--env MYSQL_SERVICE_PASSWORD=myDBPass123 \
-v /root/docker/nacos/conf:/home/nacos/conf \
-v /root/docker/nacos/logs:/home/nacos/logs \
-v /root/docker/nacos/data:/home/nacos/data \
nacos/nacos-server:latest
4.7、特殊参数说明
4.7.1、自定义分配网络, --network nacos_network \
4.7.2、nacos 单机实例 --env MODE=standalone \
4.7.3、指定 nacos 数据源为MySQL --env SPRING_DATASOURCE_PLATFORM=mysql \
5、验证是否部署成功
5.1、查看启动日志
5.2、查看视图界面
5.2.1、默认账号密码: nacos/nacos
5.2.2、浏览地址
http://你的IP:17000/nacos
5.2.3、登录成功后视图
6、配置中心
7、注册中心
下一节:Nacos实现报名系统微服务拆分实战(14:53)