Docker部署Nacos

Nacos是一个开源的服务注册和配置中心,可以帮助我们更轻松地管理微服务架构中的服务注册和配置信息。可以使用Docker快速部署Nacos,并通过连接MySQL数据库来持久化存储Nacos的数据。

一、准备MySQL数据库

Nacos1.4.0以下使用的MySQL是8.0以下版本,1.4.0以上使用MySQL8.0以上版本

本次Nacos版本:Nacos2.0.3

对应MySQL版本:MySQL8.0.27

二、拉取Nacos官方提供的Docker镜像

docker pull nacos/nacos-server

三、运行Nacos容器并连接MySQL数据库

docker run --name nacos -p 8848:8848 \
--env MODE=standalone \
--env SPRING_DATASOURCE_PLATFORM=mysql \
--env MYSQL_SERVICE_HOST=mysql_host \
--env MYSQL_SERVICE_PORT=3306 \
--env MYSQL_SERVICE_DB_NAME=nacos_db \
--env MYSQL_SERVICE_USER=root \
--env MYSQL_SERVICE_PASSWORD=123456 \
-d nacos/nacos-server

各个参数的含义解释:

  • -d: 以后台(守护进程)模式运行容器。
  • -p 8848:8848: 将容器的Nacos服务端口8848映射到主机的端口8848,这样你就可以通过主机的8848端口访问Nacos。
  • --name nacos: 为容器指定一个名称,这里命名为nacos。
  • --env MODE=standalone: 设置Nacos运行模式为standalone,即单机模式。
  • --env SPRING_DATASOURCE_PLATFORM=mysql: 设置Nacos使用MySQL数据库作为数据存储。
  • --env MYSQL_SERVICE_HOST=mysql_host: 设置MySQL数据库的主机地址。请将mysql_host替换为实际的MySQL主机地址。
  • --env MYSQL_SERVICE_PORT=3306: 设置MySQL数据库的端口。如果MySQL数据库使用的是默认端口3306,则不需要修改此参数。
  • --env MYSQL_SERVICE_DB_NAME=nacos_db: 设置Nacos在MySQL中创建的数据库名称。请将nacos_db替换为希望的数据库名称。
  • --env MYSQL_SERVICE_USER=root: 设置连接MySQL数据库的用户名。请将root替换为实际的MySQL用户名。
  • --env MYSQL_SERVICE_PASSWORD=123456: 设置连接MySQL数据库的密码。请将123456替换为实际的MySQL密码。

四、访问Nacos控制台

浏览器中访问Nacos的Web控制台:http://localhost:8848/nacos

五、持久化存储数据说明

将MySQL数据库与Nacos连接,Nacos的所有服务注册和配置信息将持久化存储在MySQL数据库中。这意味着即使停止或删除了Nacos容器,数据也不会丢失,并且下次再次启动Nacos容器时,数据将从MySQL数据库中恢复。

Logo

旨在为数千万中国开发者提供一个无缝且高效的云端环境,以支持学习、使用和贡献开源项目。

更多推荐