首页 > 系统相关 >docker iptables

docker iptables

时间:2023-06-07 16:25:19浏览次数:171  
标签:iptables bin name && docker dir

- name: 获取是否已经安装docker
shell: 'systemctl is-active docker || echo "NoFound"'
register: docker_svc

# 18.09.x 版本二进制名字有变化,需要做判断
- name: 获取docker版本信息
shell: "{{ base_dir }}/bin/dockerd --version|cut -d' ' -f3"
register: docker_ver
connection: local
run_once: true
tags: upgrade_docker, download_docker

- name: debug info
debug: var="docker_ver"
connection: local
run_once: true
tags: upgrade_docker, download_docker

- name: 转换docker版本信息为浮点数
set_fact:
DOCKER_VER: "{{ docker_ver.stdout.split('.')[0]|int + docker_ver.stdout.split('.')[1]|int/100 }}"
connection: local
run_once: true
tags: upgrade_docker, download_docker

- name: debug info
debug: var="DOCKER_VER"
tags: upgrade_docker, download_docker

- block:
- name: 准备docker相关目录
file: name={{ item }} state=directory
with_items:
- "{{ bin_dir }}"
- "/etc/docker"
- "/etc/bash_completion.d"

- name: 下载 docker 二进制文件
copy: src={{ base_dir }}/bin/{{ item }} dest={{ bin_dir }}/{{ item }} mode=0755
with_items:
- docker-containerd
- docker-containerd-shim
- docker-init
- docker-runc
- docker
- docker-containerd-ctr
- dockerd
- docker-proxy
tags: upgrade_docker, download_docker
when: "DOCKER_VER|float < 18.09"

- name: 下载 docker 二进制文件(>= 18.09.x)
copy: src={{ base_dir }}/bin/{{ item }} dest={{ bin_dir }}/{{ item }} mode=0755
with_items:
- containerd
- containerd-shim
- docker-init
- runc
- docker
- ctr
- dockerd
- docker-proxy
tags: upgrade_docker, download_docker
when: "DOCKER_VER|float >= 18.09"

- name: 下载 docker 二进制文件(>= 20.10.x)
copy: src={{ base_dir }}/bin/{{ item }} dest={{ bin_dir }}/{{ item }} mode=0755
with_items:
- containerd-shim-runc-v2
tags: upgrade_docker, download_docker
when: "DOCKER_VER|float >= 20.10"

- name: docker命令自动补全
copy: src=docker dest=/etc/bash_completion.d/docker mode=0644

- name: docker国内镜像加速
template: src=daemon.json.j2 dest=/etc/docker/daemon.json

- name: flush-iptables
shell: "source /etc/profile; iptables -P INPUT ACCEPT \
&& iptables -P FORWARD ACCEPT \
&& iptables -P OUTPUT ACCEPT \
&& iptables -F && iptables -X \
&& iptables -F -t nat && iptables -X -t nat \
&& iptables -F -t raw && iptables -X -t raw \
&& iptables -F -t mangle && iptables -X -t mangle"

- name: 创建docker的systemd unit文件
template: src=docker.service.j2 dest=/etc/systemd/system/docker.service
tags: upgrade_docker, download_docker

- name: 开机启用docker 服务
shell: systemctl enable docker
ignore_errors: true

- name: 开启docker 服务
shell: systemctl daemon-reload && systemctl restart docker
tags: upgrade_docker

- name: 轮询等待docker服务运行
shell: "systemctl is-active docker.service"
register: docker_status
until: '"active" in docker_status.stdout'
retries: 8
delay: 2
tags: upgrade_docker

# 配置 docker 命令软链接,方便单独安装 docker
- name: 配置 docker 命令软链接
file: src={{ bin_dir }}/docker dest=/usr/bin/docker state=link
ignore_errors: true
when: "'NoFound' in docker_svc.stdout"

