nacos单机模式
先拉取一个mysql
docker pull mysql:5.7
定义一个挂载目录
mkdir -p /mysql/{conf,data,script}
配置一个my.cnf放到conf目录下
开启mysql容器
privileged=true:使用该参数,container内的root拥有真正的root权限,否则,container内的root只是外部的一个普通用户权限
restart=always:容器自动启动参数,其值可以为[no,no-failure,always]
no为默认值,表示容器退出时,docker不自动重启容器
no-failure表示,若容器的退出状态非0,则docker自动重启容器,还可以指定重启次数,若超过次数未能启动容器则放弃
always表示,只要容器退出,则docker将自动重启容器
进入mysql容器登录并创建表
因为做了目录挂载所以容器会有这个脚本,切换到刚创建的数据库中执行sql
记得要提供权限
grant all on *.* to root@'%' identified by '密码'
nacos安装
拉取一个镜像
docker pull nacos/nacos-server
运行启动nacos容器
注:记得开放端口
再访问自己的nacos,查看是否可以访问
nacos集群配置
首先删除刚才的nacos容器,并创建集群nacos
docker rm -f nacos
在这里可以看到只启动了1台
把剩下的容器都加进来
虽然有3台容器,但做了端口映射的只有1太nacos容器
反向代理(负载均衡)
添加一个配置文件到nginx目录下
mkdir -p /soft/nginx/conf.d
配置文件内容:
#服务器的集群
upstream nacostList {
server nacos01:8848 weight=1;
server nacos02:8848 weight=1;
server nacos03:8848 weight=1;
}
server {
listen 80;
server_name www.zkingedu.com;
location / {
root /etc/nginx/html/;
index index.html index.htm;
}
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root /usr/share/nginx/html;
}
location /nacos {
proxy_pass http://nacosList
}
}
再创建一个nginx容器
最后在页面上进行访问