kubernetes部暑nacos集群https://blog.csdn.net/easylife206/article/details/114301433
git clone https://github.com/nacos-group/nacos-docker.git
docker-compose -f example/standalone-mysql-5.7.yaml up -d
docker-compose -f example/standalone-mysql-8.yaml up -d
初始化sql在nacos镜像中也存在
访问url:
http://xxx.xxx.xxx.xxx:8848/nacos/
帐号,密码:nacos/nacos
属性名称 描述 选项
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 数据库连接参数 默认: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 注意:该环境变量在Nacos 2.2.1版本中已移除
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 注意:该环境变量在Nacos 2.2.1版本中已移除
NACOS_AUTH_IDENTITY_VALUE nacos.core.auth.server.identity.value 注意:该环境变量在Nacos 2.2.1版本中已移除
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/
DB_POOL_CONNECTION_TIMEOUT 数据库连接池超时时间,单位为毫秒 默认 : 30000
#!/bin/bash
docker rm -f nacos
cd `dirname $0`
docker run -d \
--restart=always \
--name nacos \
--network host \
-e PREFER_HOST_MODE=ip \
-e MODE=cluster \
-e NACOS_SERVERS="192.168.11.100:8848 192.168.11.101:8848" \
-e JVM_XMS=1g \
-e JVM_XMX=1g \
-e NACOS_AUTH_TOKEN_EXPIRE_SECONDS=1800 \
-e NACOS_SERVER_PORT=8848 \
-e SPRING_DATASOURCE_PLATFORM=mysql \
-e MYSQL_SERVICE_HOST=192.168.11.100 \
-e MYSQL_SERVICE_PORT=3306 \
-e MYSQL_SERVICE_DB_NAME=nacos \
-e MYSQL_SERVICE_USER=root \
-e MYSQL_SERVICE_PASSWORD=9BPyBVOR6rygdeoOezJDwKF30FAlGMrR \
-e NACOS_AUTH_ENABLE=true \
-e NACOS_AUTH_SYSTEM_TYPE=nacos \
-e NACOS_AUTH_TOKEN=SecretKey831659919775101571812001092202164733886116575721657832359857 \
-e NACOS_AUTH_IDENTITY_KEY=naXraNs1QJsThFfBz2P7dAob8Rqae66r \
-e NACOS_AUTH_IDENTITY_VALUE=2k6K5gmEBTBbl69XGxrZ0giRUQq4LONW \
-v /etc/localtime:/etc/localtime \
nacos/nacos-server:v2.3.0-slim
upstream nacosList {
server 192.168.11.100:8848 weight=1;
server 192.168.11.101:8848 weight=1;
}
server {
listen 8888;
server_name localhost;
add_header Content-Security-Policy "connect-src *";
add_header X-Content-Type-Options nosniff;
add_header X-XSS-Protection "1; mode=block";
#启用HSTS
add_header Strict-Transport-Security "max-age=31536000; includeSubDomains; preload";
add_header X-Frame-Options SAMEORIGIN;
add_header Referrer-Policy strict-origin-when-cross-origin;
add_header Feature-Policy "camera 'none'; microphone 'none'";
proxy_ignore_client_abort on;
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_redirect off;
proxy_set_header Host $host:$server_port;
proxy_set_header X-Forward-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto "http";
proxy_set_header X-Real-IP $remote_addr;
proxy_pass http://nacosList;
}
}
#!/bin/bash
docker rm -f nginx
cd `dirname $0`
docker run -d \
--restart=always \
--name nginx \
--network host \
-v /etc/localtime:/etc/localtime:ro \
-v /data/nginx/conf/nginx.conf:/etc/nginx/nginx.conf:ro \
-v /data/nginx/conf/conf.d:/etc/nginx/conf.d \
-v /data/nginx/certs:/etc/nginx/certs \
-v /data/nginx/log:/var/log/nginx \
nginx:1.25.4-alpine3.18-slim