Linux - Docker 安装 Nacos

拉取 Nacos 镜像

使用以下命令从 Docker Hub 拉取最新版本的 Nacos 镜像:

bash 复制代码
docker pull nacos/nacos-server

启动 Nacos 容器

使用以下命令启动 Nacos 容器:

bash 复制代码
docker run -d \
  --name nacos \
  --privileged \
  --cgroupns host \
  --env JVM_XMX=256m \
  --env MODE=standalone \
  --env JVM_XMS=256m \
  -p 8848:8848/tcp \
  -p 9848:9848/tcp \
  --restart=always \
  -w /home/nacos \
  nacos/nacos-server

启动命令解析:

  1. docker run: 这是 Docker 的基本命令,用于运行一个新的容器。
  2. -d: 这个参数告诉 Docker 以 "守护进程" 模式运行容器,即在后台运行。
  3. --name nacos: 这个参数为容器指定一个名称,这里命名为 "nacos"。在后续的操作中,可以通过这个名称来引用容器。
  4. --privileged: 这个参数给予容器额外的权限,允许它访问宿主机的设备和系统调用。在某些情况下,Nacos 可能需要这些权限来正常运行。
  5. --cgroupns host: 这个参数设置容器的 cgroup 命名空间模式为 "host",这意味着容器将使用宿主机的 cgroup 命名空间。这通常用于性能调优或特定的隔离需求。
  6. --env JVM_XMX=256m: 这个参数设置 Java 虚拟机(JVM)的最大堆内存为 256MB。JVM_XMX 是控制 Java 堆大小的环境变量。
  7. --env MODE=standalone: 这个参数设置 Nacos 运行模式为 "standalone",即单机模式。这适用于开发或测试环境。对于生产环境,可能需要设置为集群模式。
  8. --env JVM_XMS=256m: 这个参数设置 JVM 的初始堆内存为 256MB。JVM_XMS 是控制 Java 堆初始大小的环境变量。
  9. -p 8848:8848/tcp: 这个参数将容器的 8848 端口映射到宿主机的 8848 端口。Nacos 控制台默认使用此端口。
  10. -p 9848:9848/tcp: 这个参数将容器的 9848 端口映射到宿主机的 9848 端口。这个端口可能用于 Nacos 的其他服务或功能。
  11. --restart=always: 这个参数设置容器的重启策略为 "always",即无论退出状态如何,总是重启容器。这确保了 Nacos 服务的持续可用性。
  12. -w /home/nacos: 这个参数设置容器的工作目录为 "/home/nacos"。Nacos 的配置文件和日志通常存储在这个目录下。
  13. nacos/nacos-server: 这是要运行的 Docker 镜像的名称。在这个例子中,使用的是 Nacos 官方提供的镜像。

验证 Nacos 安装

在浏览器中访问 http://<服务器IP地址>:8848/nacos,你应该能看到 Nacos 控制台的登录页面。默认的用户名和密码都是 nacos

注意事项

防火墙设置:如果你的服务器有防火墙,请确保开放 8848 和 9848 端口,以便可以远程访问 Nacos 控制台。

bash 复制代码
# 添加端口规则:
sudo firewall-cmd --zone=public --add-port=8848/tcp --permanent
sudo firewall-cmd --zone=public --add-port=9848/tcp --permanent

# 重新加载防火墙规则:
sudo firewall-cmd --reload

# 验证端口是否开启:
sudo firewall-cmd --zone=public --list-ports

持久化存储 :为了防止数据丢失,建议将 Nacos 的数据目录映射到宿主机的持久化存储中。可以通过添加 -v <宿主机目录>:/home/nacos 参数实现。

集群部署 :上述步骤是在单机模式下安装 Nacos。如果需要在生产环境中部署 Nacos 集群,请参考 Nacos 官方文档 进行配置。

相关推荐
极客小张几秒前
基于STM32MP157与OpenCV的嵌入式Linux人脸识别系统开发设计流程
linux·stm32·单片机·opencv·物联网
x66ccff5 分钟前
【linux】4张卡,坏了1张,怎么办?
linux·运维·服务器
jjb_23625 分钟前
LinuxC高级作业2
linux·bash
OH五星上将34 分钟前
OpenHarmony(鸿蒙南向开发)——小型系统内核(LiteOS-A)【扩展组件】上
linux·嵌入式硬件·harmonyos·openharmony·鸿蒙开发·liteos-a·鸿蒙内核
拾光师1 小时前
linux之网络命令
linux·服务器·网络
_道隐_2 小时前
如何在Windows上安装Docker
windows·docker
我命由我123452 小时前
GPIO 理解(基本功能、模拟案例)
linux·运维·服务器·c语言·c++·嵌入式硬件·c#
皓月盈江2 小时前
Linux ubuntu debian系统安装UFW防火墙图形化工具GUFW
linux·ubuntu·debian·防火墙·ufw·gufw
kka杰2 小时前
Linux 进程3
linux·运维·服务器
华纳云IDC服务商2 小时前
网站服务器怎么计算同时在线人数?
运维·服务器