admin_grundlagen:docker:apache_httpd_mit_docker
Unterschiede
Hier werden die Unterschiede zwischen zwei Versionen der Seite angezeigt.
| Nächste Überarbeitung | Vorherige Überarbeitung | ||
| admin_grundlagen:docker:apache_httpd_mit_docker [2026/01/25 13:48] – angelegt ingo_wichmann | admin_grundlagen:docker:apache_httpd_mit_docker [2026/10/13 12:22] (aktuell) – Use explicit registry path natureshadow2 | ||
|---|---|---|---|
| Zeile 1: | Zeile 1: | ||
| ====== Apache httpd von Docker ====== | ====== Apache httpd von Docker ====== | ||
| siehe https:// | siehe https:// | ||
| - | |||
| - | ==== Hinweis für Podman ==== | ||
| - | |||
| - | Für podmand '' | ||
| ===== persistente Daten für den Container anlegen ===== | ===== persistente Daten für den Container anlegen ===== | ||
| + | ++++ Podman | | ||
| + | Wenn SELinux aktiv ist, vielleicht ''/ | ||
| + | ++++ | ||
| mkdir -p / | mkdir -p / | ||
| cd / | cd / | ||
| Zeile 20: | Zeile 19: | ||
| </ | </ | ||
| ===== erster Start ===== | ===== erster Start ===== | ||
| - | | + | ++++ podman | |
| + | Wenn SELinux aktiv ist '': | ||
| + | podman run -d --name hello-httpd -p 8888:80 -v '/ | ||
| + | ++++ | ||
| + | | ||
| -> http:// | -> http:// | ||
| curl http:// | curl http:// | ||
| - | Betreten | + | WorkingDir herausfinden: |
| - | docker exec -it hello-httpd /bin/bash | + | docker container inspect hello-httpd | jq -r ' |
| + | )) | ||
| + | docker container inspect -f ' | ||
| + | |||
| + | Mounts herausfinden: | ||
| + | docker container inspect -f '{{ json .Mounts }}' hello-httpd | jq | ||
| + | |||
| + | Betreten | ||
| + | docker | ||
| ls conf/ | ls conf/ | ||
| exit | exit | ||
| - | Instanz | + | Container |
| - | docker | + | docker |
| - | docker rm hello-httpd | + | |
| ===== Start mit eigener Konfigurationsdatei ===== | ===== Start mit eigener Konfigurationsdatei ===== | ||
| - | ==== manuell | + | ==== mit Konfigurationsdatei im Volume |
| Extrahieren der Konfigurationsdatei: | Extrahieren der Konfigurationsdatei: | ||
| cd / | cd / | ||
| - | docker run --rm httpd:2.4 cat / | + | docker |
| Konfigurationsdatei bearbeiten: | Konfigurationsdatei bearbeiten: | ||
| sed -i.bak ' | sed -i.bak ' | ||
| diff httpd.conf{, | diff httpd.conf{, | ||
| Starten: | Starten: | ||
| - | docker run -d --name httpd_8001 -p 8888:8001 -v '/ | + | docker |
| -> http:// | -> http:// | ||
| - | Löschen: | + | Container löschen: |
| - | docker | + | docker |
| - | docker | + | |
| ==== mit Dockerfile ==== | ==== mit Dockerfile ==== | ||
| - | TODO: | ||
| <code Dockerfile Dockerfile> | <code Dockerfile Dockerfile> | ||
| FROM httpd:2.4 | FROM httpd:2.4 | ||
| - | CMD sed -i ' | + | RUN sed -i.bak ' |
| + | EXPOSE 8001/tcp | ||
| + | </ | ||
| + | docker build -t=' | ||
| + | docker container run -d -P ingo/ | ||
| + | docker container ls | ||
| + | -> '' | ||
| + | |||
| + | Problem: im Image '' | ||
| + | |||
| + | docker image inspect | ||
| + | -> altes '' | ||
| + | |||
| + | ++++ Das zu lösen ist komplizierter| | ||
| + | |||
| + | docker image history --no-trunc httpd:2.4 | ||
| + | -> alle Anweisungen rauskopieren, | ||
| + | |||
| + | <code Dockerfile Dockerfile> | ||
| + | FROM docker.io/ | ||
| + | RUN sed -i.bak ' | ||
| + | |||
| + | FROM scratch | ||
| + | COPY --from=build / / | ||
| + | ENV HTTPD_PREFIX=/ | ||
| + | ENV PATH=/ | ||
| + | ENV HTTPD_VERSION=2.4.66 | ||
| + | ENV HTTPD_SHA256=94d7ff2b42acbb828e870ba29e4cbad48e558a79c623ad3596e4116efcfea25a | ||
| + | ENV HTTPD_PATCHES= | ||
| + | CMD [" | ||
| + | EXPOSE 8001/tcp | ||
| </ | </ | ||
| + | docker build -t=' | ||
| + | docker container run -d -P ingo/ | ||
| + | docker container ls | ||
| + | -> '' | ||
| + | ++++ | ||
admin_grundlagen/docker/apache_httpd_mit_docker.1769348914.txt.gz · Zuletzt geändert: 2026/01/25 13:48 von ingo_wichmann
