The Docker 19.04 -> 20.10 upgrade contains the following change in `/usr/lib/systemd/system/docker.service`: ``` -BindsTo=containerd.service -After=network-online.target firewalld.service containerd.service +After=network-online.target firewalld.service containerd.service multi-user.target -Requires=docker.socket +Requires=docker.socket containerd.service Wants=network-online.target ``` The `multi-user.target` requirement in `After` seems to be in conflict with our `WantedBy=multi-user.target` and `After=docker.service` / `Requires=docker.service` definitions, causing the following error on startup for all of our systemd services: > Job matrix-synapse.service/start deleted to break ordering cycle starting with multi-user.target/start A workaround which appears to work is to add `DefaultDependencies=no` to all of our services.pull/749/head
| @@ -8,6 +8,7 @@ After={{ service }} | |||||
| {% for service in matrix_bot_matrix_reminder_bot_systemd_wanted_services_list %} | {% for service in matrix_bot_matrix_reminder_bot_systemd_wanted_services_list %} | ||||
| Wants={{ service }} | Wants={{ service }} | ||||
| {% endfor %} | {% endfor %} | ||||
| DefaultDependencies=no | |||||
| [Service] | [Service] | ||||
| Type=simple | Type=simple | ||||
| @@ -8,6 +8,7 @@ After={{ service }} | |||||
| {% for service in matrix_appservice_discord_systemd_wanted_services_list %} | {% for service in matrix_appservice_discord_systemd_wanted_services_list %} | ||||
| Wants={{ service }} | Wants={{ service }} | ||||
| {% endfor %} | {% endfor %} | ||||
| DefaultDependencies=no | |||||
| [Service] | [Service] | ||||
| Type=simple | Type=simple | ||||
| @@ -8,6 +8,7 @@ After={{ service }} | |||||
| {% for service in matrix_appservice_irc_systemd_wanted_services_list %} | {% for service in matrix_appservice_irc_systemd_wanted_services_list %} | ||||
| Wants={{ service }} | Wants={{ service }} | ||||
| {% endfor %} | {% endfor %} | ||||
| DefaultDependencies=no | |||||
| [Service] | [Service] | ||||
| Type=simple | Type=simple | ||||
| @@ -8,6 +8,7 @@ After={{ service }} | |||||
| {% for service in matrix_appservice_slack_systemd_wanted_services_list %} | {% for service in matrix_appservice_slack_systemd_wanted_services_list %} | ||||
| Wants={{ service }} | Wants={{ service }} | ||||
| {% endfor %} | {% endfor %} | ||||
| DefaultDependencies=no | |||||
| [Service] | [Service] | ||||
| Type=simple | Type=simple | ||||
| @@ -8,6 +8,7 @@ After={{ service }} | |||||
| {% for service in matrix_appservice_webhooks_systemd_wanted_services_list %} | {% for service in matrix_appservice_webhooks_systemd_wanted_services_list %} | ||||
| Wants={{ service }} | Wants={{ service }} | ||||
| {% endfor %} | {% endfor %} | ||||
| DefaultDependencies=no | |||||
| [Service] | [Service] | ||||
| Type=simple | Type=simple | ||||
| @@ -8,6 +8,7 @@ After={{ service }} | |||||
| {% for service in matrix_mautrix_facebook_systemd_wanted_services_list %} | {% for service in matrix_mautrix_facebook_systemd_wanted_services_list %} | ||||
| Wants={{ service }} | Wants={{ service }} | ||||
| {% endfor %} | {% endfor %} | ||||
| DefaultDependencies=no | |||||
| [Service] | [Service] | ||||
| Type=simple | Type=simple | ||||
| @@ -8,6 +8,7 @@ After={{ service }} | |||||
| {% for service in matrix_mautrix_hangouts_systemd_wanted_services_list %} | {% for service in matrix_mautrix_hangouts_systemd_wanted_services_list %} | ||||
| Wants={{ service }} | Wants={{ service }} | ||||
| {% endfor %} | {% endfor %} | ||||
| DefaultDependencies=no | |||||
| [Service] | [Service] | ||||
| Type=simple | Type=simple | ||||
| @@ -8,6 +8,7 @@ After={{ service }} | |||||
| {% for service in matrix_mautrix_telegram_systemd_wanted_services_list %} | {% for service in matrix_mautrix_telegram_systemd_wanted_services_list %} | ||||
| Wants={{ service }} | Wants={{ service }} | ||||
| {% endfor %} | {% endfor %} | ||||
| DefaultDependencies=no | |||||
| [Service] | [Service] | ||||
| Type=simple | Type=simple | ||||
| @@ -8,6 +8,7 @@ After={{ service }} | |||||
| {% for service in matrix_mautrix_whatsapp_systemd_wanted_services_list %} | {% for service in matrix_mautrix_whatsapp_systemd_wanted_services_list %} | ||||
| Wants={{ service }} | Wants={{ service }} | ||||
| {% endfor %} | {% endfor %} | ||||
| DefaultDependencies=no | |||||
| [Service] | [Service] | ||||
| Type=simple | Type=simple | ||||
| @@ -8,6 +8,7 @@ After={{ service }} | |||||
| {% for service in matrix_mx_puppet_discord_systemd_wanted_services_list %} | {% for service in matrix_mx_puppet_discord_systemd_wanted_services_list %} | ||||
| Wants={{ service }} | Wants={{ service }} | ||||
| {% endfor %} | {% endfor %} | ||||
| DefaultDependencies=no | |||||
| [Service] | [Service] | ||||
| Type=simple | Type=simple | ||||
| @@ -8,6 +8,7 @@ After={{ service }} | |||||
| {% for service in matrix_mx_puppet_instagram_systemd_wanted_services_list %} | {% for service in matrix_mx_puppet_instagram_systemd_wanted_services_list %} | ||||
| Wants={{ service }} | Wants={{ service }} | ||||
| {% endfor %} | {% endfor %} | ||||
| DefaultDependencies=no | |||||
| [Service] | [Service] | ||||
| Type=simple | Type=simple | ||||
| @@ -8,6 +8,7 @@ After={{ service }} | |||||
| {% for service in matrix_mx_puppet_skype_systemd_wanted_services_list %} | {% for service in matrix_mx_puppet_skype_systemd_wanted_services_list %} | ||||
| Wants={{ service }} | Wants={{ service }} | ||||
| {% endfor %} | {% endfor %} | ||||
| DefaultDependencies=no | |||||
| [Service] | [Service] | ||||
| Type=simple | Type=simple | ||||
| @@ -8,6 +8,7 @@ After={{ service }} | |||||
| {% for service in matrix_mx_puppet_slack_systemd_wanted_services_list %} | {% for service in matrix_mx_puppet_slack_systemd_wanted_services_list %} | ||||
| Wants={{ service }} | Wants={{ service }} | ||||
| {% endfor %} | {% endfor %} | ||||
| DefaultDependencies=no | |||||
| [Service] | [Service] | ||||
| Type=simple | Type=simple | ||||
| @@ -8,6 +8,7 @@ After={{ service }} | |||||
| {% for service in matrix_mx_puppet_steam_systemd_wanted_services_list %} | {% for service in matrix_mx_puppet_steam_systemd_wanted_services_list %} | ||||
| Wants={{ service }} | Wants={{ service }} | ||||
| {% endfor %} | {% endfor %} | ||||
| DefaultDependencies=no | |||||
| [Service] | [Service] | ||||
| Type=simple | Type=simple | ||||
| @@ -8,6 +8,7 @@ After={{ service }} | |||||
| {% for service in matrix_mx_puppet_twitter_systemd_wanted_services_list %} | {% for service in matrix_mx_puppet_twitter_systemd_wanted_services_list %} | ||||
| Wants={{ service }} | Wants={{ service }} | ||||
| {% endfor %} | {% endfor %} | ||||
| DefaultDependencies=no | |||||
| [Service] | [Service] | ||||
| Type=simple | Type=simple | ||||
| @@ -8,6 +8,7 @@ After={{ service }} | |||||
| {% for service in matrix_sms_bridge_systemd_wanted_services_list %} | {% for service in matrix_sms_bridge_systemd_wanted_services_list %} | ||||
| Wants={{ service }} | Wants={{ service }} | ||||
| {% endfor %} | {% endfor %} | ||||
| DefaultDependencies=no | |||||
| [Service] | [Service] | ||||
| Type=simple | Type=simple | ||||
| @@ -5,6 +5,7 @@ Description=Matrix Element server | |||||
| Requires={{ service }} | Requires={{ service }} | ||||
| After={{ service }} | After={{ service }} | ||||
| {% endfor %} | {% endfor %} | ||||
| DefaultDependencies=no | |||||
| [Service] | [Service] | ||||
| Type=simple | Type=simple | ||||
| @@ -5,6 +5,7 @@ Description=Matrix Corporal | |||||
| Requires={{ service }} | Requires={{ service }} | ||||
| After={{ service }} | After={{ service }} | ||||
| {% endfor %} | {% endfor %} | ||||
| DefaultDependencies=no | |||||
| [Service] | [Service] | ||||
| Type=simple | Type=simple | ||||
| @@ -5,6 +5,7 @@ Description=Matrix Coturn server | |||||
| Requires={{ service }} | Requires={{ service }} | ||||
| After={{ service }} | After={{ service }} | ||||
| {% endfor %} | {% endfor %} | ||||
| DefaultDependencies=no | |||||
| [Service] | [Service] | ||||
| Type=simple | Type=simple | ||||
| @@ -3,6 +3,7 @@ | |||||
| Description=Matrix Dimension | Description=Matrix Dimension | ||||
| After=docker.service | After=docker.service | ||||
| Requires=docker.service | Requires=docker.service | ||||
| DefaultDependencies=no | |||||
| [Service] | [Service] | ||||
| Type=simple | Type=simple | ||||
| @@ -8,6 +8,7 @@ After={{ service }} | |||||
| {% for service in matrix_dynamic_dns_systemd_wanted_services_list %} | {% for service in matrix_dynamic_dns_systemd_wanted_services_list %} | ||||
| Wants={{ service }} | Wants={{ service }} | ||||
| {% endfor %} | {% endfor %} | ||||
| DefaultDependencies=no | |||||
| [Service] | [Service] | ||||
| Type=simple | Type=simple | ||||
| @@ -3,6 +3,7 @@ | |||||
| Description=Email2Matrix | Description=Email2Matrix | ||||
| After=docker.service | After=docker.service | ||||
| Requires=docker.service | Requires=docker.service | ||||
| DefaultDependencies=no | |||||
| [Service] | [Service] | ||||
| Type=simple | Type=simple | ||||
| @@ -5,6 +5,7 @@ Description=Matrix jitsi-jicofo server | |||||
| Requires={{ service }} | Requires={{ service }} | ||||
| After={{ service }} | After={{ service }} | ||||
| {% endfor %} | {% endfor %} | ||||
| DefaultDependencies=no | |||||
| [Service] | [Service] | ||||
| Type=simple | Type=simple | ||||
| @@ -5,6 +5,7 @@ Description=Matrix jitsi-jvb server | |||||
| Requires={{ service }} | Requires={{ service }} | ||||
| After={{ service }} | After={{ service }} | ||||
| {% endfor %} | {% endfor %} | ||||
| DefaultDependencies=no | |||||
| [Service] | [Service] | ||||
| Type=simple | Type=simple | ||||
| @@ -5,6 +5,7 @@ Description=Matrix jitsi-prosody server | |||||
| Requires={{ service }} | Requires={{ service }} | ||||
| After={{ service }} | After={{ service }} | ||||
| {% endfor %} | {% endfor %} | ||||
| DefaultDependencies=no | |||||
| [Service] | [Service] | ||||
| Type=simple | Type=simple | ||||
| @@ -5,6 +5,7 @@ Description=Matrix jitsi-web server | |||||
| Requires={{ service }} | Requires={{ service }} | ||||
| After={{ service }} | After={{ service }} | ||||
| {% endfor %} | {% endfor %} | ||||
| DefaultDependencies=no | |||||
| [Service] | [Service] | ||||
| Type=simple | Type=simple | ||||
| @@ -8,6 +8,7 @@ After={{ service }} | |||||
| {% for service in matrix_ma1sd_systemd_wanted_services_list %} | {% for service in matrix_ma1sd_systemd_wanted_services_list %} | ||||
| Wants={{ service }} | Wants={{ service }} | ||||
| {% endfor %} | {% endfor %} | ||||
| DefaultDependencies=no | |||||
| [Service] | [Service] | ||||
| Type=simple | Type=simple | ||||
| @@ -3,6 +3,7 @@ | |||||
| Description=Matrix mailer | Description=Matrix mailer | ||||
| After=docker.service | After=docker.service | ||||
| Requires=docker.service | Requires=docker.service | ||||
| DefaultDependencies=no | |||||
| [Service] | [Service] | ||||
| Type=simple | Type=simple | ||||
| @@ -8,6 +8,7 @@ After={{ service }} | |||||
| {% for service in matrix_nginx_proxy_systemd_wanted_services_list %} | {% for service in matrix_nginx_proxy_systemd_wanted_services_list %} | ||||
| Wants={{ service }} | Wants={{ service }} | ||||
| {% endfor %} | {% endfor %} | ||||
| DefaultDependencies=no | |||||
| [Service] | [Service] | ||||
| Type=simple | Type=simple | ||||
| @@ -3,6 +3,7 @@ | |||||
| Description=Matrix Postgres server | Description=Matrix Postgres server | ||||
| After=docker.service | After=docker.service | ||||
| Requires=docker.service | Requires=docker.service | ||||
| DefaultDependencies=no | |||||
| [Service] | [Service] | ||||
| Type=simple | Type=simple | ||||
| @@ -8,6 +8,7 @@ After={{ service }} | |||||
| {% for service in matrix_registration_systemd_wanted_services_list %} | {% for service in matrix_registration_systemd_wanted_services_list %} | ||||
| Wants={{ service }} | Wants={{ service }} | ||||
| {% endfor %} | {% endfor %} | ||||
| DefaultDependencies=no | |||||
| [Service] | [Service] | ||||
| Type=simple | Type=simple | ||||
| @@ -8,6 +8,7 @@ After={{ service }} | |||||
| {% for service in matrix_synapse_admin_systemd_wanted_services_list %} | {% for service in matrix_synapse_admin_systemd_wanted_services_list %} | ||||
| Wants={{ service }} | Wants={{ service }} | ||||
| {% endfor %} | {% endfor %} | ||||
| DefaultDependencies=no | |||||
| [Service] | [Service] | ||||
| Type=simple | Type=simple | ||||
| @@ -3,6 +3,7 @@ | |||||
| Description=Matrix Goofys media store | Description=Matrix Goofys media store | ||||
| After=docker.service | After=docker.service | ||||
| Requires=docker.service | Requires=docker.service | ||||
| DefaultDependencies=no | |||||
| [Service] | [Service] | ||||
| Type=simple | Type=simple | ||||
| @@ -8,6 +8,7 @@ After={{ service }} | |||||
| {% for service in matrix_synapse_systemd_wanted_services_list %} | {% for service in matrix_synapse_systemd_wanted_services_list %} | ||||
| Wants={{ service }} | Wants={{ service }} | ||||
| {% endfor %} | {% endfor %} | ||||
| DefaultDependencies=no | |||||
| [Service] | [Service] | ||||
| Type=simple | Type=simple | ||||