最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Docker安裝Nacos容器并根據(jù)Nginx實(shí)現(xiàn)負(fù)載均衡

 更新時(shí)間:2024年01月25日 10:46:33   作者:Java方文山  
本文主要介紹了Docker安裝Nacos容器并根據(jù)Nginx實(shí)現(xiàn)負(fù)載均衡,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧

前言

安裝之前我們需要準(zhǔn)備一個(gè)mysql,當(dāng)前安裝方式是將數(shù)據(jù)持久化到數(shù)據(jù)庫(kù)中的,這里的部署先是單機(jī)模式后面再講集群模式

一、Nacos單機(jī)模式

1、MySQL容器安裝

1.1.創(chuàng)建mysql需要的掛載目錄

拉取mysql

docker pull mysql:5.7

mysql需要一個(gè)my.cnf的配置文件,目前我們還沒有所以需要在宿主機(jī)上創(chuàng)建一個(gè)將該文件放入到目錄中并且將我們的sql腳本放入到script文件中

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

將我們的my.cnf文件放入到conf文件夾下,將sql腳本放入到script文件夾下

1.2.創(chuàng)建并運(yùn)行mysql容器

為了讓我們的容器之間可以相互訪問,所以我們創(chuàng)建一個(gè)網(wǎng)絡(luò)

docker network create --subnet 172.18.0.0/16 --gateway 172.18.1.1 net

 現(xiàn)在創(chuàng)建容器就需要為它指定我們的自定義網(wǎng)絡(luò) 

 docker run \
 --name m1 \
 -v /mysql/conf/my.cnf:/etc/my.cnf \
 -v /mysql/data:/var/lib/mysql \
 -v /mysql/script:/script \
 --privileged=true \
 -e MYSQL_ROOT_PASSWORD=123456 \
 --net net \
 --ip 172.18.0.1 \
 -d mysql/mysql-server:5.7

1.3.創(chuàng)建遠(yuǎn)程連接用戶并執(zhí)行sql腳本

進(jìn)入我們的mysql容器進(jìn)行登錄

docker exec -it m1 bash

mysql -uroot -p

創(chuàng)建所需的數(shù)據(jù)庫(kù)或者使用遠(yuǎn)程工具連接創(chuàng)建一下也可以,我這里就一張表就不那么麻煩了

create database nacos;

因?yàn)榍懊孀隽四夸洅燧d所以容器也會(huì)有這個(gè)腳本,切換到剛創(chuàng)建的數(shù)據(jù)庫(kù)中執(zhí)行sql

use nacos;
 
source /script/nacos-mysql.sql;

現(xiàn)在查看一下就會(huì)有很多的數(shù)據(jù)表了

最后我們現(xiàn)在需要一個(gè)賬戶進(jìn)行遠(yuǎn)程連接所以創(chuàng)建一個(gè)賬戶并賦予權(quán)限

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

沒有問題退出后記得重啟一下docker restart m1 

2、Nacos容器安裝

2.1.創(chuàng)建Nacos并啟動(dòng)

 首先我們需要拉取一個(gè)Nacos的鏡像

docker pull nacos/nacos-server

運(yùn)行并啟動(dòng)Nacos

docker run -itd \
-e PREFER_HOST_MODE=ip \
-e MODE=standalone \
-e SPRING_DATASOURCE_PLATFORM=mysql \
-e MYSQL_SERVICE_HOST=172.18.0.1 \
-e MYSQL_SERVICE_PORT=3306 \
-e MYSQL_SERVICE_DB_NAME=nacos \
-e MYSQL_SERVICE_USER=root \
-e MYSQL_SERVICE_PASSWORD=123456 \
-p 8848:8848 \
--name nacos \
--restart=always \
--net net \
--ip 172.18.0.2 \
nacos/nacos-server

 注意:這里的MYSQL打頭的配置都是填寫我們剛剛m1容器的信息 

2.2.開放防火墻端口

①開放端口

firewall-cmd --zone=public --add-port=8848/tcp --permanent

 ②刷新防火墻

firewall-cmd --reload

2.3.查看數(shù)據(jù)庫(kù)有無(wú)數(shù)據(jù) 

首先在瀏覽器訪問一下我們的Nacos,查看是否可以訪問

 如果可以訪問再查看相應(yīng)的數(shù)據(jù)庫(kù),現(xiàn)在是沒有數(shù)據(jù)的

