Compare commits

62 Commits

Author SHA1 Message Date
102276cc05 Merge branch 'geerlingguy:master' into master 2024-08-08 17:45:19 +03:00
Jeff Geerling
e7ee1a8d1e Fixup CI versions. Drop all older RHEL releases which are broken. 2024-07-16 14:21:20 -05:00
Jeff Geerling
f18394c555 CI Updates. 2024-07-16 13:40:47 -05:00
Jeff Geerling
ee3bb23578 Add docker_obsolete_packages to README. 2024-06-27 08:39:51 -05:00
Jeff Geerling
f35dba88d0 Merge pull request #463 from elsoa-invitech/change-obsolete-packages
Allow change obsolete packages
2024-06-27 08:32:13 -05:00
Első András
5b3eea8f97 Allow change obsolete packages 2024-06-27 15:18:55 +02:00
Jeff Geerling
c0ce31085c Merge pull request #456 from jamesmyatt/no-gnupg-required
gnupg no longer prerequisite
2024-06-09 21:29:02 -05:00
James Myatt
9c4e21caec gnupg no longer prerequisite
See 811f32afe5
2024-06-09 23:15:02 +01:00
Jeff Geerling
64b17dc423 Merge pull request #439 from cschindlbeck/add-docker-compose-package-name-default-for-archlinux
Fix docker compose plugin on archlinux (Closes #427)
2024-05-27 13:04:01 -05:00
Jeff Geerling
13dfcf7d17 Merge pull request #436 from kawadeomkar/kawade/fix-434
Add GPG keys to `/apt/keyrings` instead of `/apt/trusted.gpg.d`, Update task `Add Docker apt key`
2024-05-27 13:02:34 -05:00
Jeff Geerling
1f1f5cd69c Merge branch 'master' into kawade/fix-434 2024-05-27 13:02:27 -05:00
Jeff Geerling
a51b9db984 Merge pull request #457 from cschindlbeck/patch-1
Add Ubuntu 24.04 to CI
2024-05-27 13:00:25 -05:00
Jeff Geerling
af2293f47c Merge pull request #458 from jamesmyatt/enable-armhf
Enable armhf build for old raspberry pis
2024-05-27 13:00:09 -05:00
Jeff Geerling
db5503f430 Merge pull request #459 from jamesmyatt/update-obsolete-pkgs
Update list of obsolete pkgs
2024-05-27 12:57:43 -05:00
James Myatt
fe69df76fa Update list of obsolete packages 2024-05-27 11:17:28 +01:00
James Myatt
820f7426fb Enable armhf build for old raspberry pis 2024-05-27 11:09:35 +01:00
Chris Schindlbeck
5b96593d5c Add Ubuntu 24.04 to CI 2024-05-27 09:26:04 +02:00
Jeff Geerling
dc1c9a1606 Merge pull request #447 from lucagardi/patch-1
Fix a README typo in Yum variables
2024-02-26 14:02:43 -06:00
Luca Gardi
cff72d0807 Update README.md
Fix typo in Yum repos definition
2024-02-26 13:59:44 +01:00
Jeff Geerling
f845f0986d Merge pull request #444 from mrodus/docker-buildx-plugin
Add docker-buildx-plugin to docker_packages
2024-02-01 08:02:11 -06:00
mrodus
0a410c1031 Add docker-buildx-plugin to docker_packages 2024-02-01 16:33:29 +05:30
Jeff Geerling
be3b7c289c A wee bit of modernization. 2024-01-24 22:01:14 -06:00
Jeff Geerling
1175acc9f5 Make local dev with molecule a little easier. 2024-01-24 21:49:33 -06:00
Chris Schindlbeck
f741ddba10 Fix docker compose plugin on archlinux 2023-12-28 20:08:47 +01:00
Omkar Kawade
d8f92e1874 434 remove permissions update, add reverse compatibility 2023-12-18 12:56:14 -08:00
Omkar Kawade
08ae86e0b5 434 update apt key destination 2023-12-18 11:06:21 -08:00
4b98a50f50 Merge branch 'geerlingguy:master' into master 2023-11-21 21:07:24 +03:00
Omkar Kawade
6cb849c416 435 ansible-lint 2023-11-16 21:20:56 -08:00
Omkar Kawade
ae29f9f9c0 434 changed_when false for adding docker apt key shell cmd 2023-11-16 21:14:58 -08:00
Omkar Kawade
12ad263ef6 435 Update apt key ansible task 2023-11-16 20:23:52 -08:00
Omkar Kawade
1dca07177f 434 Add GPG keys to keyrings instead of trusted.gpg.d 2023-11-16 18:59:51 -08:00
Jeff Geerling
8ff4a24147 Merge pull request #433 from Yethal/patch-1
Uninstall docker.io on apt distros
2023-11-10 12:37:11 -06:00
Yethal
a76a05024a Uninstall docker.io on apt distros 2023-11-10 16:20:54 +01:00
5f8e10462c Merge branch 'geerlingguy:master' into master 2023-10-15 11:50:43 +03:00
Jeff Geerling
0fa54d7c59 Merge pull request #426 from kaysond/patch-1
Update documentation on docker_apt_filename
2023-10-05 19:06:11 +00:00
Jeff Geerling
15815e53e6 Merge pull request #428 from shuuji3/fix/gpg-key-error-on-popos
fix: fix failure for the initial gpg key load on Pop!_OS
2023-10-05 19:05:40 +00:00
TAKAHASHI Shuuji
cd9bf6fdf8 fix: fix failure for the initial gpg key load on Pop!_OS 2023-10-02 23:21:41 +09:00
Aram Akhavan
2b2f6e2100 Update README.md 2023-09-29 11:35:36 -07:00
Aram Akhavan
024cec5659 Update documentation about docker_apt_filename 2023-09-29 11:33:11 -07:00
Jeff Geerling
9d51ec8802 Merge pull request #424 from rpetti/fix-runc-conflict-on-rhel
remove runc, as it conflicts with containerd
2023-09-28 16:53:38 +00:00
Rob Petti
95d13bf2b8 remove runc, as it conflicts with containerd 2023-09-27 23:16:32 -06:00
Jeff Geerling
914ca965e0 Merge pull request #396 from dale-c-anderson/382-fix-apt-errors-on-pop-os
Fix apt errors on Pop!_OS
2023-09-28 02:12:12 +00:00
Jeff Geerling
3ceffb4cee Merge pull request #420 from eropple/eropple-patch-1
Fix a typo in README.md
2023-09-28 02:11:17 +00:00
Jeff Geerling
1fad07589a Merge pull request #369 from kaysond/new_defaults
Change defaults in the next major release
2023-09-28 02:09:48 +00:00
Aram Akhavan
fcbd3d7098 Merge branch 'master' into new_defaults 2023-09-27 14:41:20 -07:00
Ed Ropple
b41084ad3f Fix a typo in README.md 2023-08-12 14:47:52 -04:00
Dale Anderson
a23731506b Restore snippet lost in previous conflict 2023-08-10 09:12:33 -07:00
Dale Anderson
0b419a0a12 Merge branch 'master' into 382-fix-apt-errors-on-pop-os 2023-08-10 09:10:36 -07:00
Jeff Geerling
8bb277bd7f Merge pull request #418 from nevart/apt-key-fix-check-mode
APT key: don't force and provide checksum, to fix check mode
2023-08-10 00:18:41 -05:00
Jeff Geerling
7fa232d1c1 Merge pull request #419 from nevart/debian-bookworm
Add Debian 12 bookworm support
2023-08-10 00:17:22 -05:00
Jeff Geerling
e6996ccca8 Merge pull request #410 from etkecc/debian-signed-by
debian: add signed-by param to the apt source list
2023-08-10 00:16:13 -05:00
nevart
81f23a11dc Add Debian 12 bookworm support 2023-08-06 13:01:27 +00:00
Jeff Geerling
78e50d46e2 Stale bot is now Stale GitHub Action. 2023-07-10 17:47:39 -05:00
nevart
7c86fe1739 APT key: don't force and provide checksum, to fix check mode
As described in https://github.com/ansible/ansible/issues/65687, get_url
only partially supports check_mode: "the changed status will reflect
comparison to an empty source file".

Before this change, executing this code, with the key already being in
place on the target system, would report "OK", while check_mode would
report "changed".

Due to this change, both now either report "OK" or "changed", depending
on the state of the target system.
2023-06-26 07:34:10 +00:00
Aine
32307386d4 debian: add signed-by param to the apt source list, fixes #409 2023-04-02 14:33:48 +03:00
Aram Akhavan
c3a127134d change default compose install to plugin, apt repository filename to docker.list 2023-02-21 22:43:08 -08:00
Aram Akhavan
d64f9afe19 add filename option to apt repository add 2023-02-21 22:35:04 -08:00
Dale Anderson
2638529927 Fix linter warning 2023-01-23 17:50:49 -08:00
Dale Anderson
75b8acc626 Linux Mint is also Ubuntu under the hood
Closes #334
2023-01-23 17:41:27 -08:00
Dale Anderson
a6bab2c9be Make naming more consistent 2022-12-30 15:46:38 -08:00
Dale Anderson
48688d0faf Handle the exception more cleanly 2022-12-30 15:17:35 -08:00
Dale Anderson
43b5ad4fef Override defaults for Pop!_OS 2022-12-30 14:56:00 -08:00
12 changed files with 158 additions and 132 deletions

57
.github/stale.yml vendored
View File

@@ -1,57 +0,0 @@
# Configuration for probot-stale - https://github.com/probot/stale
---
# Number of days of inactivity before an Issue or Pull Request becomes stale
daysUntilStale: 90
# Number of days of inactivity before an Issue or Pull Request with the stale label is closed.
# Set to false to disable. If disabled, issues still need to be closed manually, but will remain marked as stale.
daysUntilClose: 30
# Only issues or pull requests with all of these labels are check if stale. Defaults to `[]` (disabled)
onlyLabels: []
# Issues or Pull Requests with these labels will never be considered stale. Set to `[]` to disable
exemptLabels:
- bug
- pinned
- security
- planned
# Set to true to ignore issues in a project (defaults to false)
exemptProjects: false
# Set to true to ignore issues in a milestone (defaults to false)
exemptMilestones: false
# Set to true to ignore issues with an assignee (defaults to false)
exemptAssignees: false
# Label to use when marking as stale
staleLabel: stale
# Limit the number of actions per hour, from 1-30. Default is 30
limitPerRun: 30
pulls:
markComment: |-
This pull request has been marked 'stale' due to lack of recent activity. If there is no further activity, the PR will be closed in another 30 days. Thank you for your contribution!
Please read [this blog post](https://www.jeffgeerling.com/blog/2020/enabling-stale-issue-bot-on-my-github-repositories) to see the reasons why I mark pull requests as stale.
unmarkComment: >-
This pull request is no longer marked for closure.
closeComment: >-
This pull request has been closed due to inactivity. If you feel this is in error, please reopen the pull request or file a new PR with the relevant details.
issues:
markComment: |-
This issue has been marked 'stale' due to lack of recent activity. If there is no further activity, the issue will be closed in another 30 days. Thank you for your contribution!
Please read [this blog post](https://www.jeffgeerling.com/blog/2020/enabling-stale-issue-bot-on-my-github-repositories) to see the reasons why I mark issues as stale.
unmarkComment: >-
This issue is no longer marked for closure.
closeComment: >-
This issue has been closed due to inactivity. If you feel this is in error, please reopen the issue or file a new issue with the relevant details.

View File

@@ -19,12 +19,12 @@ jobs:
runs-on: ubuntu-latest
steps:
- name: Check out the codebase.
uses: actions/checkout@v2
uses: actions/checkout@v4
with:
path: 'geerlingguy.docker'
- name: Set up Python 3.
uses: actions/setup-python@v2
uses: actions/setup-python@v5
with:
python-version: '3.x'
@@ -41,22 +41,21 @@ jobs:
strategy:
matrix:
distro:
- rockylinux8
- rockylinux9
- ubuntu2404
- ubuntu2204
- ubuntu2004
- ubuntu1804
- debian12
- debian11
- debian10
- fedora34
- fedora40
steps:
- name: Check out the codebase.
uses: actions/checkout@v2
uses: actions/checkout@v4
with:
path: 'geerlingguy.docker'
- name: Set up Python 3.
uses: actions/setup-python@v2
uses: actions/setup-python@v5
with:
python-version: '3.x'

View File

@@ -22,12 +22,12 @@ jobs:
runs-on: ubuntu-latest
steps:
- name: Check out the codebase.
uses: actions/checkout@v2
uses: actions/checkout@v4
with:
path: 'geerlingguy.docker'
- name: Set up Python 3.
uses: actions/setup-python@v2
uses: actions/setup-python@v5
with:
python-version: '3.x'

34
.github/workflows/stale.yml vendored Normal file
View File

@@ -0,0 +1,34 @@
---
name: Close inactive issues
'on':
schedule:
- cron: "55 6 * * 1" # semi-random time
jobs:
close-issues:
runs-on: ubuntu-latest
permissions:
issues: write
pull-requests: write
steps:
- uses: actions/stale@v8
with:
days-before-stale: 120
days-before-close: 60
exempt-issue-labels: bug,pinned,security,planned
exempt-pr-labels: bug,pinned,security,planned
stale-issue-label: "stale"
stale-pr-label: "stale"
stale-issue-message: |
This issue has been marked 'stale' due to lack of recent activity. If there is no further activity, the issue will be closed in another 30 days. Thank you for your contribution!
Please read [this blog post](https://www.jeffgeerling.com/blog/2020/enabling-stale-issue-bot-on-my-github-repositories) to see the reasons why I mark issues as stale.
close-issue-message: |
This issue has been closed due to inactivity. If you feel this is in error, please reopen the issue or file a new issue with the relevant details.
stale-pr-message: |
This pr has been marked 'stale' due to lack of recent activity. If there is no further activity, the issue will be closed in another 30 days. Thank you for your contribution!
Please read [this blog post](https://www.jeffgeerling.com/blog/2020/enabling-stale-issue-bot-on-my-github-repositories) to see the reasons why I mark issues as stale.
close-pr-message: |
This pr has been closed due to inactivity. If you feel this is in error, please reopen the issue or file a new issue with the relevant details.
repo-token: ${{ secrets.GITHUB_TOKEN }}

View File

@@ -7,5 +7,4 @@ rules:
level: warning
ignore: |
.github/stale.yml
.travis.yml
.github/workflows/stale.yml

109
README.md
View File

@@ -12,80 +12,113 @@ None.
Available variables are listed below, along with default values (see `defaults/main.yml`):
# Edition can be one of: 'ce' (Community Edition) or 'ee' (Enterprise Edition).
docker_edition: 'ce'
docker_packages:
- "docker-{{ docker_edition }}"
- "docker-{{ docker_edition }}-cli"
- "docker-{{ docker_edition }}-rootless-extras"
docker_packages_state: present
```yaml
# Edition can be one of: 'ce' (Community Edition) or 'ee' (Enterprise Edition).
docker_edition: 'ce'
docker_packages:
- "docker-{{ docker_edition }}"
- "docker-{{ docker_edition }}-cli"
- "docker-{{ docker_edition }}-rootless-extras"
docker_packages_state: present
```
The `docker_edition` should be either `ce` (Community Edition) or `ee` (Enterprise Edition).
You can also specify a specific version of Docker to install using the distribution-specific format:
Red Hat/CentOS: `docker-{{ docker_edition }}-<VERSION>` (Note: you have to add this to all packages);
Debian/Ubuntu: `docker-{{ docker_edition }}=<VERSION>` (Note: you have to add this to all packages).
You can control whether the package is installed, uninstalled, or at the latest version by setting `docker_package_state` to `present`, `absent`, or `latest`, respectively. Note that the Docker daemon will be automatically restarted if the Docker package is updated. This is a side effect of flushing all handlers (running any of the handlers that have been notified by this and any other role up to this point in the play).
You can control whether the package is installed, uninstalled, or at the latest version by setting `docker_packages_state` to `present`, `absent`, or `latest`, respectively. Note that the Docker daemon will be automatically restarted if the Docker package is updated. This is a side effect of flushing all handlers (running any of the handlers that have been notified by this and any other role up to this point in the play).
docker_service_manage: true
docker_service_state: started
docker_service_enabled: true
docker_restart_handler_state: restarted
```yaml
docker_obsolete_packages:
- docker
- docker.io
- docker-engine
- podman-docker
- containerd
- runc
```
A list of packages to be uninstalled prior to running this role. See [Docker's installation instructions](https://docs.docker.com/engine/install/debian/#uninstall-old-versions) for an up-to-date list of old packages that should be removed.
```yaml
docker_service_manage: true
docker_service_state: started
docker_service_enabled: true
docker_restart_handler_state: restarted
```
Variables to control the state of the `docker` service, and whether it should start on boot. If you're installing Docker inside a Docker container without systemd or sysvinit, you should set `docker_service_manage` to `false`.
docker_install_compose_plugin: false
docker_compose_package: docker-compose-plugin
docker_compose_package_state: present
```yaml
docker_install_compose_plugin: false
docker_compose_package: docker-compose-plugin
docker_compose_package_state: present
```
Docker Compose Plugin installation options. These differ from the below in that docker-compose is installed as a docker plugin (and used with `docker compose`) instead of a standalone binary.
docker_install_compose: true
docker_compose_version: "1.26.0"
docker_compose_arch: "{{ ansible_architecture }}"
docker_compose_path: /usr/local/bin/docker-compose
```yaml
docker_install_compose: true
docker_compose_version: "1.26.0"
docker_compose_arch: "{{ ansible_architecture }}"
docker_compose_path: /usr/local/bin/docker-compose
```
Docker Compose installation options.
docker_add_repo: true
```yaml
docker_add_repo: true
```
Controls whether this role will add the official Docker repository. Set to `false` if you want to use the default docker packages for your system or manage the package repository on your own.
docker_repo_url: https://download.docker.com/linux
```yaml
docker_repo_url: https://download.docker.com/linux
```
The main Docker repo URL, common between Debian and RHEL systems.
docker_apt_release_channel: stable
docker_apt_arch: "{{ 'arm64' if ansible_architecture == 'aarch64' else 'amd64' }}"
docker_apt_repository: "deb [arch={{ docker_apt_arch }}] {{ docker_repo_url }}/{{ ansible_distribution | lower }} {{ ansible_distribution_release }} {{ docker_apt_release_channel }}"
docker_apt_ignore_key_error: True
docker_apt_gpg_key: "{{ docker_repo_url }}/{{ ansible_distribution | lower }}/gpg"
```yaml
docker_apt_release_channel: stable
docker_apt_arch: "{{ 'arm64' if ansible_architecture == 'aarch64' else 'amd64' }}"
docker_apt_repository: "deb [arch={{ docker_apt_arch }}] {{ docker_repo_url }}/{{ ansible_distribution | lower }} {{ ansible_distribution_release }} {{ docker_apt_release_channel }}"
docker_apt_ignore_key_error: True
docker_apt_gpg_key: "{{ docker_repo_url }}/{{ ansible_distribution | lower }}/gpg"
docker_apt_filename: "docker"
```
(Used only for Debian/Ubuntu.) You can switch the channel to `nightly` if you want to use the Nightly release.
You can change `docker_apt_gpg_key` to a different url if you are behind a firewall or provide a trustworthy mirror.
Usually in combination with changing `docker_apt_repository` as well.
Usually in combination with changing `docker_apt_repository` as well. `docker_apt_filename` controls the name of the source list file created in `sources.list.d`. If you are upgrading from an older (<7.0.0) version of this role, you should change this to the name of the existing file (e.g. `download_docker_com_linux_debian` on Debian) to avoid conflicting lists.
docker_yum_repo_url: "{{ docker_repo_url }}/{{ (ansible_distribution == 'Fedora') | ternary('fedora','centos') }}/docker-{{ docker_edition }}.repo"docker_edition }}.repo
docker_yum_repo_enable_nightly: '0'
docker_yum_repo_enable_test: '0'
docker_yum_gpg_key: "{{ docker_repo_url }}/centos/gpg"
```yaml
docker_yum_repo_url: "{{ docker_repo_url }}/{{ (ansible_distribution == 'Fedora') | ternary('fedora','centos') }}/docker-{{ docker_edition }}.repo"
docker_yum_repo_enable_nightly: '0'
docker_yum_repo_enable_test: '0'
docker_yum_gpg_key: "{{ docker_repo_url }}/centos/gpg"
```
(Used only for RedHat/CentOS.) You can enable the Nightly or Test repo by setting the respective vars to `1`.
You can change `docker_yum_gpg_key` to a different url if you are behind a firewall or provide a trustworthy mirror.
Usually in combination with changing `docker_yum_repository` as well.
docker_users:
- user1
- user2
```yaml
docker_users:
- user1
- user2
```
A list of system users to be added to the `docker` group (so they can use Docker on the server).
docker_daemon_options:
storage-driver: "devicemapper"
log-opts:
max-size: "100m"
```yaml
docker_daemon_options:
storage-driver: "devicemapper"
log-opts:
max-size: "100m"
```
Custom `dockerd` options can be configured through this dictionary representing the json file `/etc/docker/daemon.json`.

View File

@@ -6,7 +6,15 @@ docker_packages:
- "docker-{{ docker_edition }}-cli"
- "docker-{{ docker_edition }}-rootless-extras"
- "containerd.io"
- docker-buildx-plugin
docker_packages_state: present
docker_obsolete_packages:
- docker
- docker.io
- docker-engine
- podman-docker
- containerd
- runc
# Service options.
docker_service_manage: true
@@ -15,12 +23,12 @@ docker_service_enabled: true
docker_restart_handler_state: restarted
# Docker Compose Plugin options.
docker_install_compose_plugin: false
docker_install_compose_plugin: true
docker_compose_package: docker-compose-plugin
docker_compose_package_state: present
# Docker Compose options.
docker_install_compose: true
docker_install_compose: false
docker_compose_version: "v2.11.1"
docker_compose_arch: "{{ ansible_architecture }}"
docker_compose_url: "https://github.com/docker/compose/releases/download/{{ docker_compose_version }}/docker-compose-linux-{{ docker_compose_arch }}"
@@ -32,12 +40,17 @@ docker_add_repo: true
# Docker repo URL.
docker_repo_url: https://download.docker.com/linux
# Used only for Debian/Ubuntu. Switch 'stable' to 'nightly' if needed.
# Used only for Debian/Ubuntu/Pop!_OS/Linux Mint. Switch 'stable' to 'nightly' if needed.
docker_apt_release_channel: stable
docker_apt_arch: "{{ 'arm64' if ansible_architecture == 'aarch64' else 'amd64' }}"
docker_apt_repository: "deb [arch={{ docker_apt_arch }}] {{ docker_repo_url }}/{{ ansible_distribution | lower }} {{ ansible_distribution_release }} {{ docker_apt_release_channel }}"
# docker_apt_ansible_distribution is a workaround for Ubuntu variants which can't be identified as such by Ansible,
# and is only necessary until Docker officially supports them.
docker_apt_ansible_distribution: "{{ 'ubuntu' if ansible_distribution in ['Pop!_OS', 'Linux Mint'] else ansible_distribution }}"
docker_apt_arch: "{{ 'arm64' if ansible_architecture == 'aarch64' else 'armhf' if ansible_architecture == 'armv7l' else 'amd64' }}"
docker_apt_repository: "deb [arch={{ docker_apt_arch }} signed-by=/etc/apt/keyrings/docker.asc] {{ docker_repo_url }}/{{ docker_apt_ansible_distribution | lower }} {{ ansible_distribution_release }} {{ docker_apt_release_channel }}"
docker_apt_ignore_key_error: true
docker_apt_gpg_key: "{{ docker_repo_url }}/{{ ansible_distribution | lower }}/gpg"
docker_apt_gpg_key: "{{ docker_repo_url }}/{{ docker_apt_ansible_distribution | lower }}/gpg"
docker_apt_gpg_key_checksum: "sha256:1500c1f56fa9e26b9b8f42452a553675796ade0807cdce11975eb98170b3a570"
docker_apt_filename: "docker"
# Used only for RedHat/CentOS/Fedora.
docker_yum_repo_url: "{{ docker_repo_url }}/{{ (ansible_distribution == 'Fedora') | ternary('fedora','centos') }}/docker-{{ docker_edition }}.repo"

View File

@@ -16,11 +16,13 @@ galaxy_info:
versions:
- buster
- bullseye
- bookworm
- name: Ubuntu
versions:
- bionic
- focal
- jammy
- noble
- name: Alpine
version:
- all

View File

@@ -2,11 +2,13 @@
role_name_check: 1
dependency:
name: galaxy
options:
ignore-errors: true
driver:
name: docker
platforms:
- name: instance
image: "geerlingguy/docker-${MOLECULE_DISTRO:-centos7}-ansible:latest"
image: "geerlingguy/docker-${MOLECULE_DISTRO:-rockylinux9}-ansible:latest"
command: ${MOLECULE_DOCKER_COMMAND:-""}
volumes:
- /sys/fs/cgroup:/sys/fs/cgroup:rw

View File

@@ -1,9 +1,8 @@
---
- name: Ensure old versions of Docker are not installed.
- # See https://docs.docker.com/engine/install/debian/#uninstall-old-versions
name: Ensure old versions of Docker are not installed.
package:
name:
- docker
- docker-engine
name: "{{ docker_obsolete_packages }}"
state: absent
- name: Ensure dependencies are installed.
@@ -14,24 +13,19 @@
state: present
when: docker_add_repo | bool
- name: Ensure additional dependencies are installed (on Ubuntu < 20.04 and any other systems).
apt:
name: gnupg2
state: present
when: ansible_distribution != 'Ubuntu' or ansible_distribution_version is version('20.04', '<')
- name: Ensure additional dependencies are installed (on Ubuntu >= 20.04).
apt:
name: gnupg
state: present
when: ansible_distribution == 'Ubuntu' and ansible_distribution_version is version('20.04', '>=')
- name: Ensure directory exists for /etc/apt/keyrings
file:
path: /etc/apt/keyrings
state: directory
mode: '0755'
- name: Add Docker apt key.
ansible.builtin.get_url:
url: "{{ docker_apt_gpg_key }}"
dest: /etc/apt/trusted.gpg.d/docker.asc
dest: /etc/apt/keyrings/docker.asc
mode: '0644'
force: true
force: false
checksum: "{{ docker_apt_gpg_key_checksum | default(omit) }}"
register: add_repository_key
ignore_errors: "{{ docker_apt_ignore_key_error }}"
when: docker_add_repo | bool
@@ -49,5 +43,6 @@
apt_repository:
repo: "{{ docker_apt_repository }}"
state: present
filename: "{{ docker_apt_filename }}"
update_cache: true
when: docker_add_repo | bool

View File

@@ -46,6 +46,11 @@
- name: Configure containerd on RHEL 8.
block:
- name: Ensure runc is not installed.
package:
name: runc
state: absent
- name: Ensure container-selinux is installed.
package:
name: container-selinux

View File

@@ -1,2 +1,3 @@
---
docker_packages: "docker"
docker_compose_package: docker-compose