## 可选 ------安装docker查询镜像 tag的小工具----
- name: 下载 docker-tag
copy: src=docker-tag dest={{ bin_dir }}/docker-tag mode=0755

标签:iptables,bin,name,&&,docker,dir
From: https://www.cnblogs.com/cheyunhua/p/17463675.html

相关文章

  • [Docker/K8S]Docker与K8S的区别
    1定义角度Docker是一种开放源码的应用容器引擎,允许开发人员将其应用和依赖包打包成可移植的容器/镜像中;然后,发布到任何流行的Linux或Windows机器上,也能实现虚拟化。该容器完全使用沙箱机制,彼此之间没有任何接口。k8s,全称kubernetes,是一种开放源码的容器集群管理系统,能......
  • DockerFile编写以及指令
    DockerFile编写以及指令什么是Dockerfile?(重点是构建镜像)Dockerfile是一个用来构建镜像的文本文件,文本内容包含了一条条构建镜像所需的指令和命令使用Dockerfile定制镜像这里仅讲解如何运行Dockerfile文件来定制一个镜像,具体Dockerfile文件内指令详解,将在下一节中介绍,......
  • Dockerfile指令说明简洁版
    Dockerfile指令说明简洁版FROM构建镜像基于哪个镜像MAINTAINER镜像维护者姓名或邮箱地址RUN构建镜像时运行的指令CMD运行容器时执行的shell环境VOLUME指定容器挂载点到宿主机自动生成的目录或其他容器USER为RUN、CMD、和ENTRYPOINT执行命令指定运行用户......
  • docker 部署db2
    拉取镜像dockerpullibmcom/db2:11.5.8.0启动db2dockerrun-d-p50000:50000--namedb2--privileged=true-eDB2INSTANCE=test-eDB2INST1_PASSWORD=123456-eDBNAME=testdb-eLICENSE=acceptibmcom/db2:11.5.8.0dockerrun-d在后台启动容器-p50000:50000......
  • docker镜像使用
    可以去https://github.com搜索dockerfileMySQL默认会在3306端口启动数据库。$sudodockerrun--namesome-mysql-eMYSQL_ROOT_PASSWORD=mysecretpassword-dmysql之后就可以使用其它应用来连接到该容器。$sudodocke......
  • docker: Error response from daemon: could not select device driver "" with capab
    docker19之后的版本1.nanonvidia.shsudocurl-s-Lhttps://nvidia.github.io/nvidia-container-runtime/gpgkey|\ sudoapt-keyadd-distribution=$(./etc/os-release;echo$ID$VERSION_ID)sudocurl-s-Lhttps://nvidia.github.io/nvidia-container-runtime/$dist......
  • Docker 网络类型详解
    通过dockernetworkls命令来查看本地docker服务支持的网络类型。host网络类型Docker使用了Linux的Namespaces技术来进行资源隔离,如PIDNamespace隔离进程,MountNamespace隔离文件系统,NetworkNamespace隔离网络等。一个NetworkNamespace提供了一份独立的网络......
  • docker desktop记录___docker命令操作
    继续接上一篇的<dockerdesktop安装部署及使用>,接着介绍docker。上一篇主要介绍的是安装部署,以及dockerdesktop的使用(客户端上操作使用)。本篇主要介绍的是基于docker命令的操作和使用。还是以mysql为例,从使用docker命令进行mysql镜像的下载、容器创建、容器查询、进入......
  • Docker系列 | docker endpoint for “default” not found
    启动docker报错ForWindowsUsers1.Delete.dockerdirectory.WhichexistsonPATHC:\Users\your-username\.docker2.Restartdocker重新运行  ......
  • centOS 安装docker
    一、安装前必读在安装Docker之前,先说一下配置,我这里是Centos7Linux内核:官方建议3.10以上。注意:本文的命令使用的是root用户登录执行,不是root的话所有命令前面要加 sudo1.查看当前的内核版本[root@localhostvagrant]#uname-r3.10.0-327.4.5.el7.x86_64[root@l......