docker安装nacos

一、docker简单安装nacos、使用默认的Derby数据库

 1、老规则咱们登录docker 官网搜索nacos再到镜像执行拉取。我这里使用默认命令

docker pull nacos/nacos-server

 2、创建本地的映射文件,custom.properties,

mkdir -p /root/nacos/init.d /root/nacos/logs
touch /root/nacos/init.d/custom.properties

     在文件中写入以下配置

management.endpoints.web.exposure.include=*

    3、创建容器并启动提供a、b两种方案

   a、创建容器:使用standalone模式并开放8848端口,并映射配置文件和日志目录,数据库默认使用 Derby

docker run -d -p 8848:8848 -e MODE=standalone -e PREFER_HOST_MODE=hostname -v /root/nacos/init.d/custom.properties:/home/nacos/init.d/custom.properties -v /root/nacos/logs:/home/nacos/logs --restart always --name nacos nacos/nacos-server

  

          启动容器,命令中:68a1f5afd98是容器id

docker start 68a1f5afd98
或者
docker start nacos

    b、使用docker-compose启动 docker-compose安装教程

         首先配置docker-compose文件 standalone-derby.yaml 

version: "2"
services:
  nacos:
    image: nacos/nacos-server:latest
    container_name: nacos
    environment:
    - MODE=standalone
    volumes:
    - /root/nacos/logs:/home/nacos/logs
    -  /root/nacos/init.d/custom.properties:/home/nacos/init.d/custom.properties
    ports:
    - "8848:8848"

         启动、关闭、移除、关闭并移除命令如下:

#启动
docker-compose -f standalone-derby.yaml up
#关闭
docker-compose -f standalone-derby.yaml stop
#移除
docker-compose -f standalone-derby.yaml rm
#关闭并移除
docker-compose -f standalone-derby.yaml down

  4、访问http://localhost:8848/nacos/ 账号默认nacos、密码默认nacos

二、docker安装nacos(单机)、使用默认的mysql数据库(兼容5.8版本以下、mysql8兼容看文末方案)

   1、首先拉取官方镜像。跟第一种方案1一样操作

   2、配置本地映射文件。第一种方案2一样操作

 然后是准备工作:

  3、创建数据库 nacos_config

  4、nacos初始化sql,需要先创建nacos数据库后,然后执行下面的Sql【nacos官网Sql

 View Code

准备完毕、继续创建docker容器 

两个注意:

    a、单机standalone模式默认服务器堆大小512M、注意服务器内存不足,启动后内存溢出问题。

     b、单机模式中-e 添加的参数不同与集群模式,集群模式见文章结尾。

         单机模式中/home/nacos/conf/application.properties 配置文件如下:

 View Code

  5、创建容器,这里的指定参数根据/home/nacos/conf/application.properties 配置设置的,主要是mysql配置的修改

docker run -d -p 8848:8848  \
-e MODE=standalone \
-e PREFER_HOST_MODE=hostname \
-e SPRING_DATASOURCE_PLATFORM=mysql \
-e MYSQL_SERVICE_HOST=127.0.0.1 \
-e MYSQL_SERVICE_PORT=3306 \
-e MYSQL_SERVICE_DB_NAME=nacos_config \
-e MYSQL_SERVICE_USER=root \
-e MYSQL_SERVICE_PASSWORD=root \
-e MYSQL_DATABASE_NUM=1 \
-v /root/nacos/init.d/custom.properties:/home/nacos/init.d/custom.properties \
-v /root/nacos/logs:/home/nacos/logs \
--restart always --name nacos nacos/nacos-server

  6、启动容器

docker start nacos

 docker-compose启动只需要在 standalone-derby.yaml 配置文件的environment 属性中添加mysql的一些配置即可

   7、访问http://localhost:8848/nacos/ 账号默认nacos、密码默认nacos

集群配置详情见Nacos集群配置参数官方文档 

 

 如果有异常有两种可能

1、mysql用户权限不足 mysql-管理命令【创建用户、授权、修改密码、删除用户和授权、忘记root密码】

2、mysql数据库连接异常,防火墙问题。docker 容器防火墙设置 

3、数据库版本不兼容:Nacos 数据持久化 mysql8.0

配置文件可供参考application.properties如下:容器内路径/home/nacos/conf

 View Code

Nacos高可用集群解决方案-Docker版本

服务器nacos-docker集群部署 - 简书

Nacos构建集群非docker版本

1、安装3个和3个以上的Nacos

  复制nacos项目文件夹,分别命名nacos1、nacos2、naocs3

2、修改配置文件

  同⼀台机器模拟,将上述三个⽂件夹中application.properties中的server.port分别改为8848、8849、8850

  同时给当前实例节点绑定ip,因为服务器可能绑定多个ip(本地ip,内网ip等)

nacos.inetutils.ip-address=127.0.0.1

  复制⼀份conf/cluster.conf.example⽂件,命名为cluster.conf在配置⽂件中设置集群中每⼀个节点的信息

# 集群节点配置
127.0.0.1:8848
127.0.0.1:8849
127.0.0.1:8850

3、分别启动nacos,-m参数指定为集群模式

sh startup.sh -m cluster

4、启动完成到nacos 管理台中集群管理菜单进行查看

5、项目注册到Nacos集群,逗号拼接服务地址即可

spring:
  cloud:
    nacos:
      discovery:
        server-addr: 127.0.0.1:8848,127.0.0.1:8849,127.0.0.1:8850
  • 14
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值