当前位置: 首页 > article >正文

Docker 中启动 Nacos

要在 Docker 中启动 Nacos,你可以使用以下步骤来启动 Nacos 服务。我已经有了 swr.cn-north-4.myhuaweicloud.com/ddn-k8s/docker.io/nacos/nacos-server:v2.4.2.1 这个镜像。

1. 创建并启动 MySQL 容器(Nacos 依赖 MySQL)

Nacos 默认使用 MySQL 作为数据库,所以你需要先启动一个 MySQL 容器,确保数据库正常运行。

首先,启动 MySQL 容器,可以使用以下命令:

docker run -d --name mysql -e MYSQL_ROOT_PASSWORD=root -e MYSQL_DATABASE=nacos -p 3306:3306 mysql:5.7

这里的选项说明:

  • -d:后台运行容器
  • --name mysql:为容器指定名称为 mysql
  • -e MYSQL_ROOT_PASSWORD=root:设置 MySQL 的根用户密码为 root
  • -e MYSQL_DATABASE=nacos:创建一个名为 nacos 的数据库
  • -p 3306:3306:将宿主机的 3306 端口映射到容器内的 3306 端口

如果已经创建好了,只是关机重启,可以直接

docker start nacos

2. 创建并启动 Nacos 容器

在 MySQL 容器成功启动后,启动 Nacos 容器:

docker run -d --name nacos \
  -e MODE=standalone \
  -e MYSQL_HOST=192.168.100.128 \
  -e MYSQL_PORT=3306 \
  -e MYSQL_USER=root \
  -e MYSQL_PASSWORD=root \
  -e MYSQL_DATABASE=nacos \
  -p 8848:8848 \
  swr.cn-north-4.myhuaweicloud.com/ddn-k8s/docker.io/nacos/nacos-server:v2.4.2.1

这里的选项说明:

  • -d:后台运行容器
  • --name nacos:为容器指定名称为 nacos
  • -e MODE=standalone:指定 Nacos 以单机模式启动
  • -e MYSQL_HOST=192.168.100.128:指定 MySQL 数据库的 IP 地址(这里假设你本地的 MySQL 容器地址是 192.168.100.128,如果是本机使用 localhost127.0.0.1
  • -e MYSQL_PORT=3306:MySQL 的端口号
  • -e MYSQL_USER=root:MySQL 的用户名
  • -e MYSQL_PASSWORD=root:MySQL 的密码
  • -e MYSQL_DATABASE=nacos:Nacos 使用的数据库
  • -p 8848:8848:将容器的 8848 端口映射到宿主机的 8848 端口,这是 Nacos 的默认管理界面端口

3. 查看容器状态

启动 Nacos 容器后,可以通过以下命令查看容器的运行状态:

docker ps

你应该能够看到 nacos 容器正在运行。

4. 访问 Nacos 控制台

如果一切正常,你可以通过浏览器访问 Nacos 控制台,访问地址为:

http://<宿主机IP>:8848/nacos

例如,如果你的宿主机 IP 地址是 192.168.100.128,那么 URL 应该是:

http://192.168.100.128:8848/nacos

默认的用户名和密码是:

  • 用户名:nacos
  • 密码:nacos

5. 配置数据库

如果 Nacos 启动后出现数据库连接问题,可以尝试以下操作:

  • 确保 MySQL 容器运行正常
  • 确保 MySQL 用户和数据库配置正确
  • 检查 MySQL 是否允许外部连接(你可能需要调整 MySQL 配置或允许容器之间的网络通信)

通过以上步骤,你应该能够成功启动 Nacos 并访问它。如果有任何问题,请查看容器日志以获取更多信息:

docker logs nacos

http://www.kler.cn/a/470912.html

相关文章:

  • 网络安全常见的问题
  • C#开发——接口Interface
  • 人工智能的发展领域之GPU加速计算的应用概述、架构介绍与教学过程
  • Lianwei 安全周报|2024.1.7
  • 探索Whisper:从原理到实际应用的解析
  • Webstorm整合Tabnine AI 编码工具
  • Vue Amazing UI 组件库(Vue3+TypeScript+Vite 等最新技术栈开发)
  • 普及组集训数据结构--并查集
  • 学习threejs,导入AWD格式的模型
  • iOS实现在collectionView顶部插入数据效果
  • 分布式IO模块:激光切割机产线高效控制的创新引擎
  • c# 中Parallel.ForEach 对其中一个变量进行赋值 引发报错
  • 计算机网络•自顶向下方法:多址接入协议
  • 【AI数学基础】线性代数:向量空间
  • reactor的Hooks.enableAutomaticContextPropagation();不生效解决方案
  • 基于32单片机的智能语音家居
  • pytest日志显示
  • gesp(C++一级)(18)洛谷:B4063:[GESP202412 一级] 奇数和偶数
  • 某制造集团灯塔工厂解决方案(36页PPT)
  • 安装vue脚手架出现的一系列问题
  • 计算机网络——网络层—路由算法和路由协议
  • 感知器的那些事
  • springboot适配mybatis+guassdb与Mysql兼容性问题处理
  • 升级 Spring Boot 3 配置讲解 —— Spring Boot 3 核心源码专讲
  • 如何在 Ubuntu 22.04 上安装 Nagios 服务器教程
  • Flutter:打包apk,安卓版本更新(二)