前言
在安裝 Nacos 之前,請確保你已經準備好了一個運行中的 MySQL 數據庫。本教程將指導您如何使用 Docker 在單機模式下部署 Nacos,并將其數據持久化到 MySQL 中。
步驟一:拉取 Nacos 鏡像
拉取最新版本的 Nacos Server 鏡像,也可以指定特定版本:
docker pull nacos/nacos-server
如果你想拉取特定版本,例如 v2.2.0,則執(zhí)行:
docker pull nacos/nacos-server:v2.2.0
步驟二:創(chuàng)建并掛載目錄
在宿主機上創(chuàng)建兩個目錄用于日志和配置文件映射:
mkdir -p /mydata/nacos/logs/
mkdir -p /mydata/nacos/conf/
注意:這些目錄將作為數據卷掛載到容器內部,使得我們可以在宿主機直接修改相關文件。
步驟三:臨時啟動并復制文件
- 啟動一個臨時的 Nacos 容器以便從容器內復制配置文件至宿主機:
docker run -d --name nacos-temp -p 8848:8848 nacos/nacos-server
- 將容器內的配置文件和日志文件復制到宿主機對應的目錄:
docker cp nacos-temp:/home/nacos/logs/ /mydata/nacos/
docker cp nacos-temp:/home/nacos/conf/ /mydata/nacos/
- 關閉并移除臨時容器:
docker rm -f nacos-temp
步驟四:在 MySQL 中創(chuàng)建 Nacos 所需表結構
在 MySQL 中新建數據庫 nacos-config
(或其他自定義名稱),然后從 Nacos GitHub 倉庫 中找到并執(zhí)行創(chuàng)建表結構的 SQL 腳本。
步驟五:正式啟動 Nacos 并設置環(huán)境變量
以下命令用于啟動一個帶有持久化配置且連接了 MySQL 數據庫的 Nacos 容器:
docker run -d \
--name nacos \
-p 8848:8848 \
-p 9848:9848 \
-p 9849:9849 \
--privileged=true \
-e JVM_XMS=256m \
-e JVM_XMX=256m \
-e MODE=standalone \
-e SPRING_DATASOURCE_PLATFORM=mysql \
-e DB_NUM=1 \
-e DB_URL_0=jdbc:mysql://localhost:3306/nacos-config?characterEncoding=utf8&connectTimeout=1000&socketTimeout=30000&autoReconnect=true&useUnicode=true&useSSL=false&serverTimezone=UTC \
-e DB_USER=root \
-e DB_PASSWORD=root \
-v /mydata/nacos/logs/:/home/nacos/logs \
-v /mydata/nacos/conf/:/home/nacos/conf \
--restart=always \
nacos/nacos-server
命令參數說明:
-
-d
表示以守護進程模式運行容器。 -
-p
參數用于端口映射。 -
--privileged=true
提升容器權限。 -
-e
設置環(huán)境變量,包括 JVM 內存大小、運行模式以及 MySQL 數據庫連接信息。 -
-v
掛載數據卷。
網絡與防火墻設置
確保宿主機的防火墻規(guī)則允許訪問 Nacos 相關端口(8848, 9848 和 9849)。對于 Linux 系統(tǒng),可以使用以下命令:
firewall-cmd --permanent --add-port=8848/tcp
firewall-cmd --permanent --add-port=9848/tcp
firewall-cmd --permanent --add-port=9849/tcp
firewall-cmd --reload
systemctl restart docker # 重啟 Docker 服務以確保新規(guī)則生效
配置文件修改
編輯宿主機上的 Nacos 配置文件以指向你的 MySQL 實例:
vim /mydata/nacos/conf/application.properties
更新如下配置項:
spring.datasource.platform=mysql
db.num=1
db.url.0=jdbc:mysql://localhost:3306/nacos-config?characterEncoding=utf8&connectTimeout=1000&socketTimeout=30000&autoReconnect=true&useUnicode=true&useSSL=false&serverTimezone=UTC
db.user=root
db.password=root
驗證配置是否正確映射到容器內:
docker exec -it nacos /bin/bash
cat /home/nacos/conf/application.properties
exit
訪問 Nacos 控制臺
當所有步驟完成后,現在可以通過瀏覽器訪問 Nacos 控制臺:
http://<ip>:8848/nacos/index.html
請將 <ip>
替換為實際服務器 IP 地址或本地回環(huán)地址 127.0.0.1
。文章來源:http://www.zghlxwxcb.cn/news/detail-834202.html
請注意,上述步驟基于截至撰寫本文時的最佳實踐,具體操作時,請參照最新的官方文檔及 Docker 鏡像標簽進行調整。同時,務必檢查掛載目錄映射的正確性,確保應用配置能夠成功寫入容器。文章來源地址http://www.zghlxwxcb.cn/news/detail-834202.html
到了這里,關于使用 Docker 部署 Nacos 并配置 MySQL 數據源的文章就介紹完了。如果您還想了解更多內容,請在右上角搜索TOY模板網以前的文章或繼續(xù)瀏覽下面的相關文章,希望大家以后多多支持TOY模板網!