我們?cè)趎acos配置中心隨便創(chuàng)作一個(gè)數(shù)據(jù)再來(lái)查看一下就會(huì)有數(shù)據(jù)了,說(shuō)明我們的nacos已經(jīng)完全生效了。

二、Nacos集群模式

先將我們剛剛所創(chuàng)建的nacos容器給刪除掉

docker rm -f nacos

1.創(chuàng)建集群Nacos

docker run -itd \
-e PREFER_HOST_MODE=ip \
-e MODE=cluster \
-e NACOS_SERVERS="172.18.0.3:8848 172.18.0.4:8848" \
-e SPRING_DATASOURCE_PLATFORM=mysql \
-e MYSQL_SERVICE_HOST=172.18.0.1 \
-e MYSQL_SERVICE_PORT=3306 \
-e MYSQL_SERVICE_DB_NAME=nacos \
-e MYSQL_SERVICE_USER=root \
-e MYSQL_SERVICE_PASSWORD=123456 \
-p 8848:8848 \
--name nacos01 \
--restart=always \
--net net \
--ip 172.18.0.2 \
nacos/nacos-server

 指定Nacos為集群模式cluster并設(shè)置除自己以外的Nacos地址

這時(shí)候我們?cè)L問nacos可以看到這里的模式也變成了cluster

 現(xiàn)在我們將剩下的兩臺(tái)nacos容器搞出來(lái)

docker run -itd \
-e PREFER_HOST_MODE=ip \
-e MODE=cluster \
-e NACOS_SERVERS="172.18.0.2:8848 172.18.0.4:8848" \
-e SPRING_DATASOURCE_PLATFORM=mysql \
-e MYSQL_SERVICE_HOST=172.18.0.1 \
-e MYSQL_SERVICE_PORT=3306 \
-e MYSQL_SERVICE_DB_NAME=nacos \
-e MYSQL_SERVICE_USER=root \
-e MYSQL_SERVICE_PASSWORD=123456 \
--name nacos02 \
--restart=always \
--net net \
--ip 172.18.0.3 \
nacos/nacos-server
docker run -itd \
-e PREFER_HOST_MODE=ip \
-e MODE=cluster \
-e NACOS_SERVERS="172.18.0.2:8848 172.18.0.3:8848" \
-e SPRING_DATASOURCE_PLATFORM=mysql \
-e MYSQL_SERVICE_HOST=172.18.0.1 \
-e MYSQL_SERVICE_PORT=3306 \
-e MYSQL_SERVICE_DB_NAME=nacos \
-e MYSQL_SERVICE_USER=root \
-e MYSQL_SERVICE_PASSWORD=123456 \
--name nacos03 \
--restart=always \
--net net \
--ip 172.18.0.4 \
nacos/nacos-server

看似我有三臺(tái)nacos容器實(shí)際上我們只有一臺(tái),因?yàn)橹挥幸慌_(tái)進(jìn)行了端口映射 

2.負(fù)載均衡Nacos 

創(chuàng)建nginx的配置文件目錄并將配置文件放入

 mkdir -p  /soft/nginx/conf.d

upstream nacosList {
    server nacos01:8848 weight=1;
    server nacos02:8848 weight=2;
    server nacos03:8848 weight=2;
}

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;
    }

}

創(chuàng)建nginx容器

docker run -itd \
--name nginx \
-v /soft/nginx/conf.d:/etc/nginx/conf.d \
-p 80:80 \
--net net \
--ip 172.18.0.5 \
nginx

現(xiàn)在我們?cè)L問一下看看

可以看到我們?nèi)サ袅硕丝谔?hào)8848,證明我們現(xiàn)在是通過(guò)nginx負(fù)載均衡進(jìn)行訪問的 

三、注意事項(xiàng)

我們?cè)诎l(fā)布配置的時(shí)候可能會(huì)出現(xiàn)以下情況

建表SQL語(yǔ)句應(yīng)查看對(duì)應(yīng)Nacos Servertag版本,我用的是1.4.0的SQL所以產(chǎn)生問題。

按照官方文檔重新建表,或直接補(bǔ)全列: 

-- config_info 表
alter table config_info add encrypted_data_key varchar(255);

