【问题标题】:Ansible docker_container command failing with no outputAnsible docker_container 命令失败且没有输出
【发布时间】:2018-07-21 01:09:44
【问题描述】:

我在这里遇到了 ansible docker_container 命令的问题。

- name: Start Docker
  docker_container:
    name: postgres
    image: "centos/postgresql-94-centos7"
    state: started
    recreate: yes
    pull: yes
    env:
      POSTGRESQL_USER: "test"
      POSTGRESQL_PASSWORD: "test"
      POSTGRESQL_DATABASE: "test"
      POSTGRESQL_MAX_CONNECTIONS: 100
      POSTGRESQL_SHARED_BUFFERS: 32M
    exposed_ports:
      - 5432
    ports:
      - 5432:5432
  become: yes
  become_method: sudo

当此命令运行时,它会启动容器,但容器会立即退出,并显示一些我看不到的输出,因为 ansible 出于某种原因没有打印出 sys。

以下是容器拒绝启动(由于配置不正确)时打印的一些输出示例:

$ sudo docker run --name postgres -e POSTGRESQL_USER="test" -p 5432:5432 centos/postgresql-94-centos7
You must either specify the following environment variables:
  POSTGRESQL_USER (regex: '^[a-zA-Z_][a-zA-Z0-9_]*$')
  POSTGRESQL_PASSWORD (regex: '^[a-zA-Z0-9_~!@#$%^&*()-=<>,.?;:|]+$')
  POSTGRESQL_DATABASE (regex: '^[a-zA-Z_][a-zA-Z0-9_]*$')
Or the following environment variable:
  POSTGRESQL_ADMIN_PASSWORD (regex: '^[a-zA-Z0-9_~!@#$%^&*()-=<>,.?;:|]+$')
Or both.
Optional settings:
  POSTGRESQL_MAX_CONNECTIONS (default: 100)
  POSTGRESQL_MAX_PREPARED_TRANSACTIONS (default: 0)
  POSTGRESQL_SHARED_BUFFERS (default: 32MB)

For more information see /usr/share/container-scripts/postgresql/README.md
within the container or visit https://github.com/openshift/postgresql.

这是我从 ansible 运行它时看不到的输出,它只是说它启动(成功)然后我检查 docker ps 并且它没有启动,因为大概它立即退出了。更奇怪的是,我可以使用传递给 ansible 命令模块的相同配置使其正常工作,但是使用 docker_container 可能它没有正确传递 env?我真的不确定,因为我什至无法得到错误输出。

【问题讨论】:

    标签: docker ansible


    【解决方案1】:

    检查

    docker ps -a
    

    查看 ansible 是否设法至少创建了容器。如果是,请检查

    docker logs postgres
    

    希望这能给你一个失败的线索。如果您对此感到困惑,也许您可​​以发布一些(已编辑的)日志以显示它失败的地方?

    【讨论】:

      【解决方案2】:

      您可以使用registered.ansible_facts.docker_container.Output 执行此操作,其中registered 是您用来注册docker_container 游戏的事实。

      更多信息在这里:https://wordpress.com/post/carlosonunez.wordpress.com/1440

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2021-09-26
        • 2022-10-25
        • 2019-07-31
        • 2020-03-28
        • 2019-05-21
        • 1970-01-01
        • 2013-08-05
        • 1970-01-01
        相关资源
        最近更新 更多