Docker-nacos集群部署

nacos单机模式

先拉取一个mysql

docker pull mysql:5.7

定义一个挂载目录

mkdir -p /mysql/{conf,data,script}

配置一个my.cnf放到conf目录下

Docker-nacos集群部署_第1张图片

开启mysql容器

Docker-nacos集群部署_第2张图片 

 privileged=true:使用该参数,container内的root拥有真正的root权限,否则,container内的root只是外部的一个普通用户权限

restart=always:容器自动启动参数,其值可以为[no,no-failure,always]

no为默认值,表示容器退出时,docker不自动重启容器

no-failure表示,若容器的退出状态非0,则docker自动重启容器,还可以指定重启次数,若超过次数未能启动容器则放弃

always表示,只要容器退出,则docker将自动重启容器

进入mysql容器登录并创建表

因为做了目录挂载所以容器会有这个脚本,切换到刚创建的数据库中执行sql

Docker-nacos集群部署_第3张图片

记得要提供权限 

grant all on *.* to root@'%' identified by '密码'

nacos安装

拉取一个镜像

docker pull nacos/nacos-server

运行启动nacos容器

Docker-nacos集群部署_第4张图片 

注:记得开放端口 

再访问自己的nacos,查看是否可以访问

nacos集群配置

首先删除刚才的nacos容器,并创建集群nacos

docker rm -f nacos

Docker-nacos集群部署_第5张图片

在这里可以看到只启动了1台

Docker-nacos集群部署_第6张图片 

把剩下的容器都加进来

Docker-nacos集群部署_第7张图片 

虽然有3台容器,但做了端口映射的只有1太nacos容器 

Docker-nacos集群部署_第8张图片 

反向代理(负载均衡) 

添加一个配置文件到nginx目录下

mkdir -p  /soft/nginx/conf.d

Docker-nacos集群部署_第9张图片

配置文件内容:

#服务器的集群
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容器

Docker-nacos集群部署_第10张图片

最后在页面上进行访问 

你可能感兴趣的:(docker,容器,运维)