So mounten Sie den Speicherort der Batchdatei über WSL2 und starten den Docker-Container

Was ist das?

Wir empfehlen, beim Booten mit Docker für Windows auf eine Batchdatei zu doppelklicken und sie als WSL2-Volume bereitzustellen.

Angenommener Leser

Fazit

Im folgenden Beispiel wird ein Container-Image mit einem Batch-Dateinamen gestartet. Wenn Sie den Namen der Batch-Datei ändern, ändert sich das zu startende Container-Image.

buildpack-deps.bat


@setlocal
@set "WORK=/root/workspace"

@cd /d "%~dp0"
@set "IMG=%~n0"

@if "%~0" == "%~f0" set "pause_if_error=@if errorlevel 1 pause"

@for %%i in ( "%CD%" ) do @set "WSL2CD=%%~di"
@for %%i in (a b c d e f g h i j k l m n o p q r s t u v w x y z) do @call set "WSL2CD=%%WSL2CD:%%~i=%%~i%%"
@for %%i in ( "%CD%" ) do @call set "WSL2CD=%%WSL2CD:~0,-1%%%%~pnxi"
@set "WSL2CD=/mnt/%WSL2CD:\=/%"

wsl -e docker run -it --rm -w "%WORK%" -v "%WSL2CD%:%WORK%" %IMG% %*
%pause_if_error%
@exit /b %errorlevel%

Der Einhängepunkt wird direkt in @ set" WORK = / root / workspace " geschrieben. Schreiben Sie ihn daher entsprechend um. Um das Bild zu reparieren, schreiben Sie @set" IMG =% ~ n0 " neu. Da die Distribution von wsl nicht angegeben ist, fügen Sie die Option wsl entsprechend hinzu, wenn Sie sie angeben möchten.

Bestätigungsumgebung

Windows10 1909 Docker version 19.03.13, build 4484c46d9d

Kommentar

Gehen Sie beim Starten von Docker den Befehl wsl durch. Das Volume gibt den Pfad auf wsl an. Bei der Ausführung von "WSL2CD" wird der Windows-Pfad in den WSL-Pfad konvertiert.

Damit verschwindet die Warnung und es ist erfrischend!

Referenz

Recommended Posts

So mounten Sie den Speicherort der Batchdatei über WSL2 und starten den Docker-Container
So starten Sie einen Docker-Container mit einem in einer Batchdatei bereitgestellten Volume
So überprüfen Sie das Protokoll im Docker-Container
[Docker] So sehen Sie den Inhalt von Volumes. Starten Sie einen Container mit Root-Rechten.
[Docker] Zugriff auf den Host aus dem Container heraus. http: //host.docker.internal:
Fordern Sie die Installation von WSL2 und Docker heraus
So starten Sie Camunda mit Docker
Bis die Docker-Umgebung erstellt und der Ubuntu-Container gestartet und gestoppt wurde
[Java] Verwendung der File-Klasse
Übertragen Sie das von Docker Hub verteilte Docker-Image in die Google Container-Registrierung und starten Sie die VM basierend auf diesem Image
[Docker] Erstellen, wenn der Quellcode auf dem Container gebunden ist
Mit Pg_resetwal kann der PostgreSQL Docker-Container gestartet werden, wenn WAL fehlerhaft ist und nicht gestartet werden kann.
Wie man die Zehner und Einsen findet
[Docker] Starten Sie den Container so schnell wie möglich
Anzeigen der vom Docker-Container verwendeten Festplattenmenge für jeden Container
So erhalten Sie einen Heapdump aus einem Docker-Container
So aktualisieren Sie eine vorgefertigte Datei in einem Docker-Container
So finden Sie die Gesamtpunktzahl und die Durchschnittspunktzahl
Ändern Sie den Docker-Image- und Container-Platzierungsordner
[Spring Boot] So verweisen Sie auf die Eigenschaftendatei
So erstellen Sie einen Jenkins-Server mit einem Docker-Container unter CentOS 7 von VirtualBox und greifen von einem lokalen PC auf den Jenkins-Server zu
[Docker] Wie man mit einem Container in Heroku aktualisiert und wie man mit Migrate Error umgeht
Docker für Windows: Der MySQL-Container wird bei der Migration von Hyper-v auf WSL2 nicht gestartet
[Java] So extrahieren Sie den Dateinamen aus dem Pfad
JavaFX - Geben Sie den Speicherort der CSS-Datei relativ zur fxml-Datei an
So debuggen Sie die generierte JAR-Datei mit Eclipse
So starten Sie die Swagger-Benutzeroberfläche und den Swagger-Editor in Docker
Die Geschichte, wie ein Docker-Container mit GitHub-Aktionen in die GitHub-Paketregistrierung und den Docker-Hub verschoben wird
So schreiben Sie Kommentare in die Schemadefinitionsdatei in GraphQL Java und spiegeln sie in GraphiQL und GraphQL Playground wider
Starten Sie den Container automatisch
So installieren Sie Docker
Unterschied zwischen Java und JavaScript (wie man den Durchschnitt findet)
Ich möchte Tomcat auf den Server bringen und die Anwendung starten
Ich habe versucht, eine Umgebung mit WSL2 + Docker + VSCode zu erstellen
So erhalten Sie das Protokoll, wenn install4j nicht gestartet wird
So ändern Sie den Inhalt der JAR-Datei, ohne sie zu dekomprimieren
So führen Sie React und Rails auf demselben Server aus
So überprüfen Sie die Erweiterung und Größe der hochgeladenen Dateien
So führen Sie JUnit im Batch aus und erhalten Abdeckung
[Docker] So trennen Sie eine mit der Datenbank verbundene Sitzung zwangsweise [Postgres]
[Docker] So sichern und wiederherstellen Sie DB-Daten der Rails-Anwendung auf Docker-Compose [MySQL]
Speicherort der Methodendefinition Zusammenfassung der zu überprüfenden Informationen Wenn im Projekt und in Rails / Gem definiert