如果我正在启动 docker-compose 的 docker(在我的情况下是 portainer),我该如何配置默认的管理员用户:密码与 docker?

aco*_*sdi 4 docker dockerfile docker-compose portainer

我正在尝试创建一个 docker-compose,它设置了一个巨大的 docker 环境,以 portainer 作为经理。

问题是用户第一次使用“docker-compose up”并且 portainer 开始运行时,他必须导航到 portainer web 界面(localhost:9000)并设置管理员用户和密码。

如何自动执行此步骤并使用我定义的默认用户创建 portainer,以便当用户第一次导航到 portainer 时,已经创建了 admin 用户。

这是我的 docker-compose.yml

version: '3.3'

services:

  portainer:
    image: portainer/portainer
    volumes:
      - /var/run/docker.sock:/var/run/docker.sock
      - ./portainer/portainer_data:/data
    ports:
      - "9000:9000"
Run Code Online (Sandbox Code Playgroud)

Roh*_*ite 6

Portainer 允许您从命令行为管理员帐户指定加密密码。您需要为密码生成哈希值。

例如,这是密码的哈希值 - $$2y$$05$$arC5e4UbRPxfR68jaFnAAe1aL7C1U03pqfyQh49/9lB9lqFxLfBqS

在您的 docker-compose 文件中进行以下修改

version: '3.3'
 services:
   portainer:
    image: portainer/portainer
    volumes:
     - /var/run/docker.sock:/var/run/docker.sock
     - ./portainer/portainer_data:/data
    command: --admin-password "$$2y$$05$$arC5e4UbRPxfR68jaFnAAe1aL7C1U03pqfyQh49/9lB9lqFxLfBqS"
    ports:
     - "9000:9000"
Run Code Online (Sandbox Code Playgroud)

--admin-password此标志用于指定 Portainer 中的加密密码。

更多信息可以在文档中找到 - Portainer

希望这会帮助你。