-- his_config_info 表
alter table his_config_info add encrypted_data_key varchar(255);

 到此這篇關(guān)于Docker安裝Nacos容器并根據(jù)Nginx實(shí)現(xiàn)負(fù)載均衡的文章就介紹到這了,更多相關(guān)Docker Nacos負(fù)載均衡內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • 詳解docker 容器不自動(dòng)退出結(jié)束運(yùn)行的方法

    詳解docker 容器不自動(dòng)退出結(jié)束運(yùn)行的方法

    本文主要簡(jiǎn)單介紹 docker 容器與前置進(jìn)程的關(guān)系,以及如何編寫 Dockerfile/docker-compose.yml 優(yōu)雅的讓容器可以常駐運(yùn)行。具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2019-01-01
  • Docker?部署?vue?項(xiàng)目的詳細(xì)流程

    Docker?部署?vue?項(xiàng)目的詳細(xì)流程

    使用Docker配合Nginx部署Vue3項(xiàng)目涉及多個(gè)步驟:首先安裝Nginx,然后創(chuàng)建掛載目錄及配置文件;接著打包Vue項(xiàng)目并上傳至服務(wù)器;最后創(chuàng)建Dockerfile,構(gòu)建鏡像并啟動(dòng)容器,部署完成后,通過(guò)IP訪問應(yīng)用以驗(yàn)證是否成功
    2024-09-09
  • yum下載rpm以及相關(guān)依賴的方式離線安裝docker

    yum下載rpm以及相關(guān)依賴的方式離線安裝docker

    今天小編就為大家分享一篇關(guān)于yum下載rpm以及相關(guān)依賴的方式離線安裝docker,小編覺得內(nèi)容挺不錯(cuò)的,現(xiàn)在分享給大家,具有很好的參考價(jià)值,需要的朋友一起跟隨小編來(lái)看看吧
    2018-12-12
  • Docker部署MySQL主從復(fù)制的實(shí)現(xiàn)

    Docker部署MySQL主從復(fù)制的實(shí)現(xiàn)

    本文主要介紹了Docker部署MySQL主從復(fù)制的實(shí)現(xiàn),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2023-10-10
  • docker system命令集合的使用

    docker system命令集合的使用

    本文主要介紹了docker system命令集合的使用,主要包括清理沒有使用的數(shù)據(jù),包括鏡像數(shù)據(jù),已經(jīng)停止的容器等等,具有一定的參考價(jià)值,感興趣的可以了解下
    2021-10-10
  • Docker報(bào)錯(cuò)denied:requested access to the resource is denied解決

    Docker報(bào)錯(cuò)denied:requested access to the r

    這篇文章主要為大家介紹了Docker報(bào)錯(cuò)denied:requested access to the resource is denied解決方法詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2023-06-06
  • Docker底層技術(shù)Namespace Cgroup應(yīng)用詳解

    Docker底層技術(shù)Namespace Cgroup應(yīng)用詳解

    在本篇文章里小編給大家整理的是關(guān)于Docker底層技術(shù)Namespace Cgroup應(yīng)用的相關(guān)知識(shí)點(diǎn),需要的朋友們學(xué)習(xí)下。
    2019-10-10
  • docker-compose如何單獨(dú)更新某個(gè)服務(wù)

    docker-compose如何單獨(dú)更新某個(gè)服務(wù)

    這篇文章主要介紹了docker-compose如何單獨(dú)更新某個(gè)服務(wù)問題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2024-05-05
  • docker部署fastapi的實(shí)現(xiàn)步驟

    docker部署fastapi的實(shí)現(xiàn)步驟

    本文主要介紹了docker部署fastapi的實(shí)現(xiàn)步驟,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2023-03-03
  • Docker 刪除及清理鏡像的方法

    Docker 刪除及清理鏡像的方法

    本文主要介紹了Docker 刪除及清理鏡像的方法,文中通過(guò)示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2022-03-03

最新評(píng)論

陆良县| 阜南县| 芜湖市| 皋兰县| 湛江市| 弥勒县| 庆元县| 兴义市| 阿图什市| 和龙市| 佛坪县| 敦化市| 景德镇市| 抚州市| 万载县| 铜陵市| 齐齐哈尔市| 大石桥市| 泰兴市| 喀喇沁旗| 常熟市| 张北县| 乐至县| 禹州市| 多伦县| 威信县| 宜城市| 赤城县| 勐海县| 开封县| 台中县| 昌乐县| 周至县| 英山县| 朔州市| 浦县| 泗阳县| 富宁县| 抚顺市| 柳州市| 墨江|