From 3257e44002cd62097c70a80368fb0228f0f86809 Mon Sep 17 00:00:00 2001 From: Jesse Luehrs Date: Thu, 22 Jul 2021 20:37:21 -0400 Subject: switch back to docker podman-compose doesn't handle networking properly yet (https://github.com/containers/podman-compose/issues/119) --- manifests/mail.pp | 2 +- modules/docker/manifests/init.pp | 11 +++++++++++ modules/mail/files/learn_spam | 12 ++++++------ modules/mail/files/mailu.service | 4 ++-- modules/mail/manifests/mailu.pp | 9 +++------ modules/mail/templates/docker-compose.yml.erb | 18 +++++++++--------- modules/podman/manifests/compose.pp | 19 ------------------- 7 files changed, 32 insertions(+), 43 deletions(-) create mode 100644 modules/docker/manifests/init.pp delete mode 100644 modules/podman/manifests/compose.pp diff --git a/manifests/mail.pp b/manifests/mail.pp index 5a49456..15063cf 100644 --- a/manifests/mail.pp +++ b/manifests/mail.pp @@ -5,7 +5,7 @@ node 'mail', 'mail.localdomain' { class { 'base': extra_script => " - (cd /media/persistent && sudo podman-compose pull -q) + (cd /media/persistent && sudo docker-compose pull -q) "; } diff --git a/modules/docker/manifests/init.pp b/modules/docker/manifests/init.pp new file mode 100644 index 0000000..6e24d17 --- /dev/null +++ b/modules/docker/manifests/init.pp @@ -0,0 +1,11 @@ +class docker { + package { "docker-compose": + ensure => installed; + } + + service { "docker": + ensure => running, + enable => true, + require => Package["docker-compose"]; + } +} diff --git a/modules/mail/files/learn_spam b/modules/mail/files/learn_spam index cc075f3..ccdc999 100644 --- a/modules/mail/files/learn_spam +++ b/modules/mail/files/learn_spam @@ -18,11 +18,11 @@ container_spam="${container_dir}/spam" find /media/persistent/mail -type f -mtime -30 | grep /cur/ | grep -v Sent | grep -v Junk | xargs -i ln {} "${dir}/ham" find /media/persistent/mail -type f -mtime -30 | grep /cur/ | grep -v Sent | grep Junk | xargs -i ln {} "${dir}/spam" -podman-compose exec imap rspamc -h antispam:11334 -P mailu learn_ham "$container_ham" >/dev/null || true -podman-compose exec imap rspamc -h antispam:11334 -P mailu learn_spam "$container_spam" >/dev/null || true +docker-compose exec imap rspamc -h antispam:11334 -P mailu learn_ham "$container_ham" > /dev/null || true +docker-compose exec imap rspamc -h antispam:11334 -P mailu learn_spam "$container_spam" > /dev/null || true -podman-compose exec imap rspamc -h antispam:11334 -P mailu -f 13 fuzzy_add "$container_ham" >/dev/null || true -podman-compose exec imap rspamc -h antispam:11334 -P mailu -f 11 fuzzy_del "$container_ham" >/dev/null || true +docker-compose exec imap rspamc -h antispam:11334 -P mailu -f 13 fuzzy_add "$container_ham" > /dev/null || true +docker-compose exec imap rspamc -h antispam:11334 -P mailu -f 11 fuzzy_del "$container_ham" > /dev/null || true -podman-compose exec imap rspamc -h antispam:11334 -P mailu -f 11 fuzzy_add "$container_spam" >/dev/null || true -podman-compose exec imap rspamc -h antispam:11334 -P mailu -f 13 fuzzy_del "$container_spam" >/dev/null || true +docker-compose exec imap rspamc -h antispam:11334 -P mailu -f 11 fuzzy_add "$container_spam" > /dev/null || true +docker-compose exec imap rspamc -h antispam:11334 -P mailu -f 13 fuzzy_del "$container_spam" > /dev/null || true diff --git a/modules/mail/files/mailu.service b/modules/mail/files/mailu.service index dc33d91..14fdd93 100644 --- a/modules/mail/files/mailu.service +++ b/modules/mail/files/mailu.service @@ -3,8 +3,8 @@ Description = runs mailu After=network.target [Service] -ExecStart=/usr/bin/podman-compose up -ExecStop=/usr/bin/podman-compose down +ExecStart=/usr/bin/docker-compose up +ExecStop=/usr/bin/docker-compose down Restart=always WorkingDirectory=/media/persistent diff --git a/modules/mail/manifests/mailu.pp b/modules/mail/manifests/mailu.pp index f15006c..169b9d9 100644 --- a/modules/mail/manifests/mailu.pp +++ b/modules/mail/manifests/mailu.pp @@ -1,6 +1,6 @@ class mail::mailu { include mail::persistent - include podman::compose + include docker package { "opendkim": ensure => installed; @@ -92,15 +92,12 @@ class mail::mailu { } exec { "compile sieve scripts": - command => "/usr/bin/podman-compose exec -T -u mail imap sievec /overrides/sieve/filters.sieve", + command => "/usr/bin/docker-compose exec -T -u mail imap sievec /overrides/sieve/filters.sieve", cwd => "/media/persistent", refreshonly => true, tries => 12, try_sleep => 15, - require => [ - Package::Makepkg['podman-compose-git'], - Service["mailu"], - ]; + require => Service["mailu"]; } systemd::service { "mailu": diff --git a/modules/mail/templates/docker-compose.yml.erb b/modules/mail/templates/docker-compose.yml.erb index 4d21bb1..f31c1cf 100644 --- a/modules/mail/templates/docker-compose.yml.erb +++ b/modules/mail/templates/docker-compose.yml.erb @@ -8,14 +8,14 @@ services: # External dependencies redis: - image: docker.io/redis:alpine + image: redis:alpine restart: always volumes: - "/media/persistent/redis:/data" # Core services front: - image: docker.io/mailu/nginx:${MAILU_VERSION:-1.7} + image: ${DOCKER_ORG:-mailu}/${DOCKER_PREFIX:-}nginx:${MAILU_VERSION:-1.7} restart: always env_file: mailu.env logging: @@ -35,7 +35,7 @@ services: - "/media/persistent/overrides/nginx:/overrides" resolver: - image: docker.io/mailu/unbound:${MAILU_VERSION:-1.7} + image: ${DOCKER_ORG:-mailu}/${DOCKER_PREFIX:-}unbound:${MAILU_VERSION:-1.7} env_file: mailu.env restart: always networks: @@ -43,7 +43,7 @@ services: ipv4_address: 192.168.203.254 admin: - image: docker.io/mailu/admin:${MAILU_VERSION:-1.7} + image: ${DOCKER_ORG:-mailu}/${DOCKER_PREFIX:-}admin:${MAILU_VERSION:-1.7} restart: always env_file: mailu.env volumes: @@ -53,7 +53,7 @@ services: - redis imap: - image: docker.io/mailu/dovecot:${MAILU_VERSION:-1.7} + image: ${DOCKER_ORG:-mailu}/${DOCKER_PREFIX:-}dovecot:${MAILU_VERSION:-1.7} restart: always env_file: mailu.env volumes: @@ -63,7 +63,7 @@ services: - front smtp: - image: docker.io/mailu/postfix:${MAILU_VERSION:-1.7} + image: ${DOCKER_ORG:-mailu}/${DOCKER_PREFIX:-}postfix:${MAILU_VERSION:-1.7} restart: always env_file: mailu.env volumes: @@ -75,7 +75,7 @@ services: - 192.168.203.254 antispam: - image: docker.io/mailu/rspamd:${MAILU_VERSION:-1.7} + image: ${DOCKER_ORG:-mailu}/${DOCKER_PREFIX:-}rspamd:${MAILU_VERSION:-1.7} restart: always env_file: mailu.env volumes: @@ -91,7 +91,7 @@ services: # Optional services webdav: - image: docker.io/mailu/radicale:${MAILU_VERSION:-1.7} + image: ${DOCKER_ORG:-mailu}/${DOCKER_PREFIX:-}radicale:${MAILU_VERSION:-1.7} restart: always env_file: mailu.env volumes: @@ -100,7 +100,7 @@ services: # Webmail webmail: - image: docker.io/mailu/rainloop:${MAILU_VERSION:-1.7} + image: ${DOCKER_ORG:-mailu}/${DOCKER_PREFIX:-}rainloop:${MAILU_VERSION:-1.7} restart: always env_file: mailu.env volumes: diff --git a/modules/podman/manifests/compose.pp b/modules/podman/manifests/compose.pp deleted file mode 100644 index 56eeeef..0000000 --- a/modules/podman/manifests/compose.pp +++ /dev/null @@ -1,19 +0,0 @@ -class podman::compose { - include git - include podman - - package { ['python-yaml', 'python-setuptools']: - ensure => installed, - install_options => ["--asdeps"]; - } - - package::makepkg { 'podman-compose-git': - ensure => installed, - require => [ - Package["podman"], - Package["python-yaml"], - Package["git"], - Package["python-setuptools"], - ]; - } -} -- cgit v1.2.3