Vielen Dank für das Lesen meines Beitrags.Wie docker exec eine Shell builtin Docker Container speziell auf Ubuntu Docker Bild/Container
Problem:
# docker ps
CONTAINER ID IMAGE COMMAND
35c8b832403a ubuntu1604:1 "sh -c /bin/sh"
# docker exec -i -t 35c8b832403a type type
rpc error: code = 2 desc = oci runtime error: exec failed: container_linux.go:262: starting container process caused "exec: \"type\": executable file not found in $PATH"
# Dockerfile
FROM ubuntu:16.04
ENV PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
RUN apt-get update && apt-get -y upgrade
ENTRYPOINT ["sh", "-c"]
CMD ["/bin/bash"]
Beschreibung:
Mein Ziel ist es, "Typ" shell builtin gewesen in einer Art und Weise exec des Schreibens Docker wie unten
Docker exec ausführen zu erhalten -i-t 35c8b832403a Typ Typ (FAILED)
NICHT
Docker exec -i -t 35c8b832403a sh -c "type Typ" (PASSED)
Ich habe googeln um, in dem Behälter eine gewisse Modifikation tun (ändern/etc/profile,/etc/environment , bashrc) aber gescheitert.
Von der Docker Dokumentation selbst, hat es heißt es:
COMMAND im Standardverzeichnis des Behälters ausgeführt wird. Es hat das zugrundeliegende Bild ein benutzerdefiniertes Verzeichnis, das mit der WORKDIR Richtlinie in seiner Dockerfile spezifiziert wird, dieses wird stattdessen benutzt.
COMMAND sollte eine ausführbare Datei sein, ein verketteter oder ein quotierter Befehl wird nicht funktionieren. Beispiel: Andockfenster exec -ti my_container "echo ein & & b echo" wird nicht funktionieren, aber Docker exec -ti my_container sh -c "echo ein & & Echo b" wird.
aber scheint es IST MÖGLICH, wenn ich in der Lage die richtige Ausgabe VON DOCKER FEDORA zu erhalten (Dockerfile: FROM Filzhut: 25)
# docker ps
CONTAINER ID IMAGE COMMAND
2a17b2338518 fedora25:1 "sh -c /bin/sh"
# docker exec -i -t 2a17b2338518 type type
type is a shell builtin
Frage:
Ist Gibt es eine Möglichkeit, dies auf Ubuntu Docker zu aktivieren? Bild/Container optimiert? Vagrantfile Konfiguration? Bitte helfen Sie.
Andere: in der Dockerfile
Mit Docker laufen, ich in der Lage wegen des "ENTRYPOINT" die richtige Ausgabe zu erhalten. Jedoch das Bild muss anstelle des Exports speichern sein.
Schade für mich. Das Use-Case-Problem ist, 'Docker exec' mit dem Argument' type' zu verwenden. – sangelion