Ich habe ein Docker-Image erstellt, das meine eigene App zum Zeitpunkt der Erstellung aus GitLab klont. Ich werde es als Memo hinterlassen.
Windows10 Pro GitLab
https://qiita.com/Brutus/items/da63d23be32d505409c6
Drücken Sie "Einstellungen" im oberen rechten Menü von GitLab.
Drücken Sie im linken Menü auf "Access Token".
Geben Sie unter Name einen beliebigen Token-Namen ein, überprüfen Sie die Scope-API und klicken Sie auf "Persönliches Zugriffstoken erstellen".
Wenn die Erstellung erfolgreich war, wird das Token angezeigt. Notieren Sie es sich.
Erstellen Sie Dockerfile wie folgt.
Dockerfile
#Ich wollte die Express-App von Node einfügen, also habe ich das Image von Node verwendet
FROM node:10.12
#Arbeitsverzeichnis angeben
WORKDIR /src
#Beschreiben Sie die Erstellerinformationen
LABEL maintainer="y.matsumoto <[email protected]>"
# -Geben Sie das zu klonende Verzeichnis mit der Option C an. https://oauth2:[Token von GitLab erhalten]@gitlab.com/[Projektname]/[Repository-Name].git ist die Syntax der URL
RUN git -C / clone chat https://oauth2:[Token von GitLab erhalten]@gitlab.com/[Projektname]/[Repository-Name].git
#Da sich das Express-Ausführungsdateisystem im App-Verzeichnis befindet, kopieren Sie es in das Arbeitsverzeichnis
RUN cp -r /[Repository-Name]/app/* /src
#Löschen Sie nicht benötigte Dateien nach dem Klonen
RUN rm -rf /[Repository-Name]
#App-Paket im Arbeitsverzeichnis.Da json kopiert wird, kann die npm-Installation unverändert ausgeführt werden
RUN npm install
#Stellen Sie den Server so ein, dass er startet, wenn der Container ausgeführt wird
CMD npm start
Führen Sie den folgenden Befehl in dem Verzeichnis aus, das die Docker-Datei enthält, um Build & Container auszuführen.
docker image build . --tag [Beliebiger Tag-Name]
docker container run -d -p 3000:3000 [Angegebener Tag-Name]
Als ich mit einem Browser darauf zugegriffen habe, wurde es ohne Probleme gestartet!
das ist alles.
Ich habe ein Docker-Image erstellt, das zum Zeitpunkt der Erstellung die neueste Version meiner eigenen Anwendung abgerufen hat. Ich möchte es später in die Registrierung verschieben und ein Formular anstreben, das mit Kubernetes abgerufen und verwendet werden kann.
Wenn Sie Vorschläge haben, zögern Sie bitte nicht, uns zu kontaktieren!
Recommended Posts