Kurzanleitung: Ein neues Docker-Image installieren

Hier für mich selbst eine kleine Erinnerungshilfe, wenn ich auf einem bestehenden Docker-Host ein zusätzliches Docker-Abbild dauerhaft installieren und laufen lassen möchte.

Vorbedingungen

  • Ubuntu Server.
  • Docker ist bereits installiert.

Schritte

Anhand des Beispiels von syslog-ng (Einem Syslog-Server) sind nachfolgende Schritte beschrieben.

  1. Docker-Image downloaden: sudo docker pull linuxserver/syslog-ng aufrufen.
  2. Volume erstellen: sudo docker volume create ZetaSyslogNg.
  3. Docker-Image starten: docker run -d --name=syslog-ng -e PUID=1000 -e PGID=1000 -e TZ=Etc/UTC -p 514:5514/udp -p 601:6601/tcp -p 6514:6514/tcp -v ZetaSyslogNg:/config -v ZetaSyslogNg:/log #optional --restart unless-stopped lscr.io/linuxserver/syslog-ng:latest.

Ggf. ist Schritt 1 auch unnötig.

Im konkreten Fall meines syslog-ng-Images habe ich noch folgende Aktionen gemacht:

  1. sudo docker exec -it syslog-ng /bin/bash aufgerufen, um eine Shell in dem laufenden Image zu öffnen.
  2. Darin dann chmod 777 /var/log aufgerufen, damit Rechte für erstellen der Nachrichtendatei hat.
  3. Anschließend dann, immer noch innerhalb des Images, tail -f /var/log/messages aufgerufen, um neue Lognachrichten zu sehen.

Ggf. muss ich nach jedem Aktualisieren des Docker-Images obige Befehle nochmals aufrufen.

Im Fall von einem postgres-Image, bin ich folgendermaßen vorgegangen, um das Image zu starten:

docker run -d --name postgres -e POSTGRES_PASSWORD=MyPassword -e PGDATA=/var/lib/postgresql/data/pgdata -v ZetaPostgres:/var/lib/postgresql/data -p 5432:5432 --restart unless-stopped postgres

Anschließend habe ich von meinem lokalen Rechner via pgAdmin die Verbindung getestet.