news 2026/6/15 14:27:03

Docker启动安装nacos(详情讲解,全网最细)

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
Docker启动安装nacos(详情讲解,全网最细)

前言

  • 安装之前你需要准备一个mysql,当前安装方式是将数据持久化到数据库中的,这里的部署是单机模式

1、Docker 拉取镜像

docker pull nacos/nacos-server
  • PS:这是拉取最新的nacos版本,如果需要拉取别的版本可以加:版本号(如:docker pull nacos/nacos-server:v2.2.0)

2、挂载目录

mkdir -p /mydata/nacos/logs/ #新建logs目录 mkdir -p /mydata/nacos/conf/ #新建conf目录
  • PS:这一步是添加映射文件夹,将宿主机的文件映射到nacos容器中

3、启动nacos并复制文件到宿主机,关闭容器

启动容器

docker run -p 8848:8848 --name nacos -d nacos/nacos-server

复制文件

docker cp nacos:/home/nacos/logs/ /mydata/nacos/ docker cp nacos:/home/nacos/conf/ /mydata/nacos/

关闭容器

docker rm -f nacos
  • PS:这一步启动nacos是为了将nacos里面的文件拷贝出到挂载目录中,这样我们就可以直接修改挂载目录中文件来映射到容器里面去了

4、mysql中创建nacos所需的表

  • mysql中新建一个库,名字可自定义,这里就用nacos-config
  • 从github中找到创建表的文件,在nacos-config库中执行,创建所需的表

5、再次启动nacos

docker run -d --name nacos -p 8848:8848 -p 9848:9848 -p 9849:9849 --privileged=true -e JVM_XMS=256m -e JVM_XMX=256m -e MODE=standalone -v /mydata/nacos/logs/:/home/nacos/logs -v /mydata/nacos/conf/:/home/nacos/conf/ --restart=always nacos/nacos-server
  • PS : 复制上面的语句执行失败,可以将上面的执行语句变成一行,如下,可直接复制执行

    docker run -d --name nacos -p 8848:8848 -p 9848:9848 -p 9849:9849 --privileged=true -e JVM_XMS=256m -e JVM_XMX=256m -e MODE=standalone -v /mydata/nacos/logs/:/home/nacos/logs -v /mydata/nacos/conf/:/home/nacos/conf/ --restart=always nacos/nacos-server

语句讲解

  1. docker run -d : 启动容器 -d是后台启动并返回容器id的意思
  2. –name nacos :为容器指定一个名称
  3. -p 8848:8848 -p 9848:9848 -p 9849:9849 : 指定端口映射,注意这里的p不能大写,大写是随机端口映射
  4. –privileged=true : 扩大容器内的权限,将容器内的权限变为root权限,不加的话就是普通用户权限,可能会出现cannot open directory
  5. -e JVM_XMS=256m : 为jvm启动时分配的内存
  6. -e JVM_XMX=256m : 为jvm运行过程中分配的最大内存
  7. -e MODE=standalone : 使用 standalone模式(单机模式),MODE值有cluster(集群)模式/standalone模式两种,MODE必须大写
  8. -v /mydata/nacos/logs/:/home/nacos/logs : 将容器的/home/nacos/logs目录挂载到 /mydata/nacos/logs
  9. -v /mydata/nacos/conf/:/home/nacos/conf/: 将容器的/home/nacos/conf目录挂载到 /mydata/nacos/conf
  10. –restart=always :重启docker时,自动启动相关容器

注意事项

  1. 需要在防火墙开放相关端口,如果你是云服务器,开放安全组,下面提供相关语句

    开放端口8848 9848 9849

    firewall-cmd --zone=public --add-port=8848/tcp --permanent
    firewall-cmd --zone=public --add-port=9848/tcp --permanent
    firewall-cmd --zone=public --add-port=9849/tcp --permanent

    重启防火墙

    firewall-cmd --reload

    查看所有开启的端口

    firewall-cmd --zone=public --list-ports

  1. 这里最容易犯错的就是挂载目录对应不上,可以看下自己语句中的-v 后面的目录是否映射正确,博主第一次安装的时候logs里面还有一个logs文件夹,conf里面还有个conf文件夹,导致出错

6、修改配置文件

7、访问页面

http://ip:8848/nacos/index.html
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/6/15 13:34:00

交通仿真软件:Aimsun_(7).信号控制与优化

信号控制与优化 1. 信号控制的基本概念 信号控制是交通仿真中一个重要的组成部分,它通过控制交通信号灯的切换时间来优化交通流量。在Aimsun中,信号控制可以通过多种方式实现,包括固定时间信号控制、自适应信号控制和基于优化模型的信号控制。…

作者头像 李华
网站建设 2026/6/15 13:56:45

揭秘 Spring Boot 事务:动态增强的底层实现与核心组件

在分布式系统和复杂业务场景中,事务管理是保障数据一致性的核心技术之一。Spring Boot 提供的声明式事务机制,通过 “动态” 方式简化了事务配置,让开发者无需手动编写事务控制代码,仅通过简单注解即可实现事务管理。本文将从 “问…

作者头像 李华
网站建设 2026/6/15 13:26:49

ES在SpringBoot集成使用

1. 在Docker中安装Elasticsearch 这里不了解docker甚至还没安装虚拟机的小伙伴可以去黑马的视频下找到资源,去下一个虚拟机 这里就不对ES进行过多介绍了,具体的效果去b站看看叭,这里直接速成使用 安装ES并启动 docker pull elasticsearch &l…

作者头像 李华
网站建设 2026/6/15 12:36:20

基于微信小程序的新鲜到家生鲜超市销售系统(毕设源码+文档)

课题说明本课题聚焦基于微信小程序的新鲜到家生鲜超市销售系统的设计与实现,核心目标是解决传统生鲜超市销售中线下客流有限、商品展示不全面、订单处理效率低、配送调度混乱、生鲜保鲜追溯难及用户购物体验差等痛点问题。系统深度依托微信小程序生态优势&#xff0…

作者头像 李华
网站建设 2026/6/15 14:23:29

Docker部署Spring Boot + Vue项目

目录 前提条件 概述 下载代码 打开代码 Docker创建网络 MySQL容器准备 MySQL数据库配置 启动MySQL容器 测试连接MySQL 初始化MySQL数据 Redis容器准备 修改Redis配置 启动redis容器 部署后端 后端代码打包 上传jar包到Linux 创建Dockerfile 构建镜像 运行后…

作者头像 李华