在Docker上用3個Nacos1.3容器+一個MySQL5和8容器+一個Nginx容器進行集羣的具體操作(Nacos集羣版)

在Docker上用Nacos1.3容器連接MySQL5.6和8.0.18容器進入持久化的具體操作(Nacos單機版)

這裏直接在linux中啓動三個Nacos容器。

3個Nacos1.3容器+一個MySQL5.6容器+一個Nginx容器

配置MySQL5.6數據庫

配置mysql數據庫在上面那篇文章裏有提到,這裏就不再寫了。
配置完數據庫後啓動數據庫容器。

配置Nacos1.3

3個Nacos在同一臺虛擬機上運行。

#啓動第一臺nacos(修改完後直接複製到linux上運行啓動容器)
#NACOS_...開頭的是配置nacos的信息,MYSQL_...是配置nacos連接的數據庫的信息,JVM_...是配置nacos虛擬機的信息,根據你們自己的配置進行更改。
#10.211.55.17是我linux的IP地址
#注意,這裏我的mysql5.6容器對外暴露的是3305端口。
#端口只能修改對外暴露的端口號,nacos裏的8848不能修改,如果使用NACOS_SERVER_PORT去修改裏面的端口號,會啓動後無法訪問。
docker run -d \
--name nacos_1 \
--hostname=nacos_1 \
-e MODE=cluster \
-e NACOS_SERVERS="10.211.55.17:3333 10.211.55.17:4444 10.211.55.17:5555" \
-e SPRING_DATASOURCE_PLATFORM=mysql \
-e MYSQL_SERVICE_HOST=10.211.55.17 \
-e MYSQL_SERVICE_PORT=3305 \
-e MYSQL_SERVICE_DB_NAME=nacos_config \
-e MYSQL_SERVICE_USER=root \
-e MYSQL_SERVICE_PASSWORD=123456 \
-e JVM_XMS=512m \
-e JVM_XMX=512m \
-e JVM_XMN=256m \
-e JVM_MS=32m \
-e JVM_MMS=80m \
-p 3333:8848 nacos/nacos-server

#啓動第二臺nacos
docker run -d \
--name nacos_2 \
--hostname=nacos_2 \
-e MODE=cluster \
-e NACOS_SERVERS="10.211.55.17:3333 10.211.55.17:4444 10.211.55.17:5555" \
-e SPRING_DATASOURCE_PLATFORM=mysql \
-e MYSQL_SERVICE_HOST=10.211.55.17 \
-e MYSQL_SERVICE_PORT=3305 \
-e MYSQL_SERVICE_DB_NAME=nacos_config \
-e MYSQL_SERVICE_USER=root \
-e MYSQL_SERVICE_PASSWORD=123456 \
-e JVM_XMS=512m \
-e JVM_XMX=512m \
-e JVM_XMN=256m \
-e JVM_MS=32m \
-e JVM_MMS=80m \
-p 4444:8848 nacos/nacos-server

#啓動第三臺nacos
docker run -d \
--name nacos_3 \
--hostname=nacos_3 \
-e MODE=cluster \
-e NACOS_SERVERS="10.211.55.17:3333 10.211.55.17:4444 10.211.55.17:5555" \
-e SPRING_DATASOURCE_PLATFORM=mysql \
-e MYSQL_SERVICE_HOST=10.211.55.17 \
-e MYSQL_SERVICE_PORT=3305 \
-e MYSQL_SERVICE_DB_NAME=nacos_config \
-e MYSQL_SERVICE_USER=root \
-e MYSQL_SERVICE_PASSWORD=123456 \
-e JVM_XMS=512m \
-e JVM_XMX=512m \
-e JVM_XMN=256m \
-e JVM_MS=32m \
-e JVM_MMS=80m \
-p 5555:8848 nacos/nacos-server

在這裏插入圖片描述
http://10.211.55.17:3333/nacos/
在這裏插入圖片描述
http://10.211.55.17:4444/nacos/
在這裏插入圖片描述
http://10.211.55.17:5555/nacos/
在這裏插入圖片描述
並且裏面也有我們在做單機持久化時保留的配置。

配置Nginx1.16.1

這裏我拉取的鏡像是Nginx1.16.1。

#拉取鏡像
docker pull nginx:1.16.1

#啓動nginx容器(對外暴露1111端口)
docker run -d --name nginx1.16.1 -p 1111:80 nginx:1.16.1

#進入nginx容器,修改配置
docker exec -it 容器ID /bin/bash
cd /etc/nginx
#因爲nginx容器沒有裝vim,所以我們要先安裝vim
apt-get update
apt-get install vim
#備份nginx.conf文件
cp nginx.conf nginx.conf.bk
#修改nginx.conf文件
vim nginx.conf

在這裏插入圖片描述

然後在http{…}裏的#gzip on;下添加:

	upstream cluster{
		server 10.211.55.17:3333;
		server 10.211.55.17:4444;
		server 10.211.55.17:5555;
	}

	server{
		listen		80;
		server_name	10.211.55.17;
		
		location / {
			proxy_pass	http://cluster;
		}
	}

在這裏插入圖片描述

#退出nginx容器
exit

#重啓nginx
docker restart 容器ID

在瀏覽器輸入:http://10.211.55.17:1111/nacos/
在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述

新建一個配置:
在這裏插入圖片描述

#進入mysql5.6容器
docker exec -it 容器ID /bin/bash
#進入mysql
mysql -uroot -p123456
#切換到nacos_config數據庫
use nacos_config;
查看config_info表
select * from config_info;

在這裏插入圖片描述

3個Nacos1.3容器+一個MySQL8.0.18容器+一個Nginx容器

配置MySQL8.0.18數據庫

配置mysql數據庫在上面那篇文章裏有提到,這裏就不再寫了。
配置完數據庫後啓動數據庫容器。

