Most people use Ubuntu, it is the recommended OS.
We manage a few on-premise deployments on CentOS 7 (by customer request) without any issues.
Relevant parts of the Ansible role:
- name: add docker repository (CentOS)
get_url:
url: "https://download.docker.com/linux/centos/docker-ce.repo"
dest: '/etc/yum.repos.d/docker-ce.repo'
owner: root
group: root
mode: 0644
when: ansible_distribution == 'CentOS'
- name: install docker
package:
name: "{{ item }}"
state: present
with_items:
- docker-ce
- docker-ce-cli
- containerd.io
- name: ensure docker is started and enabled at boot
service:
name: docker
state: started
enabled: yes