首页 > 其他分享 >docker-运行nacos服务

docker-运行nacos服务

时间:2024-04-06 23:33:58浏览次数:20  
标签:服务 启动 端口 nacos docker properties 运行

环境说明

linux系统版本:lsb_release -a

 

 

docker 版本: docker -v

 

 

不同的操作系统以及软件版本,可能会遇到不一样的问题,一定要注意版本问题。

 

最好是确认自己的服务器已经设置阿里云的镜像加速,或者使用腾讯的,网易的都是可以的。

自己选,设置之后下载镜像的速度回快很多。

sudo mkdir -p /etc/docker

sudo tee /etc/docker/daemon.json <<-'EOF'

{

  "registry-mirrors": ["https://registry-vpc.cn-hangzhou.aliyuncs.com"]

}

EOF

 

 

.1.拉取nacos 的docker镜像文件。

自己本地使用的nacos版本为1.4.2

 

 

服务器上同样使用一样的版本。先创建文件夹。

 

 

不写版本号则默认拉取最新版本

docker pull nacos/nacos-server:1.4.2

 

下载的时候稍微有些慢

 

 

 

.2.准备配置文件。

从本地的nacos中复制一份配置文件,然后在服务器上创建一个配置文件即可。

 

 

然后修改一些关键配置即可,改为自己服务器上对应的配置即可。

 

 

.3.连接mysql远程服务器,导入nacos对应的表数据。

创建数据库。

 

 

导入nacos对应的mysql表和数据信息。

 

 

 

.4.启动nacos容器服务。

docker run --name=nacos -e MODE=standalone -p 7213:8848 -v /opt/u01/exam/nacos/application.properties:/home/nacos/conf/application.properties -v /opt/u01/exam/nacos/logs:/home/nacos/logs -d 938169b118c7

参数解释:

docker run 表示启动容器服务

--name=nacos 表示给容器服务起一个名字

-e MODE=standalone 表示nacos的启动方式为独立启动

-p 7213:8848 表示将宿主机上的端口7213映射到容器中nacos上的端口

-v /opt/u01/exam/nacos/application.properties:/home/nacos/conf/application.properties 表示挂载nacos的配置文件路径

-v /opt/u01/exam/nacos/logs:/home/nacos/logs 表示挂载nacos的日志路径

-d 表示以守护进程地模式启动docker

938169b118c7 表示nacos的镜像ID

 

 

nacos服务启动后,感觉服务器的内存都要爆了,哈哈。

 

.5.页面访问测试。

 

 

添加跟路径,仍然无法访问

 

 

.5.问题排查。

使用telnet 命令 测试端口是否已经打开,发现没有打开。

 

 

查看服务器上已经打开端口

 

 

自己尝试着设置使用nginx来转发访问nacos服务,这样就可以不用开多个端口。

 

 

 

结果发现还是异常,

 

 

查看ngxin日志,还报了一个奇怪的错误如下,

recv() failed (104: Connection reset by peer) while reading response header from upstream,

 

查看服务器日志,发现nacos服务已经正常启动,启动的是一个http服务。

 

 

看到这里时发现问题,自己使用docker命令启动的端口是7213映射到8848,而nacos启动的是7213端口,

是在nacos配置文件中设置的因此出现错误。需要将nacos容器的端口设置为8848才行。

 

 

重新启动nacos容器服务,发现服务能够正常运行。

 

 

默认用户名和密码都是nacos,登录之后记得修改密码。

 

 

.6.配置nacos。

首先需要创建nacos的命名空间。

 

 

命名空间的名称和本地配置的命名空间名称需要一致。

 

 

下面的本地bootstrap.properties的配置。

 

 

其次导入本地的配置。

 

 

示例如下

 

 

最后修改配置文件中的各种连接配置即可,比如mysql配置,redis配置等等。

 

 

到此,使用docker运行nacos服务的操作全部完成。

 

遇到的问题:

使用docker启动nacos后,占用的服务内存非常大,只启动一个nacos服务占用的内存如下,

 

 

停止nacos后,占用的内存如下,因此可以推算出nacos服务占用的内存大致为600M左右。

 

 

因此在启动服务的时候,可以设置启动nacos服务的内存大小。

docker run --name=nacos -e JVM_XMS=256m -e JVM_XMX=256m -e MODE=standalone -p 7213:8848 -v /opt/u01/exam/nacos/application.properties:/home/nacos/conf/application.properties -v /opt/u01/exam/nacos/logs:/home/nacos/logs   -d 938169b118c7

-e JVM_XMS=256m 表示jvm启动时分配的内存;-e JVM_XMX=256m 表示jvm运行过程中分配的最大内存

