honomoa.docker_deployment

Ansible 角色:docker_deployment

部署您的 Docker 镜像。

https://www.docker.com/

角色变量

registry_type: aws-ecr

注册类型。

可能的值:

  • aws-ecr
  • 自托管(如 nexus docker 注册表或 Docker 官方注册表)
  • archive-tar(docker save tar 文件)
  • dockerhub(自托管),如果镜像是官方支持的,可以将 registry_url 设置为 registry.hub.docker.com,并将 team 设置为 library
registry_region: us-west-1

AWS ECR 的区域,仅在 registry_type=aws-ecr 时需要。

aws_access_key_id: "{{ lookup('env', 'AWS_ACCESS_KEY_ID') }}"

AWS IAM 的访问密钥 ID,请设置环境变量 AWS_ACCESS_KEY_ID,仅在 registry_type=aws-ecr 时需要。

aws_secret_access_key: "{{ lookup('env', 'AWS_SECRET_ACCESS_KEY') }}"

AWS IAM 的密钥访问密钥,请设置环境变量 AWS_SECRET_ACCESS_KEY,仅在 registry_type=aws-ecr 时需要。

registry_username: "{{ lookup('env', 'REGISTRY_USERNAME') }}"

注册表的用户名,请设置环境变量 REGISTRY_USERNAME,仅在 registry_type=self-hosted 时需要。

registry_password: "{{ lookup('env', 'REGISTRY_PASSWORD') }}"

注册表的密码,请设置环境变量 REGISTRY_PASSWORD,仅在 registry_type=self-hosted 时需要。

archive_username: "{{ lookup('env', 'ARCHIVE_USERNAME') }}"

归档 URL 的用户名,请设置环境变量 ARCHIVE_USERNAME,仅在 registry_type=archive-tar 时需要。

archive_password: "{{ lookup('env', 'ARCHIVE_PASSWORD') }}"

归档 URL 的密码,请设置环境变量 ARCHIVE_PASSWORD,仅在 registry_type=archive-tar 时需要。

archive_url: "{{ lookip('env', 'ARCHIVE_URL') }}"

归档服务器的 URL,不包括归档 tar.gz 文件名,请设置环境变量 ARCHIVE_URL,仅在 registry_type=archive-tar 时需要。

registry_scheme: https

注册表的协议类型。

可能的值:

  • https(默认)
  • http
registry_url: dockerhub.com

Docker 注册表 URL。

image_team: moa

镜像所属团队的名称。

image_project: caddy

镜像的项目名称。

image_tag: latest

要部署的镜像标签。

container_name: caddy-server-1

容器的名称。

container_ports: []

要暴露的端口。

container_restart_policy: always

容器的重启策略。

container_environment: {}

容器的环境,键值对的字典。

container_env_file: ''

目标上的文件路径,该文件包含环境变量 FOO=BAR。

container_volumes: []

容器的挂载卷。

container_extra_hosts:

添加主机名映射。使用与 Docker 客户端 --add-host 参数相同的值。

container_command: ''

要运行的命令。

查看: (https://docs.docker.com/compose/compose-file/#command)[https://docs.docker.com/compose/compose-file/#command]

container_privileged: no

为此容器提供扩展权限。

container_dns_servers: []

自定义 DNS 服务器的列表。

container_dns_search_domains: []

自定义 DNS 搜索域的列表。

container_network_mode: ''

将容器连接到网络。可选值为 "bridge"、"host"、"none" 或 "container:<name|id>"。

container_capabilities: []

要添加到容器的能力列表。

container_log_driver: json-file

容器可以具有与 Docker 守护进程不同的日志驱动程序。可选值为 "none"、"json-file"、"syslog"、"journald"、"gelf"、"fluentd"、"awslogs"、"splunk"。

container_log_options:

示例剧本

- hosts: server
  vars:
    registry_url: dockerhub.com
    image_team: moa
    image_project: caddy
    image_tag: latest
    container_name: caddy-server-01
    container_ports:
      - 80:80
      - 443:443
    container_restart_policy: always
    container_environment:
      HOST_ID: 100
    container_env_file: xxx.env
    container_volumes:
      - /sys/fs/cgroup:/sys/fs/cgroup:ro
      - ${PWD}/data:/data
    container_privileged: no
    container_network_mode: 'bridge'
    container_capabilities: 
      - NET_ADMIN
    container_log_driver: json-file
    container_log_options:
      max-size: 10m
      max-file: 3
  roles:
    - { role: honomoa.docker_deployment }

许可

CC BY-SA 3.0

关于项目

Deploy your docker images.

安装
ansible-galaxy install honomoa.docker_deployment
许可证
Unknown
下载
3k
拥有者