配置Nacos1.3

3個Nacos在同一臺虛擬機上運行。

#啓動第一臺nacos(修改完後直接複製到linux上運行啓動容器)
#NACOS_...開頭的是配置nacos的信息,MYSQL_...是配置nacos連接的數據庫的信息,JVM_...是配置nacos虛擬機的信息,根據你們自己的配置進行更改。
#10.211.55.17是我linux的IP地址
#端口只能修改對外暴露的端口號,nacos裏的8848不能修改,如果使用NACOS_SERVER_PORT去修改裏面的端口號,會啓動後無法訪問。
#和上面mysql5.6版的配置差不多
docker run -d \
--name nacos_11 \
--hostname=nacos_11 \
-e MODE=cluster \
-e NACOS_SERVERS="10.211.55.17:3333 10.211.55.17:4444 10.211.55.17:5555" \
-e SPRING_DATASOURCE_PLATFORM=mysql \
-e MYSQL_SERVICE_HOST=10.211.55.17 \
-e MYSQL_SERVICE_PORT=3306 \
-e MYSQL_SERVICE_DB_NAME=nacos_config \
-e MYSQL_SERVICE_USER=root \
-e MYSQL_SERVICE_PASSWORD=123456 \
-e JVM_XMS=512m \
-e JVM_XMX=512m \
-e JVM_XMN=256m \
-e JVM_MS=32m \
-e JVM_MMS=80m \
-p 3333:8848 nacos/nacos-server

#啓動第二臺nacos
docker run -d \
--name nacos_22 \
--hostname=nacos_22 \
-e MODE=cluster \
-e NACOS_SERVERS="10.211.55.17:3333 10.211.55.17:4444 10.211.55.17:5555" \
-e SPRING_DATASOURCE_PLATFORM=mysql \
-e MYSQL_SERVICE_HOST=10.211.55.17 \
-e MYSQL_SERVICE_PORT=3306 \
-e MYSQL_SERVICE_DB_NAME=nacos_config \
-e MYSQL_SERVICE_USER=root \
-e MYSQL_SERVICE_PASSWORD=123456 \
-e JVM_XMS=512m \
-e JVM_XMX=512m \
-e JVM_XMN=256m \
-e JVM_MS=32m \
-e JVM_MMS=80m \
-p 4444:8848 nacos/nacos-server

#啓動第三臺nacos
docker run -d \
--name nacos_33 \
--hostname=nacos_33 \
-e MODE=cluster \
-e NACOS_SERVERS="10.211.55.17:3333 10.211.55.17:4444 10.211.55.17:5555" \
-e SPRING_DATASOURCE_PLATFORM=mysql \
-e MYSQL_SERVICE_HOST=10.211.55.17 \
-e MYSQL_SERVICE_PORT=3306 \
-e MYSQL_SERVICE_DB_NAME=nacos_config \
-e MYSQL_SERVICE_USER=root \
-e MYSQL_SERVICE_PASSWORD=123456 \
-e JVM_XMS=512m \
-e JVM_XMX=512m \
-e JVM_XMN=256m \
-e JVM_MS=32m \
-e JVM_MMS=80m \
-p 5555:8848 nacos/nacos-server




#然後把/home下的plugins目錄分別傳入到三個nacos容器中。
docker cp /home/plugins 容器ID:/home/nacos/
#把三個nacos容器都重啓
docker restart 容器ID

這一步和上一篇文章單機版持久化的配置一樣,沒看的同學可以點這裏看一下,mysql8的驅動也在上一篇文章裏。

在這裏插入圖片描述
nginx容器是做mysql5.6版時啓動的,因爲配置一樣,就沒關掉,nginx配置也寫在下面了,不用往上翻。

http://10.211.55.17:3333/nacos/
在這裏插入圖片描述
http://10.211.55.17:4444/nacos/
在這裏插入圖片描述
http://10.211.55.17:5555/nacos/
在這裏插入圖片描述
並且裏面也有我們在做單機持久化時保留的配置。

配置Nginx1.16.1

這裏我拉取的鏡像是Nginx1.16.1。

#拉取鏡像
docker pull nginx:1.16.1

#啓動nginx容器(對外暴露1111端口)
docker run -d --name nginx1.16.1 -p 1111:80 nginx:1.16.1

#進入nginx容器,修改配置
docker exec -it 容器ID /bin/bash
cd /etc/nginx
#因爲nginx容器沒有裝vim,所以我們要先安裝vim
apt-get update
apt-get install vim
#備份nginx.conf文件
cp nginx.conf nginx.conf.bk
#修改nginx.conf文件
vim nginx.conf

在這裏插入圖片描述

然後在http{…}裏的#gzip on;下添加:

	upstream cluster{
		server 10.211.55.17:3333;
		server 10.211.55.17:4444;
		server 10.211.55.17:5555;
	}

	server{
		listen		80;
		server_name	10.211.55.17;
		
		location / {
			proxy_pass	http://cluster;
		}
	}

在這裏插入圖片描述

#退出nginx容器
exit

#重啓nginx
docker restart 容器ID

在瀏覽器輸入:http://10.211.55.17:1111/nacos/
在這裏插入圖片描述
在這裏插入圖片描述

新建一個配置:
在這裏插入圖片描述

#進入mysql8.0.18容器
docker exec -it 容器ID /bin/bash
#進入mysql
mysql -uroot -p123456
#切換到nacos_config數據庫
use nacos_config;
查看config_info表
select * from config_info;

在這裏插入圖片描述

nacos的配置終於結束了,搞得我心態都快崩了,4個視頻用了2天,一直配置不成功,然後就一直在找資料,因爲我用的mysql是8.0.18,就順便把mysql5.6的配置也寫了。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章