1 部署方式
1.1 DockerHub
javaedge@JavaEdgedeMac-mini ~ % docker run --name nacos \
-e MODE=standalone \
-e JVM_XMS=128m \
-e JVM_XMX=128m \
-e JVM_XMN=64m \
-e JVM_MS=64m \
-e JVM_MMS=64m \
-p 8848:8848 \
-d nacos/nacos-server:v2.2.3
a624c64a1a25ad2d15908a67316d53212402c5cd340ad87cbcff0ad22a712388
# 自啟動(dòng)
javaedge@JavaEdgedeMac-mini ~ % docker update nacos --restart=always
nacos
javaedge@JavaEdgedeMac-mini ~ %
1.2 官網(wǎng)
1.2.1 Clone 項(xiàng)目
git clone https://github.com/nacos-group/nacos-docker.git
cd nacos-docker
1.2.2 單機(jī)模式
Derby:
docker-compose -f example/standalone-derby.yaml up
單機(jī)模式的MySQL:
MySQL5.7:
docker-compose -f example/standalone-mysql-5.7.yaml up
MySQL8:
docker-compose -f example/standalone-mysql-8.yaml up
1.2.3 集群模式
docker-compose -f example/cluster-hostname.yaml up
2 基本操作
服務(wù)注冊(cè)
curl -X POST 'http://127.0.0.1:8848/nacos/v1/ns/instance?serviceName=nacos.naming.serviceName&ip=20.18.7.10&port=8080'
服務(wù)發(fā)現(xiàn)
curl -X GET 'http://127.0.0.1:8848/nacos/v1/ns/instance/list?serviceName=nacos.naming.serviceName'
發(fā)布配置
curl -X POST "http://127.0.0.1:8848/nacos/v1/cs/configs?dataId=nacos.cfg.dataId&group=test&content=helloWorld"
獲取配置
curl -X GET "http://127.0.0.1:8848/nacos/v1/cs/configs?dataId=nacos.cfg.dataId&group=test"
3 常見屬性配置
屬性名稱 | 描述 | 選項(xiàng) |
---|---|---|
MODE | 系統(tǒng)啟動(dòng)方式: 集群/單機(jī) | cluster/standalone默認(rèn) cluster |
NACOS_SERVERS | 集群地址 | p1:port1空格ip2:port2 空格ip3:port3 |
PREFER_HOST_MODE | 支持IP還是域名模式 | hostname/ip 默認(rèn) ip |
NACOS_SERVER_PORT | Nacos 運(yùn)行端口 | 默認(rèn) 8848 |
NACOS_SERVER_IP | 多網(wǎng)卡模式下可以指定IP | |
SPRING_DATASOURCE_PLATFORM | 單機(jī)模式下支持MYSQL數(shù)據(jù)庫(kù) | mysql / 空 默認(rèn):空 |
MYSQL_SERVICE_HOST | 數(shù)據(jù)庫(kù) 連接地址 | |
MYSQL_SERVICE_PORT | 數(shù)據(jù)庫(kù)端口 | 默認(rèn) : 3306 |
MYSQL_SERVICE_DB_NAME | 數(shù)據(jù)庫(kù)庫(kù)名 | |
MYSQL_SERVICE_USER | 數(shù)據(jù)庫(kù)用戶名 | |
MYSQL_SERVICE_PASSWORD | 數(shù)據(jù)庫(kù)用戶密碼 | |
MYSQL_SERVICE_DB_PARAM | 數(shù)據(jù)庫(kù)連接參數(shù) | default : characterEncoding=utf8&connectTimeout=1000&socketTimeout=3000&autoReconnect=true&useSSL=false |
MYSQL_DATABASE_NUM | 數(shù)據(jù)庫(kù)編號(hào) | 默認(rèn) :1 |
JVM_XMS | -Xms | 默認(rèn) :1g |
JVM_XMX | -Xmx | 默認(rèn) :1g |
JVM_XMN | -Xmn | 默認(rèn) :512m |
JVM_MS | -XX:MetaspaceSize | 默認(rèn) :128m |
JVM_MMS | -XX:MaxMetaspaceSize | 默認(rèn) :320m |
NACOS_DEBUG | 是否開啟遠(yuǎn)程DEBUG | y/n 默認(rèn) :n |
TOMCAT_ACCESSLOG_ENABLED | server.tomcat.accesslog.enabled | 默認(rèn) :false |
NACOS_AUTH_SYSTEM_TYPE | 權(quán)限系統(tǒng)類型選擇,目前只支持nacos類型 | 默認(rèn) :nacos |
NACOS_AUTH_ENABLE | 是否開啟權(quán)限系統(tǒng) | 默認(rèn) :false |
NACOS_AUTH_TOKEN_EXPIRE_SECONDS | token 失效時(shí)間 | 默認(rèn) :18000 |
NACOS_AUTH_TOKEN | token | 默認(rèn) :SecretKey012345678901234567890123456789012345678901234567890123456789 |
NACOS_AUTH_CACHE_ENABLE | 權(quán)限緩存開關(guān) ,開啟后權(quán)限緩存的更新默認(rèn)有15秒的延遲 | 默認(rèn) : false |
MEMBER_LIST | 通過環(huán)境變量的方式設(shè)置集群地址 | 例子: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 | 是否開啟集群嵌入式存儲(chǔ)模式 |
embedded 默認(rèn) : 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/**
|
4 Nacos + Grafana + Prometheus
參考:Nacos監(jiān)控指南
Note: grafana創(chuàng)建一個(gè)新數(shù)據(jù)源時(shí),數(shù)據(jù)源地址必須是 http://prometheus:9090
5 訪問Dashboard
localhost:8848/nacos,可見:
默認(rèn)賬戶 nacos/nacos:
占用內(nèi)存很高:
CONTAINER ID NAME CPU % MEM USAGE / LIMIT MEM % NET I/O BLOCK I/O PIDS
a624c64a1a25 nacos 1.70% 920.2MiB / 7.675GiB 11.71% 76.2kB / 5.08MB 0B / 15.9MB 259
^C%
6 應(yīng)用集成
引入依賴
<!-- 引入nacos注冊(cè)中心 -->
<dependency>
<groupId>com.alibaba.cloud</groupId>
<artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId>
</dependency>
客戶端注冊(cè)
spring:
cloud:
nacos:
discovery:
server-addr: localhost:8848
作者簡(jiǎn)介:魔都國(guó)企技術(shù)專家兼架構(gòu),多家大廠后臺(tái)研發(fā)和架構(gòu)經(jīng)驗(yàn),負(fù)責(zé)復(fù)雜度極高業(yè)務(wù)系統(tǒng)的模塊化、服務(wù)化、平臺(tái)化研發(fā)工作。具有豐富帶團(tuán)隊(duì)經(jīng)驗(yàn),深厚人才識(shí)別和培養(yǎng)的積累。
參考:文章來源:http://www.zghlxwxcb.cn/news/detail-779019.html
- 編程嚴(yán)選網(wǎng)
- Nacos
- Nacos Docker
本文由博客一文多發(fā)平臺(tái) OpenWrite 發(fā)布!文章來源地址http://www.zghlxwxcb.cn/news/detail-779019.html
到了這里,關(guān)于Docker一鍵極速安裝Nacos,并配置數(shù)據(jù)庫(kù)!的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!