Linuxhotel Wiki

Wie ging das nochmal?

Benutzer-Werkzeuge

Webseiten-Werkzeuge


admin_grundlagen:docker:build

Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen der Seite angezeigt.

Link zu der Vergleichsansicht

Beide Seiten, vorherige ÜberarbeitungVorherige Überarbeitung
Nächste Überarbeitung
Vorherige Überarbeitung
admin_grundlagen:docker:build [2026/02/22 12:55] – [Dockerfile - Docker Images weiterbauen] ingo_wichmannadmin_grundlagen:docker:build [2026/10/09 20:58] (aktuell) – ingo_wichmann
Zeile 1: Zeile 1:
-====== erstes Docker Image selbst bauen ======+====== Docker Image selbst bauen ======
 ===== Pakete ===== ===== Pakete =====
-  * Rocky Linux (9): +=== Rocky Linux (10): === 
-    * erst ''epel-release'' installieren (fügt neues Repository hinzu) +  dnf config-manager --enable crb 
-    * debootstrap +  dnf install -y epel-release 
-  * Debian (ab 12): debootstrap+  dnf install -y debootstrap 
 +=== Debian (ab 12) === 
 +  apt install -y debootstrap
  
-===== Image bauen =====+===== Image aus tar-Archiv bauen =====
 (( anders als das Image aus https://hub.docker.com/_/debian ist dieses Image nicht reproduzierbar )) (( anders als das Image aus https://hub.docker.com/_/debian ist dieses Image nicht reproduzierbar ))
 +  sudo debootstrap --variant=minbase trixie ./debian http://deb.debian.org/debian
 +(( im Linuxhotel-Netzwerk lokalen Spiegelserver benutzen:
   sudo debootstrap --variant=minbase trixie ./debian http://debian/debian   sudo debootstrap --variant=minbase trixie ./debian http://debian/debian
 +))
 +(( unter RockyLinux ''--keyring'' ergänzen:
 +  sudo debootstrap --variant=minbase --keyring=/usr/share/keyrings/debian-archive-trixie-stable.gpg trixie ./debian http://debian.linuxhotel.de/debian
 +))
   sudo tar cC debian/ . | docker image import - ingo/debian:trixie   sudo tar cC debian/ . | docker image import - ingo/debian:trixie
 Tag ''latest'' hinzufügen: Tag ''latest'' hinzufügen:
Zeile 16: Zeile 24:
  
 ==== testen ==== ==== testen ====
-  docker container run ingo/debian echo hello world +  docker container run --rm ingo/debian apt update 
- +-> Ausgabe von ''apt update'' ok?
-====== Dockerfile - Docker Images weiterbauen ====== +
-  mkdir nginx +
-  cd static_web +
-<file txt Dockerfile> +
-FROM ingo/debian:trixie +
-LABEL version="0.0.1" +
-LABEL maintainer="me@example.com" +
-ENV DEBIAN_FRONTEND=noninteractive +
-ENV REFRESHED_AT=2026-01-07 +
-RUN set -eux; \ +
-  apt-get -qq update; \ +
-  apt-get install -y --no-install-recommends nginx +
-RUN find / -xdev -user root -type f -perm /u+s -exec chmod u-s {} + +
-RUN echo 'A warm welcome from your Dockerfile' > /var/www/html/index.html +
-EXPOSE 80 +
-ENTRYPOINT ["/usr/sbin/nginx", "-g", "daemon off;"] +
-</file> +
-  docker build -t='ingo/nginx:0.0.1' . +
-  docker image ls +
-  docker container run -d -p 80:80 --name my_nginx ingo/nginx +
-  curl -s http://localhost:80 +
- +
-===== ENTRYPOINT / CMD / run-Command ===== +
-^ ''ENTRYPOINT'' ^ ''CMD'' ^ run-Command ^ ausgeführt wird ^ +
-|<code>["script.sh"]</code>|                          |                        | <code>script.sh</code> | +
-|<code>["script.sh"]</code>|                          | <code>/bin/dash</code> | <code>script.sh /bin/dash</code> | +
-|<code>["script.sh"]</code>| <code>["httpd"]</code>   |                        | <code>script.sh httpd</code> | +
-|<code>["script.sh"]</code>| <code>["httpd"]</code>   | <code>/bin/dash</code> | <code>script.sh /bin/dash</code> | +
-|                          | <code>["/bin/sh"]</code> |                        | <code>/bin/sh</code>   | +
-|                          | <code>["/bin/sh"]</code> | <code>/bin/dash</code> | <code>/bin/dash</code> | +
-|                          |                          |                        | <code>/bin/bash</code>((https://docs.docker.com/reference/dockerfile/#understand-how-cmd-and-entrypoint-interact sagt ''error, not allowed''. Docker Version 20.10.24+dfsg1 hat ''bash'' ausgeführt.)) | +
  
 +(( Wenn nicht:
 +  docker container run --rm ingo/debian cat /etc/resolv.conf
 +-> Nameserver kommt von Docker, nicht aus dem Image
  
 +Ändern mit:
 +  docker container run --rm --dns 192.168.1.5 ingo/debian:local cat /etc/resolv.conf
 +  docker container run --rm --dns 192.168.1.5 ingo/debian:local apt update
 +))
  
admin_grundlagen/docker/build.1771764936.txt.gz · Zuletzt geändert: 2026/02/22 12:55 von ingo_wichmann