Skip to main content

Install Docker on Ubuntu localhost using Ansible Playbook

Install Docker on Ubuntu localhost using Ansible Playbook

                
---
- hosts: localhost
  tasks:
    - name: Update all packages to the latest version
      apt:
        name: "*"
        state: latest
      when: ansible_facts['os_family'] == "Debian"
      become: true
    - name: Upgrade all packages to the latest version
      apt:
        upgrade: dist
      when: ansible_facts['os_family'] == "Debian"
      become: true
    - name: Install apt-transport-https
      package:
        name: apt-transport-https
        state: present
      when: ansible_facts['os_family'] == "Debian"
      become: true
    - name: Install ca-certificates
      package:
        name: ca-certificates
        state: present
      when: ansible_facts['os_family'] == "Debian"
      become: true
    - name: Install curl
      package:
        name: curl
        state: present
      when: ansible_facts['os_family'] == "Debian"
      become: true
    - name: Install gnupg-agent
      package:
        name: gnupg-agent
        state: present
      when: ansible_facts['os_family'] == "Debian"
      become: true
    - name: Install software-properties-common
      package:
        name: software-properties-common
        state: present
      when: ansible_facts['os_family'] == "Debian"
      become: true
    - name: Install docker GPG key
      shell: curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add 
      when: ansible_facts['os_family'] == "Debian"
    - name: Add docker stable repository
      shell: add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable"
      when: ansible_facts['os_family'] == "Debian"
      become: true
    - name: Update all packages to the latest version
      apt:
        name: "*"
        state: latest
      when: ansible_facts['os_family'] == "Debian"
      become: true
    - name: Upgrade all packages to the latest version
      apt:
        upgrade: dist
      when: ansible_facts['os_family'] == "Debian"      
      become: true
    - name: Install docker-ce
      package:
        name: docker-ce
        state: present
      when: ansible_facts['os_family'] == "Debian"
      become: true
    - name: Install docker-ce-cli
      package:
        name: docker-ce-cli
        state: present
      when: ansible_facts['os_family'] == "Debian"
      become: true
    - name: Install containerd.io
      package:
        name: containerd.io
        state: present
      when: ansible_facts['os_family'] == "Debian"
      become: true

                
            

Same script is also available at https://github.com/JaydeepUniverse/automation/blob/master/docker.yaml

Comments

Popular posts from this blog

Install AWS CLI on Ubuntu localhost using Ansible Playbook

Install AWS CLI on Ubuntu localhost using Ansible Playbook --- - hosts: localhost tasks: - name: Installing Unzip package package: name: unzip state: present when: ansible_facts['os_family'] == "Debian" become: true - name: Create awscli directory in home directory file: path: ~/awscli state: directory mode: '0755' - name: Download bundled installer zip file get_url: url: https://s3.amazonaws.com/aws-cli/awscli-bundle.zip dest: ~/awscli/awscli-bundle.zip - name: Extract zip file unarchive: src: ~/awscli/awscli-bundle.zip dest: ~/awscli - name: Run install command shell: /home/ubuntu/awscli/awscli-bundle/install -i /usr/local/aws -b /usr/local/bin/aws become: true Same script is also avail...

How to clone Github repository using SSH

Run ssh-keygen Upload ssh public key to github account curl -u "gitUsername:password" --data '{"title":"keyName","key":"'"$(cat ~/.ssh/id_rsa.pub)"'"}' https://api.github.com/user/keys Sample output of ssh public key upload command { "id": 1234567890, "key": "ssh-rsa aaaaaaaaaaaaaaaaaaaa/dddd/+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa", "url": "https://api.github.com/user/keys/123456...

Docker Networks

Docker Networks One of the reasons Docker containers and services are so powerful is that you can connect them together, or connect them to non-Docker workloads. Docker’s networking subsystem is pluggable, using drivers. Several drivers exist by default, and provide core networking functionality: Bridge: The default network driver. If you don’t specify a driver, this is the type of network you are creating. Bridge networks are usually used when your applications run in standalone containers that need to communicate. Host: For standalone containers, remove network isolation between the container and the Docker host, and use the host’s networking directly. host is only available for swarm services on Docker 17.06 and higher. See use the host network. Overlay: Overlay networks connect multiple Docker...