前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >ansible之docker_container模块

ansible之docker_container模块

作者头像
陳斯托洛夫斯記
发布2022-10-27 15:37:52
1.1K0
发布2022-10-27 15:37:52
举报
文章被收录于专栏:XBDXBD

docker_container模块用于管理docker容器

代码语言:javascript
复制
auto_remove: yes|no
command 			# 容器启动时执行的命令
entrypoint			# 覆盖镜像默认值ENTRYPOINT
env_file 			# 环境变量的文件路径
etc_hosts 			# 主机名到IP的映射,添加到容器的/etc/hosts文件中
force_kill: yes|no		# 停止正在运行的容器
healthcheck: 			# 对容器进行健康检查
  interval: 			# 检查时间,默认30s
  retries:			# 重试次数,默认为3
  start_period:				
  test: 			# 运行测试命令
  timeout: 			# 执行一次检查的最长时间,默认30s
hostname: 			# 容器的主机名
image: 				# 用于创建容器的仓库路径和标签
init: yes|no			# 在容器内运行一个初始化程序
interactive: yes|no 		# 容器启动后,即使没有连接,也应处于打开状态
keep_volumes: yes|no		# 保留与已删除容器关联的卷
links: 				# 链接容器,格式:container_name:alias
mac_address 			# 容器的MAC地址
mounts:
  consistency:
  labels:
  no_copy:
  propagation:
  read_only: yes|no 		# 是否为只读
  source: 			# 挂载的源路径
  target:			# 容器内的路径
  tmpfs_mode:
  tmpfs_size:
  type:
  volume_driver:
  volume_options:
name: 				# 容器的名称,必选参数
network_mode: 			# 容器连接的网络,选项为:bridge、host、none
networks:			# 容器所属的网络
  aliases:
  ipv4_address: 		# 该容器的ipv4地址
  ipv6_address:			# 该容器的ipv6地址
  links:			# 链接到的容器列表
  name:				# 网络的名称
privileged: yes|no 		# 赋予容器扩展特权
published_ports: 		# 容器的端口列表,如:80,8080:8080,0.0.0.0:8080:8080
pull: yes|no 			# 如果为yes,始终接取镜像的最新版本
read_only: yes|no 		# 把容器的根文件系统挂载为只读
recreate: yes|no 		# state present和state started一起使用时,可强制重新创建现有容器
restart: yes|no 		# state started一起使用时,强制重新启动匹配的容器
restart_policy: no|on-failure|always|unless-stopped 		# 容器重启策略
restart_retries: 		# 与重启策略一起使用,控制最大重启尝试次数
shm_size: 			# /dev/shm的大小,数字是正整数,单位可以是B、K、M、G、T,默认64M
state: absent|present|stopped|started
	# absent:停止并删除与指定名称匹配的容器,使用force_kill是杀死容器而不是停止容器,使用keep_volumes保留与已删除容器关联的卷
	# present:检查是否有匹配的容器,如果没有与指定名称匹配的容器,则创建一个容器,如果容器与指定名称匹配,但配置不匹配,则对其进行更新
	# started:启动容器
	# stopped:停止正在运行的容器
tmpfs: 				# 挂载tmpfs目录
tty: yes|no 			# 分配伪TTY
volumes:  			# 容器中挂载的卷列表,格式:/host:/container

从docker hub拉取nginx镜像,并创建启动容器,监听80端口

代码语言:javascript
复制
---
- hosts: test
  remote_user: root

  tasks:
    - name: create image
      docker_image:
        name: nginx
        tag: "1.18"
        state: present

    - name: start container
      docker_container:
        name: nginx
        image: nginx:1.18
        state: started
        published_ports: 80:80

停止并删除容器

代码语言:javascript
复制
---
- hosts: test
  remote_user: root

  tasks:
    - name: create image
      docker_image:
        name: nginx
        tag: "1.18"
        state: present

    - name: start container
      docker_container:
        name: nginx
        image: nginx:1.18
        state: absent
        published_ports: 80:80
本文参与?腾讯云自媒体分享计划,分享自作者个人站点/博客。
如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客?前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与?腾讯云自媒体分享计划? ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • docker_container模块用于管理docker容器
  • 从docker hub拉取nginx镜像,并创建启动容器,监听80端口
  • 停止并删除容器
相关产品与服务
容器镜像服务
容器镜像服务(Tencent Container Registry,TCR)为您提供安全独享、高性能的容器镜像托管分发服务。您可同时在全球多个地域创建独享实例,以实现容器镜像的就近拉取,降低拉取时间,节约带宽成本。TCR 提供细颗粒度的权限管理及访问控制,保障您的数据安全。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
http://www.vxiaotou.com