Docker 部署 Nacos v2.3.2 版本

逢生博客 2024-07-31 10:07:07 阅读 77

文章目录

Github官网文档Nacos 生态图Nacos Dockerdocker-compose.ymlapplication.propertiesNacos 官方示例

Github

https://github.com/alibaba/nacos

官网

https://nacos.io/

文档

https://nacos.io/docs/latest/what-is-nacos/

Nacos 生态图

在这里插入图片描述

Nacos Docker

镜像:https://hub.docker.com/r/nacos/nacos-server

<code># 最新版镜像

docker pull nacos/nacos-server

docker pull nacos/nacos-server:v2.3.2

注: 国内网络原因无法下载镜像,nacos-server 镜像文件下载链接 https://pan.baidu.com/s/1O35cPbx6AHWUJL1v5-REzA?pwd=yjsv 提取码: yjsv

导入 nacos-server 镜像

docker load -i nacos-server-v2.3.2.tar

创建缩主机目录

mkdir nacos && cd nacos

mkdir data logs

docker run --name nacos \

-e MODE=standalone \

-p 8848:8848 \

-d nacos/nacos-server:v2.3.2

复制容器内 conf 目录到缩主机

cd docker/nacos/

docker cp nacos:/home/nacos/conf ./

docker-compose.yml

services:

nacos:

image: nacos/nacos-server:v2.3.2

container_name: nacos

restart: always

ports:

- "8848:8848"

- "9848:9848"

environment:

MODE: standalone

# 开启鉴权功能

NACOS_AUTH_ENABLE: true

# 设置Token的密钥,需大于32位字符串并转义成Base64编码

NACOS_AUTH_TOKEN: "YWtkODkzNzY0ODk1Mzg3NDk4amtkaWV3a3Bsb2lkdWU="

# 登录账号

NACOS_AUTH_IDENTITY_KEY: "nacos"code>

# 登录密码

NACOS_AUTH_IDENTITY_VALUE: "nacos"

volumes:

- /etc/localtime:/etc/localtime

- ./nacos/conf:/home/nacos/conf

- ./nacos/data:/home/nacos/data

- ./nacos/logs:/home/nacos/logs

docker-compose up -d nacos

在这里插入图片描述

http://192.168.2.125:8848/nacos/

注意: 访问缩主机IP地址,而非 127.0.0.1 地址。以上示例并未配置 MySQL 数据库,配置数据保存在 data/config-data 目录下。

在这里插入图片描述

注意: 开启鉴权功能后就需要验证登录账号与密码(nacos/nacos)。

application.properties

conf/application.properties 配置连接 MySQL 数据库

<code>db.num=1

### Connect URL of DB:

db.url.0=jdbc:mysql://mysql:3306/nacos_devtest?characterEncoding=utf8&connectTimeout=1000&socketTimeout=3000&autoReconnect=true&useUnicode=true&useSSL=false&serverTimezone=UTC&useSSL=false&allowPublicKeyRetrieval=true

db.user.0=nacos

db.password.0=nacos

### Connection pool configuration: hikariCP

db.pool.config.connectionTimeout=30000

db.pool.config.validationTimeout=10000

db.pool.config.maximumPoolSize=20

db.pool.config.minimumIdle=2

Nacos 官方示例

# Clone 项目

git clone https://github.com/nacos-group/nacos-docker.git

cd nacos-docker

在这里插入图片描述

单机模式

<code># 单机模式 Derby

docker-compose -f example/standalone-derby.yaml up

# 使用 MySQL5.7

docker-compose -f example/standalone-mysql-5.7.yaml up

# 使用 MySQL8

docker-compose -f example/standalone-mysql-8.yaml up

功能测试

# 服务注册

curl -X POST 'http://127.0.0.1:8848/nacos/v1/ns/instance?serviceName=nacos.naming.serviceName&ip=20.18.7.10&port=8080'

# 服务发现

curl -X GET 'http://127.0.0.1:8848/nacos/v1/ns/instance/list?serviceName=nacos.naming.serviceName'

# 发布配置

curl -X POST "http://127.0.0.1:8848/nacos/v1/cs/configs?dataId=nacos.cfg.dataId&group=test&content=helloWorld"

# 获取配置

curl -X GET "http://127.0.0.1:8848/nacos/v1/cs/configs?dataId=nacos.cfg.dataId&group=test"



声明

本文内容仅代表作者观点,或转载于其他网站,本站不以此文作为商业用途
如有涉及侵权,请联系本站进行删除
转载本站原创文章,请注明来源及作者。