So führen Sie Linux-Shell-Befehle in Docker aus

So führen Sie Linux-Shell-Befehle in Docker aus

Um einen Shell-Befehl in Docker auszuführen, müssen Sie vor dem Befehl sh -c hinzufügen, zum Beispiel:

Docker führt Ubuntu aus sh -c 'cat /data/a.txt > b.txt'

Andernfalls kann die Anweisung nicht normal analysiert werden.

Ergänzung: [Docker-Anwendung] Führen Sie das angegebene Skript im Docker aus (führen Sie die Springboot-Anwendung unter Docker aus).

【Docker-Anwendung】 Führen Sie das angegebene Skript im Docker aus

Hier ist ein Beispiel für die Ausführung einer Spring-Boot-Anwendung:

1. Erstellen Sie eine Bilddatei (Vorlage), um das SH-Skript auszuführen

Dockdatei
VON vertigomedia/ubuntu-jdk8
Führen Sie den Befehl touch /root/app_start.sh aus.
RUN echo "#!/bin/bash" > /root/app_start.sh
Führen Sie echo "echo 111" aus >> /root/app_start.sh
RUN chmod a+x /root/app_start.sh
ENV TZ „Asien/Shanghai“
ENV APP_FILE /root/app_start.sh
EXPOSE 8889
CMD $APP_FILE
#ENTRYPOINT ["/bin/sh", "-c", "$APP_FILE"]

2. Erstellen Sie eine Skriptdatei (Skript, das im Container ausgeführt werden soll)

container.sh
#!/bin/bash
echo "test xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
java -jar -Xms500m -Xmx500m -Dspring.profiles.active=test-docker-1 /root/app.jar

3. Erstellen Sie ein Startskript (hier ist nur der Startbefehl)

docker run -itd \
 --name Testcontainer \
 --hostname Testcontainer \
 --net test_net --ip 170.170.1.199 \
 --volume /root/container.sh:/root/app_start.sh \
 --volume /opt/test-1.0.0-SNAPSHOT.jar:/root/app.jar \
 --privilegiert=true \
 test:123 /bin/bash -c 'sh /root/app_start.sh'

Das Obige ist meine persönliche Erfahrung. Ich hoffe, es kann Ihnen als Referenz dienen. Ich hoffe auch, dass Sie 123WORDPRESS.COM unterstützen werden. Sollten dennoch Fehler oder unvollständige Überlegungen vorliegen, freue ich mich über eine Korrektur.

Das könnte Sie auch interessieren:
  • Die umfassendste Sammlung häufig verwendeter Linux-Befehle (mit Beispielen)
  • Java implementiert Befehlsinteraktionscode unter Docker-Containern in Linux (CentOS) (Konfigurationsassistent)
  • Eine vollständige Liste häufig verwendeter Linux-Befehle (super umfassend)
  • So speichern Sie die Befehlsausgabe in einer Datei im Linux-Terminal
  • Mehrere nutzlose, aber interessante Befehle in Linux (Sammlung)

<<:  Einführung in die Verwendung von MySQL-Quellbefehlen

>>:  Verwendung von CSS-Animationseigenschaften und Beispielcode (Übergang/Transformation/Animation)

Artikel empfehlen

Lösen Sie das Problem des Vergessens von Passwörtern in MySQL 5.7 unter Linux

1. Problem Passwort für mysql5.7 unter Linux verg...

Detaillierte Schritte zur Installation von MySql 5.7.21 unter Linux

Vorwort Die am häufigsten verwendete Datenbank in...

Detaillierte Erklärung des Linux-Netstat-Befehls

Inhaltsverzeichnis Linux-Netstat-Befehl 1. Detail...

So aktualisieren Sie CentOS7 auf CentOS8 (detaillierte Schritte)

Dieser Artikel erläutert anhand eines konkreten B...

HTML-Grundlagen - Zusammenfassung - Empfehlung (Absatz)

HTML-Absatz Absätze werden durch das Tag <p>...

So löschen Sie den Timer elegant in Vue

Inhaltsverzeichnis Vorwort Optimierung Ableitungs...

Detaillierter Prozess für den Einstieg mit Docker Compose HelloWorld

Voraussetzungen Compose ist ein Tool zum Orchestr...

Docker-Installation Tomcat Dubbo-Admin-Instanz-Kenntnisse

1. Laden Sie das Tomcat-Image herunter Docker zie...

Vue implementiert Drag & Drop oder Klicken zum Hochladen von Bildern

In diesem Artikel wird der spezifische Code von V...