{% 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 CentOS docker Service running: service.running: - name: docker - enable: True CentOS Docker Group: group.present: - name: docker - addusers: - iwan {% elif or grains['os'] == 'Fedora' %} Fedora Docker PreRequisites: pkg.installed: - pkgs: - dnf-plugins-core # - device-mapper-persistent-data # - lvm2 Fedora Docker Add Repo: cmd.run: - name: dnf-config-manager -y --add-repo 'https://download.docker.com/linux/fedora/docker-ce.repo' Fedora Docker CE installation: pkg.installed: - pkgs: - docker-ce 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' %} {% if grains['os'] == 'Debian' %} {% set DEBVER = salt['grains.get']('oscodename') %} Debian Docker PreRequisites: pkg.installed: - pkgs: - apt-transport-https - ca-certificates - curl - gnupg2 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 Debian docker Service running: service.running: - name: docker - enable: True Debian Docker Group: group.present: - name: docker - addusers: - iwan {% endif %} {% endif %} {% endif %}