docker安装nginx代理nacos2.1.2版本集群

news2024/9/22 19:20:16

目录

安装docker最新版本

创建一个docker network,使之固定docker局域ip

 docker安装mysql主从

 配置挂载的my.cnf配置文件

进入mysql主数据库容器命令

登录主数据库创建用于从数据连接主数据的账号密码 

输入show master status;查看master数据库状态

在从数据库使用start slave;

搭建nacos集群

安装nginx代理nacos

在宿主机挂载nginx的配置文件nginx.conf

创建并启动nginx容器

最后访问nginx的地址


安装docker最新版本

yum install docker-ce -y

创建一个docker network,使之固定docker局域ip

docker network create --subnet=172.19.0.0/16 -d bridge mynet

 docker安装mysql主从

1、拉取镜像
sudo docker pull mysql:8.0.24

2、创建两个目录,主mysql_first,从mysql_second

3、先启动一个镜像,使用下面的命令把my.cnf复制出来保存在上面两个目录下的conf目录下面
docker cp 容器id:/etc/mysql/my.cnf 宿主机目录 

4、docker安装mysql集群节点1启动命令:
sudo docker run -itd --net mynet --ip 172.19.0.11 --name mysql_first --restart=always -v $PWD/mysql-first/conf/my.cnf:/etc/mysql/my.cnf -v $PWD/mysql-first/data:/var/lib/mysql -v $PWD/mysql-first/logs:/logs -e MYSQL_ROOT_PASSWORD=root666 -p 13301:3306 mysql:8.0.24

5、docker安装mysql集群节点2启动命令:
sudo docker run -itd --net mynet --ip 172.19.0.12 --name mysql_second --restart=always -v $PWD/mysql-second/conf/my.cnf:/etc/mysql/my.cnf -v $PWD/mysql-second/data:/var/lib/mysql -v $PWD/mysql-second/logs:/logs -e MYSQL_ROOT_PASSWORD=root666 -p 13302:3306 mysql:8.0.24

 配置挂载的my.cnf配置文件

####修改mysql_first下的my.cnf,添加以下内容

server-id=100
log-bin=master-bin #开启二进制文件
binlog-ignore-db=information_schema    #不同步的二进制数据库名,如果不设置可以将其注释掉;
binlog-ignore-db=mysql
binlog-ignore-db=performance_schema
binlog-ignore-db=sys



-------------------------------------------------------------------------------------------
###修改mysql_second下的my.cnf,添加以下内容

## 设置server_id,注意要唯一
server-id=101  
## 开启二进制日志功能,以备Slave作为其它Slave的Master时使用
log-bin=slave-bin   
## relay_log配置中继日志
relay_log=/var/lib/mysql/relay.log  
read_only=1  ## 设置为只读,该项如果不设置,表示slave可读可写

进入mysql主数据库容器命令

#进入容器命令
docker exec -it 容器id bin/bash

#连接mysql命令
mysql -u root -p root666

登录主数据库创建用于从数据连接主数据的账号密码 

CREATE USER 'second'@'%' IDENTIFIED WITH mysql_native_password BY 'second';
GRANT REPLICATION SLAVE, REPLICATION CLIENT ON *.* TO 'second'@'%';

输入show master status;查看master数据库状态

然后在同样上面进入从数据 开启主从复制

change master to master_host='172.19.0.11',master_user='second',master_password='second',master_port=3306,master_log_file='master-bin.000001',master_log_pos=683,master_connect_retry=30

在从数据库使用start slave;

开启主从同步

下载nacos的2.1.2的数据库脚本在主数据库创建库nacos_config,执行sql脚本初始化数据

https://github.com/alibaba/nacos

搭建nacos集群

1、拉取nacos镜像
docker pull nacos:v2.1.2

2、创建三个nacos容器节点

3、安装启动第一个nacos容器
sudo docker run -itd --name nacos_01 --net mynet --ip 172.19.0.21 --restart=always -e PREFER_HOST_MODE=ip -e MODE=cluster -e NACOS_SERVERS="172.19.0.22:8848 172.19.0.23:8848" -e SPRING_DATASOURCE_PLATFORM=mysql -e MYSQL_SERVICE_HOST=172.19.0.11 -e MYSQL_SERVICE_PORT=3306 -e MYSQL_SERVICE_DB_NAME=nacos_config -e MYSQL_SERVICE_USER=root -e MYSQL_SERVICE_PASSWORD=root666 -e MYSQL_SLAVE_SERVICE_HOST=172.19.0.12 -e MYSQL_SLAVE_SERVICE_PORT=3306 -e MYSQL_DATABASE_NUM=2 -e JVM_XMS=256m -e JVM_XMX=512m -e JVM_XMN=256m -p 18801:8848 nacos/nacos-server:v2.1.2

