Nacos Docker 快速开始
这个快速开始手册是帮忙您快速在通过Nacos的Docker镜像,在Docker容器中部署并使用 Nacos。
1. 环境准备
使用此快速开始方法进行Nacos安装及部署,需要安装Docker。
2. 启动Nacos
首次执行命令时,会自动下载所需的相关Docker镜像,需要等待的时长取决于网络速度。您也可以提前下载好相关镜像,以缩短执行部署命令的等待时间。
在 Bash 中准备以下环境变量:NACOS_VERSION 填写实际可用的目标镜像标签;NACOS_AUTH_TOKEN 为有效 Base64 且解码后不少于 32 字节的独立密钥;NACOS_AUTH_IDENTITY_KEY 和 NACOS_AUTH_IDENTITY_VALUE 为非空节点身份。验证 3.3 RC 时使用对应镜像标签,不能假定 latest 已指向 RC。
docker run --name nacos-standalone-derby \ -e MODE=standalone \ -e NACOS_AUTH_ENABLE=true \ -e NACOS_AUTH_TOKEN="${NACOS_AUTH_TOKEN}" \ -e NACOS_AUTH_IDENTITY_KEY="${NACOS_AUTH_IDENTITY_KEY}" \ -e NACOS_AUTH_IDENTITY_VALUE="${NACOS_AUTH_IDENTITY_VALUE}" \ -p 8080:8080 \ -p 8848:8848 \ -p 9848:9848 \ -d "nacos/nacos-server:${NACOS_VERSION}"3. 验证Nacos服务是否启动成功
通过docker logs -f $container_id命令,查看Nacos服务启动日志,如果看到如下日志,说明服务启动成功。
Nacos started successfully in xxxx mode. use xxxx storage可以通过下列服务,快速检验Nacos的功能。
3.1. Nacos控制台页面
打开任意浏览器,输入地址:http://127.0.0.1:8080, 即可进入Nacos控制台页面。
注意:首次打开会要求初始化管理员用户
nacos的密码。
3.1.1. 获取访问 token
以下命令使用 Bash(Windows 可使用 Git Bash 或 WSL)。将密码替换为刚初始化的管理员密码,登录后将响应中的 accessToken 复制到 NACOS_ACCESS_TOKEN:
export NACOS_USERNAME='nacos'export NACOS_PASSWORD='<your-initialized-password>'curl -sS -X POST 'http://127.0.0.1:8848/nacos/v3/auth/user/login' \ --data-urlencode "username=${NACOS_USERNAME}" \ --data-urlencode "password=${NACOS_PASSWORD}"
export NACOS_ACCESS_TOKEN='<accessToken-from-login-response>'下面的 Client API 和 Admin API 都需要该 token。token 过期后重新登录获取;应用接入时请使用具有所需权限的业务账号,参见配置访问凭据。
3.2. 服务注册
curl -X POST 'http://127.0.0.1:8848/nacos/v3/client/ns/instance?serviceName=quickstart.test.service&ip=127.0.0.1&port=8080' \ -H "accessToken: ${NACOS_ACCESS_TOKEN}"3.3. 服务发现
curl -X GET 'http://127.0.0.1:8848/nacos/v3/client/ns/instance/list?serviceName=quickstart.test.service' \ -H "accessToken: ${NACOS_ACCESS_TOKEN}"3.4. 发布配置
curl -X POST 'http://127.0.0.1:8848/nacos/v3/admin/cs/config?dataId=quickstart.test.config&groupName=test&content=HelloWorld' \ -H "accessToken: ${NACOS_ACCESS_TOKEN}"3.5. 获取配置
curl -X GET 'http://127.0.0.1:8848/nacos/v3/client/cs/config?dataId=quickstart.test.config&groupName=test' \ -H "accessToken: ${NACOS_ACCESS_TOKEN}"若返回鉴权失败,先检查用户名、密码、token 有效期及账号权限。仅在已有无凭据客户端的临时迁移场景中考虑显式关闭 Client 鉴权,处理方式见升级手册。
4. 更多Nacos docker使用用例
Nacos 社区提供了一系列的docker compose文件,您可以参考这些文件进行更多场景的Nacos部署。
使用此快速开始方法进行Nacos安装及部署Docker Compose。
4.1. 下载 nacos-docker 项目
git clone https://github.com/nacos-group/nacos-docker.gitcd nacos-docker4.2 使用docker-compose命令,启动Nacos服务
首次执行命令时,会自动下载所需的相关Docker镜像,需要等待的时长取决于网络速度。您也可以提前下载好相关镜像,以缩短执行部署命令的等待时间。
docker-compose -f example/standalone-derby.yaml up或
cd example./mysql-init.sh && docker-compose -f standalone-mysql.yaml up其他example目录下的文件,可参考Nacos Docker
Nacos + Grafana + Prometheus
参考:Nacos监控指南
Note: grafana创建一个新数据源时,数据源地址必须是 http://prometheus:9090