Heim >Backend-Entwicklung >Python-Tutorial >So installieren Sie Python -Pakete aus der GCP -Artefaktregistrierung in der Docker -Datei
Wie im Dokument beschrieben, ist es sehr einfach, das Paket in der Registrierung zu veröffentlichen.
库
Nachdem Sie Ihre Tasche in Artefaktregistrierung veröffentlicht haben, können Sie sie als abhängiger Gegenstand für andere Projekte zur Verfügung stellen.
<code class="language-bash">poetry source add --priority=supplemental gcp_registry https://{LOCATION}-python.pkg.dev/{REPO}/{PACKAGE}/ poetry publish --no-interaction --build --repository gcp_registry</code>
Installationspaket
Installieren eines Pakets auf dem lokalen Computer, erstellen Sie bitte eine Anforderungen_private.txt -Datei:Verwenden Sie dann den folgenden Befehl, um Pakete zu installieren:
<code>--index-url https://{LOCATION}-python.pkg.dev/{REPO}/{PACKAGE}/simple/ --extra-index-url https://pypi.org/simple {YOUR_PACKAGE_NAME}</code>
Artifaktregistrierung Authentifizierung von Keyring -Paketpaket. Stellen Sie sicher, dass Ihre Anwendung vor fortgeschrittenen Anwendung (ADC) standhält.
<code class="language-bash">pip install keyring pip install keyrings.google-artifactregistry-auth pip install -r /opt/requirements_private.txt</code>
Docker Challenge
Sie möchten keine vertraulichen Informationen (z. B. Ihre Service -Kontodatei) in den Docker -Spiegel kopieren.
Lösung
<code class="language-dockerfile">ARG GOOGLE_APPLICATION_CREDENTIALS COPY requirements_private.txt /opt/requirements_private.txt RUN --mount=type=secret,id=creds,target=/opt/mykey.json,mode=0444 \ pip install keyring && \ pip install keyrings.google-artifactregistry-auth && \ pip install -r /opt/requirements_private.txt COPY requirements.txt /opt/requirements.txt RUN pip install -r /opt/requirements.txt</code>Wie Sie sehen können, können Sie mehrere Anforderungen Dateien haben. In meinem Beispiel wird die Datei Anforderungen.txt verwendet, um das Paket in der öffentlichen Registrierung von PYPI zu hosten. Dann Ihre Datei docer_compose.yml
<code>--index-url https://{LOCATION}-python.pkg.dev/{REPO}/{PACKAGE}/simple/ --extra-index-url https://pypi.org/simple {YOUR_PACKAGE_NAME}</code>Dann können Sie den Befehl konstruieren:
<code class="language-yaml">services: app: build: context: . args: - GOOGLE_APPLICATION_CREDENTIALS=/opt/mykey.json secrets: - creds secrets: creds: file: "C:/your/local/host/path/to/google_service_account.json"</code>Ich hoffe, dieser Artikel hilft Ihnen dabei, sich in Artefaktregistrierung und Docker zu integrieren.
Das obige ist der detaillierte Inhalt vonSo installieren Sie Python -Pakete aus der GCP -Artefaktregistrierung in der Docker -Datei. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!