4、安装启动第二个nacos容器
sudo docker run -itd --name nacos_02 --net mynet --ip 172.19.0.22 --restart=always -e PREFER_HOST_MODE=ip -e MODE=cluster -e NACOS_SERVERS="172.19.0.21:8848 172.19.0.23:8848" -e SPRING_DATASOURCE_PLATFORM=mysql -e MYSQL_SERVICE_HOST=172.19.0.11 -e MYSQL_SERVICE_PORT=3306 -e MYSQL_SERVICE_DB_NAME=nacos_config -e MYSQL_SERVICE_USER=root -e MYSQL_SERVICE_PASSWORD=root666 -e MYSQL_SLAVE_SERVICE_HOST=172.19.0.12 -e MYSQL_SLAVE_SERVICE_PORT=3306 -e MYSQL_DATABASE_NUM=2 -e JVM_XMS=256m -e JVM_XMX=512m -e JVM_XMN=256m -p 18802:8848 nacos/nacos-server:v2.1.2

5、安装启动第三个nacos容器
sudo docker run -itd --name nacos_03 --net mynet --ip 172.19.0.23 --restart=always -e PREFER_HOST_MODE=ip -e MODE=cluster -e NACOS_SERVERS="172.19.0.21:8848 172.19.0.22:8848" -e SPRING_DATASOURCE_PLATFORM=mysql -e MYSQL_SERVICE_HOST=172.19.0.11 -e MYSQL_SERVICE_PORT=3306 -e MYSQL_SERVICE_DB_NAME=nacos_config -e MYSQL_SERVICE_USER=root -e MYSQL_SERVICE_PASSWORD=root666 -e MYSQL_SLAVE_SERVICE_HOST=172.19.0.12 -e MYSQL_SLAVE_SERVICE_PORT=3306 -e MYSQL_DATABASE_NUM=2 -e JVM_XMS=256m -e JVM_XMX=512m -e JVM_XMN=256m -p 18803:8848 nacos/nacos-server:v2.1.2

安装nginx代理nacos

1、拉取nginx镜像
docker pull nginx:1.22

在宿主机挂载nginx的配置文件nginx.conf

代理内容如下:

user  nginx;
worker_processes  auto;

error_log  /var/log/nginx/error.log notice;
pid        /var/run/nginx.pid;


events {
    worker_connections  1024;
}



