Docker创建Consul并添加权限控制

一、部署Consul

1、拉取镜像:

bash 复制代码
docker pull consul:<consul-version>

2、运行

bash 复制代码
docker run --name consul1 -p 8300:8300/tcp -p 8301:8301/tcp -p 8301:8301/udp -p 8302:8302/tcp -p 8302:8302/udp -p 8500:8500 -p 8600:8600/tcp -p 8600:8600/udp -v /home/docker/consul/config:/consul/config -itd consul:<consul-version> agent -dev -client 0.0.0.0

3、创建配置文件

创建文件夹

bash 复制代码
mkdir /home/docker/consul/config -p

创建文件

bash 复制代码
cd /home/docker/consul/config

创建config.json

bash 复制代码
vim config.json

填写如下内容:

python 复制代码
{
  "datacenter": "dc1",
  "acl": {
    "enabled": true,
    "default_policy": "deny",
    "enable_token_persistence": true,
    "tokens": {
      "master": "master-token",
      "agent": "agent-token"
    }
  },
  "server": true,
  "bootstrap_expect": 1,
  "ui": true
}

4、创建ACL Token

http://<ip>:<port>进入图形界面

进入ACL页面

创建一个Token,并进入Token详细,点击Use按钮应用这个Token

5、Spring Consul中设置Token

进入对应工程的yml配置文件,在Consul配置中添加如下配置:

Groovy 复制代码
spring:
  cloud:
    consul:
      host: ${CONSUL_SERVER_HOST:192.168.193.199}
      port: ${CONSUL_SERVER_PORT:8500}
      acl-token: 00000000-0000-0000-0000-000000000000(你的Token)

二、设置Spring Consul

1、添加Actuator依赖

XML 复制代码
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-actuator</artifactId>
        </dependency>

2、添加Actuator配置

Groovy 复制代码
spring:
  cloud:
    consul:
      host: ${CONSUL_SERVER_HOST:192.168.193.199}
      port: ${CONSUL_SERVER_PORT:8500}
      acl-token: 00000000-0000-0000-0000-000000000000(你的Token)
      discovery:
        service-name: ${spring.application.name}
        health-check-url: http://${CONSUL_HEALTH_HOST:127.0.0.1}:${UI_CONFIGURATION_SERVICE_PORT:8060}/actuator/health
相关推荐
IT瑞先生15 分钟前
Docker快速部署Mysql的三种方法——实操篇
mysql·adb·docker
梦远青城1 小时前
Docker 部署python的paddle进行OCR文字识别身份证
python·docker·ocr·paddle·身份证识别
CodexDave2 小时前
数据库连接池耗尽:排查顺序与三层兜底
服务器·前端·数据库·git·云原生·容器·kubernetes
java_logo2 小时前
ELK Docker Compose 部署指南:轻松搭建日志检索平台
elk·elasticsearch·docker·容器·kibana·logstash·轩辕镜像
ShallWeL2 小时前
Orin 上用 Docker 跑通目标检测功能
人工智能·目标检测·docker·容器
看-是灰机4 小时前
使用go语言实现对接
linux·开发语言·后端·docker·语言模型·golang·飞书
Zhu7584 小时前
在k8s部署alist 3.62.0
云原生·容器·kubernetes
关关长语19 小时前
Wsl解决MySQL容器跨域权限问题
mysql·docker·容器
IT小辉同学21 小时前
# Milvus v3.0-beta docker-compose 启动失败完整排错教程
docker·eureka·milvus
运维大师1 天前
【K8S 运维实战】04-存储体系梳理CSI
运维·容器·kubernetes