1.獲取etcd-manager的代碼
git clone https://github.com/shiguanghuxian/etcd-manage
2.安裝docker和 docker-compose
curl -fsSL https://get.docker.com | bash -s docker --mirror Aliyun
# docker-compose 1.27 報錯 segment錯誤,換低版本即可
curl -L "https://github.com/docker/compose/releases/download/1.25.0/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
3.修改docker-compose.yml 配置
因為我們只需要管理后台,不需要etcd的安裝,需要把安裝etcd部分注釋掉
# more docker-compose.yml
version: '3' services: #etcd: # image: "quay.io/coreos/etcd:v3.3" # container_name: "etcdv3.3" # environment: # ETCD_ADVERTISE_CLIENT_URLS: "http://0.0.0.0:2379" # ETCD_LISTEN_CLIENT_URLS: "http://0.0.0.0:2379" # ETCDCTL_API: "3" # volumes: # - ./default.etcd:/default.etcd # ports: # - 2379:2379 # - 2380:2380 # - 4001:4001 etcd-manage: # build: . image: "shiguanghuxian/etcd-manage:1" volumes: - ./bin/config/cfg.toml:/app/config/cfg.toml - ./bin/logs:/app/logs ports: - "10280:10280" #depends_on: # - etcd
4.修改鏈接etcd信息
# more bin/config/cfg.toml
# debug模式 debug = false # 日志文件路徑 log_path = "" # http 監聽端口 [http] # 監聽地址 address = "0.0.0.0" # 監聽端口 port = 10280 # 使用 Let's Encrypt 證書 - tls_enable為true優先使用本地證書模式 tls_encrypt_enable = false # 域名列表 tls_encrypt_domain_names = ["shiguanghuxian.com"] # 是否啟用tls tls_enable = false # tls證書文件 [http.tls_config] cert_file = "cert_file" key_file = "key_file" ## 一下每一個server為一個etcd服務 ## [[server]] # 顯示名稱 title = "pixso_etcd" # 標識名 - 只能是字母數字或下划線 name = "pixso_etcd" # etcd連接地址 如果為集群請填寫全部地址 #address = ["etcd0:2379","etcd1:2379","etcd2:2379"] address = ["etcd-1:2379","etcd-2:2379","etcd-3:2379"] # 查看的key前綴 key_prefix = "/" # 簡述信息 #desc = "docker方式etcd集群方式" desc = "pixso_etcd" username="root" password="pixsoetcd6IfFedsoXY8HGYL" # 可訪問服務器角色列表 - 不寫則為所有用戶可訪問 roles = ["admin"] # 是否啟用tls連接 tls_enable = false # tls證書配置 [server.tls_config] cert_file = "/etc/etcd/etcdSSL/etcd.pem" key_file = "/etc/etcd/etcdSSL/etcd-key.pem" ca_file = "/etc/etcd/etcdSSL/etcd-root-ca.pem" #[[server]] #title = "make docker_run" #name = "docker_run" #address = ["etcd:2379"] #key_prefix = "/" #desc = "docker方式etcd非集群方式" #roles = ["admin","dev"] #[[server]] #title = "本地etcd" #name = "local" #address = ["127.0.0.1:2379"] #key_prefix = "/" #desc = "本機環境" #roles = ["admin","dev"] ## 以下為用戶列表 ## [[user]] username = "admin" password = "123456" role = "admin" [[user]] username = "dev_user" password = "devuser@2021" role = "dev"
當etcd本身加了驗證以后就沒法管理了