Docker一键极速安装Nacos,并配置数据库!
1 部署方式1.1 DockerHub
https://img2024.cnblogs.com/other/1097393/202401/1097393-20240105152445634-857314868.png
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
# 自启动
javaedge@JavaEdgedeMac-mini ~ % docker update nacos --restart=always
nacos
javaedge@JavaEdgedeMac-mini ~ %1.2 官网
1.2.1 Clone 项目
git clone https://github.com/nacos-group/nacos-docker.git
cd nacos-docker1.2.2 单机模式
Derby:
docker-compose -f example/standalone-derby.yaml up单机模式的MySQL:
MySQL5.7:
docker-compose -f example/standalone-mysql-5.7.yaml upMySQL8:
docker-compose -f example/standalone-mysql-8.yaml up1.2.3 集群模式
docker-compose -f example/cluster-hostname.yaml up 2 基本操作
服务注册
curl -X POST 'http://127.0.0.1:8848/nacos/v1/ns/instance?serviceName=nacos.naming.serviceName&ip=20.18.7.10&port=8080'服务发现
curl -X GET 'http://127.0.0.1:8848/nacos/v1/ns/instance/list?serviceName=nacos.naming.serviceName'发布配置
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 常见属性配置
属性名称描述选项MODE系统启动方式: 集群/单机cluster/standalone默认 clusterNACOS_SERVERS集群地址p1:port1空格ip2:port2 空格ip3:port3PREFER_HOST_MODE支持IP还是域名模式hostname/ip 默认 ipNACOS_SERVER_PORTNacos 运行端口默认 8848NACOS_SERVER_IP多网卡模式下可以指定IPSPRING_DATASOURCE_PLATFORM单机模式下支持MYSQL数据库mysql / 空 默认:空MYSQL_SERVICE_HOST数据库 连接地址MYSQL_SERVICE_PORT数据库端口默认 : 3306MYSQL_SERVICE_DB_NAME数据库库名MYSQL_SERVICE_USER数据库用户名MYSQL_SERVICE_PASSWORD数据库用户密码MYSQL_SERVICE_DB_PARAM数据库连接参数default : characterEncoding=utf8&connectTimeout=1000&socketTimeout=3000&autoReconnect=true&useSSL=falseMYSQL_DATABASE_NUM数据库编号默认 :1JVM_XMS-Xms默认 :1gJVM_XMX-Xmx默认 :1gJVM_XMN-Xmn默认 :512mJVM_MS-XX:MetaspaceSize默认 :128mJVM_MMS-XX:MaxMetaspaceSize默认 :320mNACOS_DEBUG是否开启远程DEBUGy/n 默认 :nTOMCAT_ACCESSLOG_ENABLEDserver.tomcat.accesslog.enabled默认 :falseNACOS_AUTH_SYSTEM_TYPE权限系统类型选择,目前只支持nacos类型默认 :nacosNACOS_AUTH_ENABLE是否开启权限系统默认 :falseNACOS_AUTH_TOKEN_EXPIRE_SECONDStoken 失效时间默认 :18000NACOS_AUTH_TOKENtoken默认 :SecretKey012345678901234567890123456789012345678901234567890123456789NACOS_AUTH_CACHE_ENABLE权限缓存开关 ,开启后权限缓存的更新默认有15秒的延迟默认 : falseMEMBER_LIST通过环境变量的方式设置集群地址例子:192.168.16.101:8847?raft_port=8807,192.168.16.101?raft_port=8808,192.168.16.101:8849?raft_port=8809EMBEDDED_STORAGE是否开启集群嵌入式存储模式embedded 默认 : noneNACOS_AUTH_CACHE_ENABLEnacos.core.auth.caching.enableddefault : falseNACOS_AUTH_USER_AGENT_AUTH_WHITE_ENABLEnacos.core.auth.enable.userAgentAuthWhitedefault : falseNACOS_AUTH_IDENTITY_KEYnacos.core.auth.server.identity.keydefault : serverIdentityNACOS_AUTH_IDENTITY_VALUEnacos.core.auth.server.identity.valuedefault : securityNACOS_SECURITY_IGNORE_URLSnacos.security.ignore.urlsdefault : /,/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监控指南
Note: grafana创建一个新数据源时,数据源地址必须是 http://prometheus:9090
5 访问Dashboard
localhost:8848/nacos,可见:
https://img2024.cnblogs.com/other/1097393/202401/1097393-20240105152446012-1510013648.png
默认账户 nacos/nacos:
https://img2024.cnblogs.com/other/1097393/202401/1097393-20240105152446565-2052521748.png
占用内存很高:
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 应用集成
引入依赖
<dependency>
<groupId>com.alibaba.cloud</groupId>
<artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId>
</dependency>客户端注册
spring:
cloud:
nacos:
discovery:
server-addr: localhost:8848作者简介:魔都国企技术专家兼架构,多家大厂后台研发和架构经验,负责复杂度极高业务系统的模块化、服务化、平台化研发工作。具有丰富带团队经验,深厚人才识别和培养的积累。
参考:
[*]编程严选网
[*]Nacos
[*]Nacos Docker
本文由博客一文多发平台 OpenWrite 发布!
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!
页:
[1]