Nacos访问需要配合数据库才可以正常访问,首先需要部署mysql数据库
在此之前我做了一个互为主从的mysql集群可以看一下↓↓↓↓↓↓↓↓↓↓
基于Docker配置mysql互为主从_W1124824402的博客-CSDN博客
两台机器都拉取mysql的镜像docker pull mysql:5.7
构建mysql容器
Master1
docker run -itd --name=master1 -p 3339:3306 -e MYSQL_ROOT_PASSWORD=123456 mysql:5.7
Master2
docker run -itd --name=master2 -p 3339:3306 -e MYSQL_ROOT_PASSWORD=123456 mysql:5.7
编辑初始化文件 vim nacos.sql 把下面文档的内容复制进去
初始化文件nacos/nacos-mysql.sql at master · alibaba/nacos · GitHub
编辑好后把文件导入到容器
docker cp nacos.scp master1:/root
把文件导入到数据库
mysql -uroot -p123456 llvision < /root/nacos.sql
导入完成后查看一下
show tables;
完成mysql的配置后拉取nacos的镜像
docker pull nacos/nacos-server:1.3.0
创建Nacos的工作目录
每个节点都创建
mkdir -p /usr/local/docker/nacos-server
mkdir -p /usr/local/docker/nacos-server/env
mkdir -p /usr/local/docker/nacos-server/logs
mkdir -p /usr/local/docker/nacos-server/init.d
调整custom.properties
vim /usr/local/docker/nacos-server/init.d/custom.properties
// 添加以下配置
#spring.security.enabled=false
#management.security=false
#security.basic.enabled=false
#nacos.security.ignore.urls=/**
#management.metrics.export.elastic.host=http://localhost:9200
# metrics for prometheus
management.endpoints.web.exposure.include=*
# metrics for elastic search
#management.metrics.export.elastic.enabled=false
#management.metrics.export.elastic.host=http://localhost:9200
# metrics for influx
#management.metrics.export.influx.enabled=false
#management.metrics.export.influx.db=springboot
#management.metrics.export.influx.uri=http://localhost:8086
#management.metrics.export.influx.auto-create-db=true
#management.metrics.export.influx.consistency=one
#management.metrics.export.influx.compressed=true
调整nacos-hostname.env
vim /usr/local/docker/nacos-server/env/nacos-hostname.env
#nacos dev env
# 首选主机模式
PREFER_HOST_MODE=hostname
# 当前主机的IP
NACOS_SERVER_IP=192.168.1.160
# 集群的各个节点
NACOS_SERVERS=192.168.1.160:8848 192.168.1.161:8848 192.168.1.162:8848
# 数据库的配置
MYSQL_SERVICE_HOST=192.168.1.100
MYSQL_SERVICE_DB_NAME=nacos
MYSQL_SERVICE_PORT=3306
MYSQL_SERVICE_USER=root
MYSQL_SERVICE_PASSWORD=root
# 从节点 这里就使用单节点测试,因此就不配置从节点
#MYSQL_SLAVE_SERVICE_HOST=xxx
#MYSQL_SLAVE_SERVICE_PORT=3306
# JVM参数 默认是2G 如果使用虚拟机,内存没有2G,就需要调整这里的参数,否则将无法启动
JVM_XMS=256m
JVM_XMX=256m
JVM_XMN=256m
将配置文件拷贝到另一台机器
[root@mstaer1 ~]# scp -r /usr/local/docker/nacos-server/env/nacos-hostname.env 192.168.11.179:/usr/local/docker/nacos-server/env/nacos-hostname.env
[root@mstaer1 ~]# scp -r /usr/local/docker/nacos-server/init.d/custom.properties 192.168.11.179:/usr/local/docker/nacos-server/init.d/custom.properties
然后启动nacos1
docker run -p 8848:8848 --restart=always --name nacos1 --env-file=/usr/local/docker/nacos-server/env/nacos-hostname.env -v /usr/local/docker/nacos-server/logs:/home/nacos/logs -v /usr/local/docker/nacos-server/init.d/custom.properties:/home/nacos/init.d/custom.properties -d nacos/nacos-server:1.3.0
启动nacos2
docker run -p 8848:8848 --restart=always --name nacos1 --env-file=/usr/local/docker/nacos-server/env/nacos-hostname.env -v /usr/local/docker/nacos-server/logs:/home/nacos/logs -v /usr/local/docker/nacos-server/init.d/custom.properties:/home/nacos/init.d/custom.properties -d nacos/nacos-server:1.3.0
访问任意节点的8848端口; 如: 192.168.11.180:8848/nacos 默认用户名和密码为: nacos/nacos



