Docker标记和推送Ansible中的云提供商

时间:2019-04-03 15:00:27

标签: docker ansible

我正在使用ansible构建docker容器,但是我还需要为GCP(Google Cloud Platform)标记该容器。我可以在命令行上使用

right

但是我看不到如何使用ansible做到这一点。我使用docker_image命令构建容器。

docker tag app:latest gcr.io/my-project-12314514/app:latest

标签项仅覆盖“最新”标签。我可以

---
- hosts: localhost
  connection: local

  tasks:
  - name: Build container
    docker_image:
      name: app
      path: web_app/
      pull: no
      state: build

我已复制所有内容以创建一个“带标签的”容器,这似乎可行,但看起来笨拙。可以做得更优雅吗?

1 个答案:

答案 0 :(得分:0)

文档中的示例建议您如何执行此操作:

https://docs.ansible.com/ansible/latest/modules/docker_image_module.html#examples

tasks:
- name: Build container
  docker_image:
    name: app
    path: web_app/
    pull: no
    state: build
- name: Tag for GCP
  docker_image:
    name: app
    repository: gcr.io/your-project/your-repo
    tag: your-tag
    push: yes

我对Ansible完全不熟悉,但希望这是您所需要的。