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

Docker安装nacos(详细教程)

        Nacos 是一个开源的动态服务发现、配置管理和服务管理平台,广泛用于微服务架构中。在本文章中,博主将详细介绍如何使用 Docker 来安装 Nacos,以便快速启动并运行这个强大的服务管理工具。

前置条件

        在开始安装 Nacos 之前,请确保你已经在自己的运行环境中安装了 Docker Linux 服务器上安装 Docker 请参考Linux安装Docker

1.拉取Nacos镜像

        Nacos 官方提供了 Docker 镜像,可以通过 Docker Hub 拉取。打开终端,运行以下命令来拉取 Nacos 镜像: 

# 拉取 Nacos 的 Docker 镜像
$ docker pull nacos/nacos-server

Docker 官方镜像地址:hub.docker.com

Nacos 镜像地址:nacos/nacos-server - Docker Image | Docker Hub

2.创建Docker挂载目录

# 创建 log 目录
$ mkdir -p /mydata/nacos/log/
# 创建 conf 目录
$ mkdir -p /mydata/nacos/conf/

 3.创建Docker容器

# 启动 Docker 容器
$ docker run -p 8848:8848 --name nacos -d nacos/nacos-server

4.将Docker容器的文件复制到宿主机

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

5.删除容器

$ docker rm -f nacos

6.重新创建并运行Docker容器

$ 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

7.修改配置文件

        7.1.找到application.properties配置文件

        博主这里是以下这个路径:

$ vim /mydata/nacos/conf/application.properties

        7.2.如果有需要,可以改为自己的数据库

# application.properties 配置文件spring.datasource.platform=mysql
db.num=1
db.url.0=jdbc:mysql://localhost:3306/nacos-config?characterEncoding=utf8&connectTimeout=1000&socketTimeout=30000&autoReconnect=true&useUnicode=true&useSSL=false&serverTimezone=UTC
db.user=root
db.password=root

        MySQL数据库中,创建nacos可能用到的表:

GitCode - 全球开发者的开源社区,开源代码托管平台

8.开放Linux相应端口

        8.1.若使用了ufw防火墙机制:

# 开放 8848 端口
$ ufw allow 8848# 开放 9848 端口
$ ufw allow 9848# 开放 9849 端口
$ ufw allow 9849

         8.2.若使用阿里云服务器,还需配置安全组规则:

9.访问页面

http://xx.xx.xx.xx:8848/nacos/index.html

        如果不出意外,你将会看到如下界面: 

         由于 Nacos 默认是将鉴权中心功能关闭的,所以我们得去配置 Nacos ,手动开启鉴权。

 10.配置Nacos鉴权

        修改 application.properties 配置文件:

# vim 编辑 application.properties 配置文件
$ vim /mydata/nacos/conf/application.propertiesnacos.core.auth.system.type=nacos# nacos 鉴权默认为 false,打开鉴权配置:将 false 改为 true
nacos.core.auth.enabled=true# 以下两个配置必须得有默认值
nacos.core.auth.server.identity.key=example
nacos.core.auth.server.identity.value=example# 自定义密钥串 (这里自定义的密钥串字符长度不要低于32位)
nacos.core.auth.plugin.nacos.token.secret.key=123456789123456789123456789

11.重新启动Docker容器

# 重新启动 Docker 容器
$ docker restart nacos

        重新访问 Nacos ,将会默认跳转到以下界面:

        Nacos 默认的用户名和密码都是 nacos 

相关文章:

  • 北京网站建设多少钱?
  • 辽宁网页制作哪家好_网站建设
  • 高端品牌网站建设_汉中网站制作
  • Linux-查看dd命令进度
  • layui自定义defaultToolbar 新增按钮 隐藏列表操作栏浮动部分
  • 山东航空小程序查询
  • C++ 栈( stack )学习
  • Element UI DatePicker选择日期范围区间默认显示前一个月和本月
  • Java字符串中的第一个唯一字符
  • Python机器学习入门:从理论到实践
  • 信号【Linux】
  • SenseVoice 实测,阿里开源语音大模型,识别效果和效率优于 Whisper,居然还能检测掌声、笑声!5分钟带你部署体验
  • JMeter请求导出Excel
  • 排序二叉树(c++)
  • Go基础编程 - 12 -流程控制
  • DPKG(Debian / Ubuntu包管理工具)的深入探索与使用
  • 【人工智能】机器学习 -- 决策树(乳腺肿瘤数)
  • java面试题,有synchronized锁,threadlocal、数据可以设置默认值、把redis中的json转为对象
  • 8年软件测试工程师感悟——写给还在迷茫中的朋友
  • Angular Elements 及其运作原理
  • ComponentOne 2017 V2版本正式发布
  • CSS盒模型深入
  • QQ浏览器x5内核的兼容性问题
  • quasar-framework cnodejs社区
  • 第十八天-企业应用架构模式-基本模式
  • 前端工程化(Gulp、Webpack)-webpack
  • 前言-如何学习区块链
  • 少走弯路,给Java 1~5 年程序员的建议
  • 我的zsh配置, 2019最新方案
  • 详解移动APP与web APP的区别
  • 在 Chrome DevTools 中调试 JavaScript 入门
  • const的用法,特别是用在函数前面与后面的区别
  • ​一、什么是射频识别?二、射频识别系统组成及工作原理三、射频识别系统分类四、RFID与物联网​
  • ​字​节​一​面​
  • # 职场生活之道:善于团结
  • #免费 苹果M系芯片Macbook电脑MacOS使用Bash脚本写入(读写)NTFS硬盘教程
  • #我与Java虚拟机的故事#连载06:收获颇多的经典之作
  • #我与Java虚拟机的故事#连载16:打开Java世界大门的钥匙
  • (152)时序收敛--->(02)时序收敛二
  • (pt可视化)利用torch的make_grid进行张量可视化
  • (pytorch进阶之路)扩散概率模型
  • (超详细)语音信号处理之特征提取
  • (十三)Java springcloud B2B2C o2o多用户商城 springcloud架构 - SSO单点登录之OAuth2.0 根据token获取用户信息(4)...
  • (十一)图像的罗伯特梯度锐化
  • (四)库存超卖案例实战——优化redis分布式锁
  • (转)Java socket中关闭IO流后,发生什么事?(以关闭输出流为例) .
  • (转)VC++中ondraw在什么时候调用的
  • .class文件转换.java_从一个class文件深入理解Java字节码结构
  • .DFS.
  • .mp4格式的视频为何不能通过video标签在chrome浏览器中播放?
  • .net 4.0 A potentially dangerous Request.Form value was detected from the client 的解决方案
  • .NET 8.0 发布到 IIS
  • .net core 6 使用注解自动注入实例,无需构造注入 autowrite4net
  • .net 简单实现MD5
  • .Net下C#针对Excel开发控件汇总(ClosedXML,EPPlus,NPOI)
  • /var/lib/dpkg/lock 锁定问题
  • /使用匿名内部类来复写Handler当中的handlerMessage()方法
  • ??Nginx实现会话保持_Nginx会话保持与Redis的结合_Nginx实现四层负载均衡