1. 程式人生 > 其它 >Docker 部署 nacos 服務

Docker 部署 nacos 服務

簡介

  • nacos 預設使用內嵌資料庫 Derby,做持久化,我們也可以使用 MySQL 作為持久化服務,在使用 MySQL 作資料庫時,需要提前建立資料庫和表;
    資料庫表結構和資料檔案:nacos_mysql.sql 提取碼:pd4t

單機部署

docker run -id \
-e PREFER_HOST_MODE=ip \
-e MODE=standalone \
-e SPRING_DATASOURCE_PLATFORM=mysql \
-e MYSQL_SERVICE_HOST=mysql伺服器ip \
-e MYSQL_SERVICE_PORT=3306 \
-e MYSQL_SERVICE_USER=user \
-e MYSQL_SERVICE_PASSWORD=password \
-e MYSQL_SERVICE_DB_NAME=nacos_config \
-e JVM_XMS=256m \
-e JVM_XMX=256m \
-e JVM_XMN=128m \
-p 8848:8848 \
--name nacos \
nacos/nacos-server

叢集化部署

Docker 常用屬性配置

屬性名稱 描述 選項
MODE 系統啟動方式: 叢集/單機 cluster/standalone 預設 cluster
NACOS_SERVERS 叢集地址 p1:port1空格ip2:port2 空格ip3:port3
PREFER_HOST_MODE 支援IP還是域名模式 hostname/ip 預設 ip
NACOS_SERVER_PORT Nacos 執行埠 預設 8848
NACOS_SERVER_IP 多網絡卡模式下可以指定IP
SPRING_DATASOURCE_PLATFORM 單機模式下支援MYSQL資料庫 mysql / 空 預設:空
MYSQL_SERVICE_HOST 資料庫 連線地址
MYSQL_SERVICE_PORT 資料庫埠 預設 : 3306
MYSQL_SERVICE_DB_NAME 資料庫庫名
MYSQL_SERVICE_USER 資料庫使用者名稱
MYSQL_SERVICE_PASSWORD 資料庫使用者密碼
MYSQL_SERVICE_DB_PARAM 資料庫連線引數 default : characterEncoding=utf8&connectTimeout=1000&socketTimeout=3000&autoReconnect=true&useSSL=false
MYSQL_DATABASE_NUM 資料庫編號 預設 :1
JVM_XMS -Xms 預設 :1g
JVM_XMX -Xmx 預設 :1g
JVM_XMN -Xmn 預設 :512m
JVM_MS -XX:MetaspaceSize 預設 :128m
JVM_MMS -XX:MaxMetaspaceSize 預設 :320m
NACOS_DEBUG 是否開啟遠端DEBUG y/n 預設 :n
TOMCAT_ACCESSLOG_ENABLED server.tomcat.accesslog.enabled 預設 :false
NACOS_AUTH_SYSTEM_TYPE 許可權系統型別選擇,目前只支援nacos型別 預設 :nacos
NACOS_AUTH_ENABLE 是否開啟許可權系統 預設 :false
NACOS_AUTH_TOKEN_EXPIRE_SECONDS token 失效時間 預設 :18000
NACOS_AUTH_TOKEN token 預設 :SecretKey012345678901234567890123456789012345678901234567890123456789
NACOS_AUTH_CACHE_ENABLE 許可權快取開關 ,開啟後許可權快取的更新預設有15秒的延遲 預設 : false
MEMBER_LIST 通過環境變數的方式設定叢集地址 例子:192.168.16.101:8847?raft_port=8807,192.168.16.101?raft_port=8808,192.168.16.101:8849?raft_port=8809
EMBEDDED_STORAGE 是否開啟叢集嵌入式儲存模式 embedded 預設 : none
NACOS_AUTH_CACHE_ENABLE nacos.core.auth.caching.enabled default : false
NACOS_AUTH_USER_AGENT_AUTH_WHITE_ENABLE nacos.core.auth.enable.userAgentAuthWhite default : false
NACOS_AUTH_IDENTITY_KEY nacos.core.auth.server.identity.key default : serverIdentity
NACOS_AUTH_IDENTITY_VALUE nacos.core.auth.server.identity.value default : security
NACOS_SECURITY_IGNORE_URLS nacos.security.ignore.urls default : /,/error,/*/*.css,/*/*.js,/*/*.html,/*/*.map,/*/*.svg,/*/*.png,/*/*.ico,/console-fe/public/*,/v1/auth/*,/v1/console/health/*,/actuator/*,/v1/console/server/*