http {
    include       /etc/nginx/mime.types;
    default_type  application/octet-stream;

    log_format  main  '$remote_addr - $remote_user [$time_local] "$request" '
                      '$status $body_bytes_sent "$http_referer" '
                      '"$http_user_agent" "$http_x_forwarded_for"';

    access_log  /var/log/nginx/access.log  main;

     upstream nacos_services {
        server 172.19.0.21:8848;
        server 172.19.0.22:8848;
        server 172.19.0.23:8848;
     }

     server {
        listen 80;
        server_name localhost;

        location /nacos {
                proxy_set_header Host $host;
                proxy_pass http://nacos_services;
           }
     }
    sendfile        on;
    #tcp_nopush     on;

    keepalive_timeout  65;

    #gzip  on;

    include /etc/nginx/conf.d/*.conf;
}

创建并启动nginx容器

sudo docker run -itd --restart=always --name nginx_01 --net mynet --ip 172.19.0.80 -v $PWD/nginx.conf:/etc/nginx/nginx.conf -p 18848:80 nginx:1.22

最后访问nginx的地址

http://你的ip:18848/nacos

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/67728.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

基于训练和推理场景下的MindStudio高精度对比

摘要:MindStudio提供精度比对功能,支持Vector比对能力。本文分享自华为云社区《【MindStudio训练营第一季】MindStudio 高精度对比随笔》,作者:Tianyi_Li。 训练场景下,迁移原始网络 (如TensorFlow、PyTorch) &#x…

[附源码]Python计算机毕业设计SSM家纺商品展示平台(程序+LW)

项目运行 环境配置: Jdk1.8 Tomcat7.0 Mysql HBuilderX(Webstorm也行) Eclispe(IntelliJ IDEA,Eclispe,MyEclispe,Sts都支持)。 项目技术: SSM mybatis Maven Vue 等等组成,B/S模式 M…

连锁门店进销存软件的用途

门店式经营对于很多经营有道的老板来说是第一步,在规模扩张中,生意越做越大。这时要想拓宽销路,让收益更上一层楼,连锁、分店确实是一种行之有效的方法。 多门店管理经营存在的长久性难点是决策性工作量激增,管理方面…

[附源码]计算机毕业设计勤工俭学管理小程序Springboot程序

项目运行 环境配置: Jdk1.8 Tomcat7.0 Mysql HBuilderX(Webstorm也行) Eclispe(IntelliJ IDEA,Eclispe,MyEclispe,Sts都支持)。 项目技术: SSM mybatis Maven Vue 等等组成,B/S模式 M…

Multimodal Token Fusion for Vision Transformers

水平太浅,理解不到位。谨慎观看。 多模态token融合,我是语义分割,只看RGB和Depth模态。 1:作者为了解决transformer多输入的问题,对基于transformer视觉任务进行剪枝,为了有效的融合多模态,toke…

Docker(一) ----初始Docker

文章目录前言一、什么是 Docker1.1 Docker 的定义1.2 Docker对于上述问题的解决二、Docker 与虚拟机三、Docker 架构3.1 镜像和容器3.2 Docker 和 Docker Hub3.3 Docker 架构四、安装Docker4.1 卸载 (可选)4.2 安装Docker4.3 启动 Docker4.4 配置镜像加速总结前言 本文章主要是…

艾美捷肝细胞培养基试剂盒说明书

肝细胞培养基是专门为正常人类肝细胞体外培养设计的最适于其生长的培养基,是经灭菌的液体培养基,包含必需和非必需氨基酸、维生素、有机和无机化合物、激素、生长因子、微量矿物质和低浓度胎牛血清(5%)。 艾美捷肝细胞培养基试剂盒为我们的大鼠肝细胞设计…

WIN10商业版64位22H2正式版19045.2251MSDN11月原版镜像

微软表示 Windows 10 是迄今为止最好的 Windows 操作系统。无论你是普通办公用户、游戏玩家还是开发者,Win10 都能带给你目前最先进的功能特性以及使用体验。 其实微软对 Windows 10 版本的命名一直没有什么统一标准,最新的「22H2」是以开发代号命名的。…

【JavaWeb开发-Servlet】day02-使用eclipse实现Servlet开发

目录 1、安装IDE-eclipse编译器 2、配置IDE开发环境 (1)使用eclipse关联Tomcat服务器 (2)使用Servlet访问Hello World页面 (3)Java中常用的方法调用方式 (4)Java中常用的反射机…

web3.0学习入门7:深入学习Web3.0

Web3.0背景 2个大事件: 1、2021年10月28日,月活破30亿的Facebook正式官宣改名为Meta,元宇宙和Web3等概念正式从币圈破圈; 2、2021年12月8日,美国众议院加密金融听证会有议员喊出“确保Web3.0革命发生在美国”&#…

数字图像处理实验(二)|图像变换(附实验代码和截图)

文章目录一、实验目的二、主要仪器设备三、实验原理(一)变换原理1.离散傅里叶变换2.离散余弦变换3.频谱平移(二)频谱分析原理四、实验步骤和内容1. 为下面三段程序写出注释并上机运行,将实际运行结果如实记录到实验报告…

《数据结构》队列

学习目录队列队列的概念队列的使用(Queue)队列的模拟实现循环队列双端队列(Deque)面试题队列 队列的概念 队列是一种先进先出,后进后出的特点,是只允许在一端进行插入数据操作,在另一端进行删除数据操作的特殊线性表…

selenium使用

selenium使用一 bs4搜索文档树二 css选择器三 selenium基本使用四 无界面浏览器五 selenium其它用法5.1 登录百度5.2 获取位置属性大小,文本5.3 元素操作5.4 执行js代码5.5 切换选项卡5.6 浏览器前进后退5.7 异常处理六 selenium登录cnblogs获取cookie七 抽屉半自动…

kubernetes使用(1.25)

kubernetes使用(1.25) 内核是AMD、ARM、 $ arch uname -a 注:x86_64,x64,AMD64基本上是同一个东西 K8S 核心概念 Kubernetes有很多核心概念,我们先看下几个核心的概念。其他概念可以看一下我的安装文档 Deployment Deploy…

实现国产化转型,ZStack Cloud 助力中铁财务数字化转型!

中铁财务是中国中铁旗下的金融服务核心企业,随着新业务的快速发展,原有的烟囱式架构使得资源利用率相对较低,难以与其他系统有效协调工作。基于国产化布局的需要,中铁财务选择了 ZStack Cloud 云平台,在充分利旧的基础…

UNIAPP实战项目笔记47 显示默认收货地址和修改收货地址页面的布局

UNIAPP实战项目笔记47 显示默认收货地址和修改收货地址页面的布局 实际案例图片 显示默认地址 修改收货地址后 地址列表 显示默认地址页面 具体内容图片自己替换哈,随便找了个图片的做示例 具体位置见目录结构 完善布局页面和样式 用到了页面间传值 uni.onu…

[附源码]计算机毕业设计JAVA圆梦山区贫困学生助学系统

[附源码]计算机毕业设计JAVA圆梦山区贫困学生助学系统 项目运行 环境配置: Jdk1.8 Tomcat7.0 Mysql HBuilderX(Webstorm也行) Eclispe(IntelliJ IDEA,Eclispe,MyEclispe,Sts都支持)。 项目技术: SSM…

1163. 按字典序排在最后的子串-解题思路推导

1163. 按字典序排在最后的子串-解题思路推导 给你一个字符串 s ,找出它的所有子串并按字典序排列,返回排在最后的那个子串。 示例 1: 输入:s “abab” 输出:“bab” 解释:我们可以找出 7 个子串 [“a”…

刷爆力扣之种花问题

刷爆力扣之种花问题 HELLO,各位看官大大好,我是阿呆 🙈🙈🙈 今天阿呆继续记录下力扣刷题过程,收录在专栏算法中 😜😜😜 该专栏按照不同类别标签进行刷题,每…

YOLOv7 Backbone| 原文源码详解

YOLOv7 Backbone结构详解在之前的文章中,我们以YOLOv5为对象,详细解剖了一只麻雀的内部构造,包括anchor机制、backbone的结构、neck的结构和head的结构。在本篇文章中,我们将以YOLOv7v0.1版本的代码为目标,结合作者团队…