参考博文

https://www.cnblogs.com/niunafei/p/12803965.html

https://1password.com/zh-cn/password-generator/

https://blog.csdn.net/heyu996/article/details/132366586

标签:服务,启动,端口,nacos,docker,properties,运行
From: https://www.cnblogs.com/yilangcode/p/18118192

相关文章

  • Docker常用指令
    Docker镜像常用命令搜索镜像dockersearchjava下载镜像dockerpulljava:8查看镜像版本dockersearch由于dockersearch命令只能查找出是否有该镜像,不能找到该镜像支持的版本,需要通过DockerHub来搜索支持的版本。进入DockerHub的官网,地址:https://hub.dock......
  • Docker学习笔记(三)Dockerfile指令详解
    文章目录FROM指定基础镜像RUN执行命令COPY复制文件ADD高级文件复制CMD容器启动命令ENTRYPOINT入口点ENV设置环境变量ARG构建参数VOLUME定义匿名卷EXPOSE声明端口WORKDIR指定工作目录USER指定当前用户HEALTHCHECK健康检查ONBUILD构建触发器LABEL添加元数据......
  • libharu运行报错ERROR: error_no=102B, detail_no=0解决方法
    问题描述        在尝试使用libharu库生成PDF时运行报错ERROR:error_no=102B,detail_no=0字体代码HPDF_UseCNSFonts(pdf);font_name=HPDF_LoadTTFontFromFile(pdf,"simsun.ttf",HPDF_TRUE);font=HPDF_GetFont(pdf,font_name,"UTF-8");错误......
  • linux后台运行及任务挂后台-linux亲测有效操作001
    由于命令行耗时太久,突然想把进程挂后台走人怎么办?01前台转到后台1.输入ctrl+z将该前台任务挂起^Z[1]+StoppedXXXXXXXX2.运行jobs命令,查看任务号(可以看到run.sh对应的任务号是1)jobs-l#-l显示pid......
  • [转帖]docker输入多行命令
    docker相关学习资料下载地址: docker相关资料合集Docker输入多行命令在使用Docker进行容器管理时,我们经常需要在容器内部执行多行命令。本文将介绍Docker中输入多行命令的几种方式,并提供相应的代码示例。1.使用Shell的行连字符在Docker中,我们可以使用Shell的行连字......
  • 【包远程安装运行】SpringBoot+Mysql实现的在线兼职实习招聘管理系统源码+运行教程+开
    今天发布的是由【猿来入此】的优秀学员独立做的一个基于springboot脚手架的在线招聘系统,主要实现了在线招聘基本操作流程的全部功能,系统分普通用户、管理员等角色,除基础脚手架外,实现的功能有:管理员:系统管理、职位管理、新闻咨询管理、简历投递管理、在线统计等。普通用户(......
  • 【包远程安装运行】:SpringBoot+Mysql健身房在线预约管理系统源码+运行视频+开发文档(参
    今天发布的是由【猿来入此】的优秀学员独立做的一个基于springboot脚手架的健身房在线预约管理系统,系统分四个角色,管理员,职工、教练、前台用户,各角色功能如下:管理员:系统管理(角色、权限、菜单等)、职工管理、健身会员管理、会员充值管理、健身项目管理、健身百科管理、健身......
  • Docker学习笔记(二):在Linux中部署Docker(Centos7下安装docker、环境配置,以及镜像简单使用
    一、前言记录时间[2024-4-6]前置文章:Docker学习笔记(一):入门篇,Docker概述、基本组成等,对Docker有一个初步的认识在上文中,笔者进行了Docker概述,介绍其历史、优势、作用,以及基本组成。通过此,相信大家对Docker有了一个初步的认识。接下来就进入Docker的安装、环境配置,和简......
  • 在Linux服务器上运行springBoot项目!
    今天闲的无聊,写了一个定时发送邮件到指定邮箱的一个小项目,因为写的很粗糙,这里就不展示代码了,主要记录一下用到的技术:1.JavaMail2.Spring-Task3.在Linux上运行一、JavaMail:JavaMail是sun公司(现以被甲骨文收购)为方便Java开发人员在应用程序中实现邮件发送和接收功能而提......
  • 当我们运行ur机械臂的包的时候我们想要在机械臂的末端加上六维力传感器,但是我们使用ro
    1、前言最近一个月在入门机械臂的控制,由于机械臂大部分都是用的是moveit,但是moveit都是集成好的,我为了实现自己的算法不打算使用moveit,因此我决定参考一个csdn的博主来进行复现,这篇文件是为了记录复现出现的问题。博主:孟德尔的猫链接:2如何给Gazebo中的仿真机械臂添加一个力......