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
相关推荐
声声长乐2 小时前
Jenkins + Docker 完整部署指南
ubuntu·docker·jenkins
shughui6 小时前
Docker Desktop下载、安装、配置、使用
运维·docker·容器·自动化
EverydayJoy^v^10 小时前
Kubernetes 知识点(1)——基础依赖
云原生·容器·kubernetes
hopsky10 小时前
Docker Compose 启动的容器内存 监控
docker·容器·eureka
FrameNotWork12 小时前
多设备 Android Logcat 自动采集方案:基于 Docker + Shell 实现日志按天切割与自动清理
android·docker·容器
Haoea!12 小时前
Docker + Harbor 私有镜像仓库搭建
运维·docker·容器
iambooo13 小时前
Docker 架构与核心原理深度解析:容器到底是怎么实现的?
运维·docker·容器
海兰13 小时前
Docker部署OpenClaw及常见问题解决(win11)
docker·容器·eureka
qq_3168377514 小时前
使用 certbot docker镜像生成阿里云域名ssl证书
阿里云·docker·ssl
木雷坞14 小时前
使用Docker Compose部署PostgreSQL:从入门到实践
docker·postgresql·容器