UPDATE: ERKUNDUNG!
Mit diesem Befehl kannst du einen laufenden Docker-Container erkunden:
docker exec -it name-of-container bash
Das Äquivalent dafür in Docker-Compose wäre:
docker-compose exec web bash
(web ist der Name des Dienstes in diesem Fall und es hat standardmäßig tty.)
Einmal drinnen, führe aus:
ls -lsa
oder irgendeinen anderen Bash-Befehl wie:
cd ..
Mit diesem Befehl kannst du ein Docker-Image erkunden:
docker run --rm -it --entrypoint=/bin/bash name-of-image
einmal drinnen, führe aus:
ls -lsa
oder irgendeinen anderen Bash-Befehl wie:
cd ..
Das -it
steht für interaktiv... und tty.
Mit diesem Befehl kannst du einen laufenden Docker-Container oder ein Image inspizieren:
docker inspect name-of-container-or-image
Du könntest das tun und herausfinden, ob darin ein bash
oder sh
vorhanden ist. Suche nach dem Eintragspunkt oder der Befehlsliste im JSON-Output.
HINWEIS: Diese Antwort setzt voraus, dass gewöhnliche Tools vorhanden sind, aber falls kein bash
-Shell oder gewöhnliche Tools wie ls
vorhanden sind, könntest du zuerst einen in einer Schicht hinzufügen, wenn du Zugang zur Dockerfile
hast: Beispiel für Alpine:
RUN apk add --no-cache bash
Ansonsten, wenn du keinen Zugriff auf die Dockerfile
hast, kopiere einfach die Dateien aus einem neu erstellten Container und schaue sie dir durch, indem du folgendes machst:
docker create # gibt die Container-ID zurück, der Container wird nie gestartet.
docker cp :
docker rm
cd && ls -lsah
Siehe Docker exec Dokumentation
Sehe Docker-Compose exec Dokumentation
Sehe Docker inspect Dokumentation
Sehe Docker create Dokumentation