diff --git a/softwares/dockerCE-Centos.sls b/softwares/dockerCE-Centos.sls new file mode 100644 index 0000000..101a839 --- /dev/null +++ b/softwares/dockerCE-Centos.sls @@ -0,0 +1,21 @@ +{% if grains['kernel'] == 'Linux' %} + {% if grains['os'] == 'CentOS' %} + CentOS Docker PreRequisites: + pkg.installed: + - pkgs: + - yum-utils + - device-mapper-persistent-data + - lvm2 + + CentOS Docker Add Repo: + cmd.run: + - name: yum-config-manager -y --add-repo 'https://download.docker.com/linux/centos/docker-ce.repo' + + CentOS Docker CE installation: + pkg.installed: + - pkgs: + - docker-ce + - docker-compose + + {% endif %} +{% endif %} diff --git a/softwares/dockerCE-Common.sls b/softwares/dockerCE-Common.sls new file mode 100644 index 0000000..f7a10ec --- /dev/null +++ b/softwares/dockerCE-Common.sls @@ -0,0 +1,13 @@ +{% if grains['kernel'] == 'Linux' %} + Docker Service running: + service.running: + - name: docker + - enable: True + + Docker Group: + group.present: + - name: docker + - addusers: + - iwan + +{% endif %} diff --git a/softwares/dockerCE-Debian.sls b/softwares/dockerCE-Debian.sls new file mode 100644 index 0000000..ad891f5 --- /dev/null +++ b/softwares/dockerCE-Debian.sls @@ -0,0 +1,26 @@ +{% if grains['kernel'] == 'Linux' %} + {% if grains['os'] == 'Debian' %} + Debian Docker PreRequisites: + pkg.installed: + - pkgs: + - apt-transport-https + - ca-certificates + - curl + - gnupg2 + + {% set DEBVER = salt['grains.get']('oscodename') %} + Debian Docker Add Repo: + pkgrepo.managed: + - name: deb [arch=amd64] https://download.docker.com/linux/debian {{DEBVER}} stable + - file: /etc/apt/sources.list.d/docker-ce.list + - enable: 1 + - key_url: https://download.docker.com/linux/debian/gpg + + Debian Docker CE installation: + pkg.installed: + - pkgs: + - docker-ce + - docker-compose + + {% endif %} +{% endif %} diff --git a/softwares/dockerCE-Fedora.sls b/softwares/dockerCE-Fedora.sls new file mode 100644 index 0000000..990c3c0 --- /dev/null +++ b/softwares/dockerCE-Fedora.sls @@ -0,0 +1,10 @@ +{% if grains['kernel'] == 'Linux' %} + {% if grains['os'] == 'Fedora' %} + Fedora Docker installation: + pkg.installed: + - pkgs: + - docker + - docker-compose + + {% endif %} +{% endif %} diff --git a/softwares/dockerCE-Ubuntu.sls b/softwares/dockerCE-Ubuntu.sls new file mode 100644 index 0000000..fa6e2d2 --- /dev/null +++ b/softwares/dockerCE-Ubuntu.sls @@ -0,0 +1,26 @@ +{% if grains['kernel'] == 'Linux' %} + {% elif grains['os'] == 'Ubuntu' %} + {% set UBUVER = salt['grains.get']('oscodename') %} + Ubuntu Docker PreRequisites: + pkg.installed: + - pkgs: + - apt-transport-https + - ca-certificates + - curl + - gnupg2 + + Ubuntu Docker Add Repo: + pkgrepo.managed: + - name: deb [arch=amd64] https://download.docker.com/linux/ubuntu {{UBUVER}} stable + - file: /etc/apt/sources.list.d/docker-ce.list + - enable: 1 + - key_url: https://download.docker.com/linux/ubuntu/gpg + + Ubuntu Docker CE installation: + pkg.installed: + - pkgs: + - docker-ce + - docker-compose + + {% endif %} +{% endif %} diff --git a/softwares/dockerCE.sls b/softwares/dockerCE.sls index dc39b79..00a24ea 100644 --- a/softwares/dockerCE.sls +++ b/softwares/dockerCE.sls @@ -1,100 +1,8 @@ {% if grains['kernel'] == 'Linux' %} - {% if grains['os_family'] == 'RedHat' %} - {% if grains['os'] == 'CentOS' %} - CentOS Docker PreRequisites: - pkg.installed: - - pkgs: - - yum-utils - - device-mapper-persistent-data - - lvm2 - - CentOS Docker Add Repo: - cmd.run: - - name: yum-config-manager -y --add-repo 'https://download.docker.com/linux/centos/docker-ce.repo' - - CentOS Docker CE installation: - pkg.installed: - - pkgs: - - docker-ce - - docker-compose - - {% elif grains['os'] == 'Fedora' %} - Fedora Docker installation: - pkg.installed: - - pkgs: - - docker - - docker-compose - - Fedora docker Service running: - service.running: - - name: docker - - enable: True - - Fedora Docker Group: - group.present: - - name: docker - - addusers: - - iwan - {% endif %} - {% elif grains['os_family'] == 'Debian' %} - Debian Docker PreRequisites: - pkg.installed: - - pkgs: - - apt-transport-https - - ca-certificates - - curl - - gnupg2 - - {% if grains['os'] == 'Debian' %} - {% set DEBVER = salt['grains.get']('oscodename') %} - Debian Docker Add Repo: - pkgrepo.managed: - - name: deb [arch=amd64] https://download.docker.com/linux/debian {{DEBVER}} stable - - file: /etc/apt/sources.list.d/docker-ce.list - - enable: 1 - - key_url: https://download.docker.com/linux/debian/gpg - - Debian Docker CE installation: - pkg.installed: - - pkgs: - - docker-ce - - docker-compose - - {% elif grains['os'] == 'Ubuntu' %} - {% if grains['osrelease'] == '18.04' %} - Ubuntu Docker Install Ubuntu 18.04: - pkg.installed: - - pkgs: - - docker - - docker-compose - - {% else %} - {% set UBUVER = salt['grains.get']('oscodename') %} - Ubuntu Docker Add Repo: - pkgrepo.managed: - - name: deb [arch=amd64] https://download.docker.com/linux/ubuntu {{UBUVER}} stable - - file: /etc/apt/sources.list.d/docker-ce.list - - enable: 1 - - key_url: https://download.docker.com/linux/ubuntu/gpg - - Ubuntu Docker CE installation: - pkg.installed: - - pkgs: - - docker-ce - - docker-compose - - {% endif %} - {% endif %} - {% endif %} - Docker Service running: - service.running: - - name: docker - - enable: True - - Docker Group: - group.present: - - name: docker - - addusers: - - iwan - + include: + - softwares.dockerCE-Centos + - softwares.dockerCE-Fedora + - softwares.dockerCE-Debian + - softwares.dockerCE-Ubuntu + - softwares.dockerCE-Common {% endif %}