X-Git-Url: https://git.openstreetmap.org./chef.git/blobdiff_plain/e261b6f728d5bfceb9a98d5e35b29915afd49035..50aea11082eaa90bd37593b9c987d38a082f4e1b:/cookbooks/docker/recipes/default.rb diff --git a/cookbooks/docker/recipes/default.rb b/cookbooks/docker/recipes/default.rb index bfdc88a09..1c8643d03 100644 --- a/cookbooks/docker/recipes/default.rb +++ b/cookbooks/docker/recipes/default.rb @@ -17,12 +17,13 @@ # limitations under the License. # -include_recipe "apt" +include_recipe "apt::docker" package %w[ docker-ce docker-ce-cli containerd.io + docker-compose-plugin ] directory "/etc/docker" do @@ -31,21 +32,41 @@ directory "/etc/docker" do mode "755" end -storage_driver = if kitchen? - "vfs" - else - "overlay2" - end - template "/etc/docker/daemon.json" do source "daemon.json.erb" owner "root" group "root" mode "644" - variables :storage_driver => storage_driver +end + +service "containerd" do + action [:enable, :start] + subscribes :restart, "template[/etc/docker/daemon.json]" end service "docker" do action [:enable, :start] subscribes :restart, "template[/etc/docker/daemon.json]" end + +systemd_service "docker-system-prune" do + description "Cleanup up unused docker images and containers" + after ["docker.service"] + wants ["docker.service"] + user "root" + exec_start "/usr/bin/docker system prune --all --force" + sandbox :enable_network => true + memory_deny_write_execute false + restrict_address_families "AF_UNIX" +end + +systemd_timer "docker-system-prune" do + description "Cleanup up unused docker images and containers" + on_boot_sec "2h" + on_unit_active_sec "7d" + randomized_delay_sec "4h" +end + +service "docker-system-prune.timer" do + action [:enable, :start] +end