Hallo und vielen Dank für all eure Hinweise.

Das erstellen eines eigenen Service-/Unitfiles klingt mir am vielversprechendsten. Außerdem werde ich mal schauen ob es unter Ubuntu 24.04 im Gegensatz zu 22.04 vielleicht von selbst funktioniert. Es ist schon eine Ironie das ausgerechnet eine Containerregistry, die containerisiert daher kommt, nicht automatisch ordentlich startet.

Viele Grüße
Norman


On 21.02.25 21:28, Daniel Leidert wrote:
Am Freitag, dem 21.02.2025 um 21:02 +0100 schrieb Uwe Koloska:
Am Montag, dem 17.02.2025 um 20:20 +0100 schrieb N. Schwirz:

Du kannst hier entweder in der systemd .service-Datei das
Arbeitsverzeichnis definieren, z.B.

[Service]
User=meinuser
Group=docker
WorkingDirectory=/root/git/gitlab

Oder du gibt dem docker-compose-Befehl den Pfad zur docker-compose-
Datei mit. Ich würde erstes empfehlen.

@daniel: Von welcher systemd service-Datei redest du?

Ich hatte den OP zu schnell gelesen. Ich dachte, der OP startet aus
einer systemd .service Datei den Verbund und wäre der Meinung, das
ginge nicht weil er docker-compose im Verzeichnis ausführen muss, in
dem die docker-compose.yaml liegt. Daher mein Hinweis. Ich sehe nun,
dass ich zu schnell gelesen habe.

Unabhängig davon kann man einen derartigen Verbund natürlich auch via
selbst geschriebener Service-Datei laufen lassen. Als Beispiel:

----------------------------------------------
[Unit]
Description=Foo Docker Service
Requires=docker.service
After=network.target docker.service
ConditionPathExists=/srv/foo/docker-compose.yml

[Service]
User=user
Group=docker
WorkingDirectory=/srv/foo
Environment=FOO_HOME=/srv/foo/data
ExecStartPre=/usr/bin/docker-compose pull --include-deps
ExecStart=/usr/bin/docker-compose up
ExecReload=/usr/bin/docker-compose restart -t 30
ExecStop=/usr/bin/docker-compose down --remove-orphans
Restart=on-failure

[Install]
WantedBy=multi-user.target
Alias=docker-foo.service
-----------------------------------------------

Wenn Docker die Container nicht automatisch startet, ist das eine
Alternative.

VG Daniel


Antwort per Email an