在docker中安装nacos单节点shell脚本

108 阅读1分钟
#!/bin/bash

# 下载docker镜像
docker pull nacos/nacos-server:v2.1.0
# 挂载目录
mkdir -p /mnt/nacos/logs
mkdir -p /mnt/nacos/init.d
touch /mnt/nacos/init.d/custom.properties

read -p "请输入数据库IP地址:" ip
echo $ip
read -p "请输入数据库端口号:" port
echo $port
read -p "请输入数据库名称:" name
echo $name
read -p "请输入数据库帐号:" loginName
echo $loginName
read -p "请输入数据库密码:" password
echo $password

# nacos配置文件修改
echo "server.contextPath=/nacos
server.servlet.contextPath=/nacos
server.port=8848
 
spring.datasource.platform=mysql
db.num=1
db.url.0=jdbc:mysql://${ip}:${port}/${name}?characterEncoding=utf8&connectTimeout=1000&socketTimeout=3000&autoReconnect=true
db.user=${loginName}
db.password=${password}
 
nacos.cmdb.dumpTaskInterval=3600
nacos.cmdb.eventTaskInterval=10
nacos.cmdb.labelTaskInterval=300
nacos.cmdb.loadDataAtStart=false
management.metrics.export.elastic.enabled=false
management.metrics.export.influx.enabled=false
server.tomcat.accesslog.enabled=true
server.tomcat.accesslog.pattern=%h %l %u %t "%r" %s %b %D %{User-Agent}i
nacos.security.ignore.urls=/,/**/*.css,/**/*.js,/**/*.html,/**/*.map,/**/*.svg,/**/*.png,/**/*.ico,/console-fe/public/**,/v1/auth/login,/v1/console/health/**,/v1/cs/**,/v1/ns/**,/v1/cmdb/**,/actuator/**,/v1/console/server/**
nacos.naming.distro.taskDispatchThreadCount=1
nacos.naming.distro.taskDispatchPeriod=200
nacos.naming.distro.batchSyncKeyCount=1000
nacos.naming.distro.initDataRatio=0.9
nacos.naming.distro.syncRetryDelay=5000
nacos.naming.data.warmup=true
nacos.naming.expireInstance=true" >> /mnt/nacos/custom.properties

# docker容器启动
docker run \
--name nacos -d \
-p 8848:8848 \
-p 9848:9848 \
-p 9849:9849 \
--privileged=true \
--restart=always \
-e JVM_XMS=256m \
-e JVM_XMX=256m \
-e MODE=standalone \
-e PREFER_HOST_MODE=hostname \
-v /mnt/nacos/logs:/home/nacos/logs \
-v /mnt/nacos/init.d/custom.properties:/home/nacos/conf/application.properties \
nacos/nacos-server:v2.1.0