docker安装nacos

我一直以来我是用虚拟机安装的mysql,redis,es等,在本机安装nacos作为注册中心和配置中心的,每次重启电脑都需要启动nacos和虚拟机比较麻烦。

今天斥巨资103.08元购买个一年的华为云服务器来用于开发,购买后mysql,redis这些都是安装在虚拟机,云服务器也是linux系统,直接在云服务器安装docker,然后按照前面的博客那样安装就好了。

这里主要说一下nacos,之前由于在本机安装的,本机是Windows系统,下面讲一下怎么在Linux安装使用。

下载镜像

docker pull nacos/nacos-server

下载完可以查一下:

创建挂载目录

在本地home文件中挂载目录,挂载配置以及日志文件。

mkdir -p /home/nacos/logs
mkdir -p /home/nacos/init.d

 在 /home/nacos/init.d 路径下创建custom.properties文件并粘贴相关配置:

cd /home/nacos/init.d/
vi custom.properties

修改为如下内容:

#spring.security.enabled=false
#management.security=false
#security.basic.enabled=false
#nacos.security.ignore.urls=/**
#management.metrics.export.elastic.host=http://localhost:9200
# metrics for prometheus
management.endpoints.web.exposure.include=*

# metrics for elastic search
#management.metrics.export.elastic.enabled=false
#management.metrics.export.elastic.host=http://localhost:9200

# metrics for influx
#management.metrics.export.influx.enabled=false
#management.metrics.export.influx.db=springboot
#management.metrics.export.influx.uri=http://localhost:8086
#management.metrics.export.influx.auto-create-db=true
#management.metrics.export.influx.consistency=one
#management.metrics.export.influx.compressed=true

启动容器

配置数据库是为了nacos的配置持久化(-e 是设置环境变量  MYSQL_XXX的环境变量nacos的配置里会读取环境变量,所以设置了环境变量nacos就可以访问数据库)

docker run -d --name nacos --restart=always --network=host \
-p 8848:8848 -p 9848:9848 -p 9849:9849 \
-e MODE=standalone \
-e JVM_XMS=512m \
-e JVM_XMX=512m \
-e SPRING_DATASOURCE_PLATFORM=mysql \
-e MYSQL_SERVICE_HOST=数据库IP \
-e MYSQL_SERVICE_DB_NAME=数据库名 \
-e MYSQL_SERVICE_USER=数据库登录名 \
-e MYSQL_SERVICE_PASSWORD=数据库密码 \

-e MYSQL_SERVICE_PORT=数据库端口 \
-e MYSQL_SERVICE_DB_PARAM="characterEncoding=utf8&connectTimeout=1000&socketTimeout=3000&autoReconnect=true&useUnicode=true&useSSL=false&serverTimezone=UTC" \

-v /var/log/nacos:/home/nacos/logs \

-v /home/nacos/init.d/custom.properties:/home/nacos/init.d/custom.properties \

nacos/nacos-server

启动服务

docker start nacos

测试

如果失败

如果测试打不开可以docker logs nacos查看日志,大多数是数据库持久化配置出错了,链接不上数据库等,可以直接修改数据库相关链接:

#进入nacos容器
docker exec -it nacos /bin/bash  
#进入配置文件夹
cd conf
#修改配置
vim application.properties
spring.datasource.platform=mysql
db.num=1
db.url.0=jdbc:mysql://数据库IP:数据库端口/数据库名?characterEncoding=utf8&connectTimeout=1000&socketTimeout=3000&autoReconnect=true&useUnicode=true&useSSL=false&serverTimezone=UTC
db.user=数据库用户名
db.password=数据库密码

基本就可以解决了

我一般都是application.properties的默认端口3306改成实际mysql端口就好了

posted @ 2023-08-05 22:28  lucsa  阅读(149)  评论(0编辑  收藏  举报