Hi!
Kurz vorweg. Ich stehe beim Bau von Docker-Containern noch ziemlich am Anfang und habe mich mit dem Thema Webserver auch schon ewig nicht mehr beschäftigt. Trotzdem möchte ich gerne ein paar Dinge ausprobieren und dazu gehört unter anderem, eine einfache statische Website in einem Docker-Container anzeigen zu lassen. Dazu habe ich bereits jede Menge Anleitungen und YouTube-Videos konsumiert.
Alle für mich relevanten Anleitungen haben dabei eins gemeinsam. Sie kopieren innerhalb des Dockerfile eine selbst erstellte index.html nach /usr/share/nginx/html. Das geschieht über diesen Befehl
Das Dumme ist nur, das nach dem Bau und Start des Containers mir anstatt meiner eigenen index.html, die Willkommensseite von Nginx angezeigt wird, welche vermutlich unter /var/www/html/index.nginx-debian.html liegt. Änder’ ich jedoch den Pfad im Dockerfile von /usr/share/nginx/html auf /var/www/html erhalte ich als Antwort ein "403 Forbidden".
Kann mir vielleicht jemand erklären, was genau ich falsch mache? Anbei noch mein Dockerfile. Zuvor möchte ich noch erwähnen, das ich das alles im Vorfeld auch mit dem gängigen Image nginx:alpine getestet habe, jedoch mit dem gleichen Ergebnis. Da ich den Container aber ausschließlich auf einem UGREEN-NAS laufen lassen möchte und in meinen Kopf noch weitere Visionen herumschwirren, habe ich zunächst ein debian:bookworm-slim Image verwendet und nginx in einem weiteren Schritt nachinstalliert.
# Use the official image as a parent image
FROM debian:bookworm-slim
# Update the system
RUN apt update && \
apt upgrade -y && \
apt install -y mc && \
apt install -y nano && \
apt install nginx -y
# Expose the Webservice ports
EXPOSE 80
#Copy website-content
COPY index.html /usr/share/nginx/html
# Run nginx
CMD ["nginx", "-g", "daemon off;"]
Display More
Ich würde mich wirklich sehr freuen, wenn mir hierbei jemand helfen könnte.
Tommes