دسترسی به رجیستری خصوصی Google Artifact با Poetry: Local and Docker Setup

هنگام ساختن برنامه های پایتون با Poetry در ظرف Docker، گاهی اوقات با مشکلاتی در دسترسی به بسته های خصوصی ذخیره شده در رجیستری Google Artifact (GAR) مواجه می شویم. به صورت محلی، این چالش به وجود می آید زیرا docker build نمی‌توانیم مستقیماً اعتبارنامه‌های Google Cloud را مانند خط لوله CI/CD ما مدیریت کنیم، جایی که از حساب‌های سرویس و کنش Kaniko برای ساخت‌های امن استفاده می‌کنیم. برای حل این مشکل برای توسعه محلی، اعتبارنامه Google Cloud را در Docker با استفاده از Docker Compose پیکربندی می‌کنیم و دسترسی ایمن به مخزن GAR را در طول فرآیند ساخت امکان‌پذیر می‌کنیم.


غیر کانتینری

پیش نیازها

  • پایتون ^ 3.12
  • شعر ^1.7.1
  • Google Cloud SDK ^489.0.0
  • کلید ^24.0.0
  • keyrings.google-artifactregistry-auth ^1.0.0
  • دسترسی به مخزن GAR Python خود را بخوانید
  • وارد GCP (gcloud auth application-default login)

راه اندازی

  1. راه اندازی کلید

    نصب کنید keyring پشتیبانی از Google Artifact Registry:

    pip install keyring
    pip install keyrings.google-artifactregistry-auth
    
  1. Poetry را به مخزن GAR خود وصل کنید

    دسترسی به مخزن خصوصی در رجیستری مصنوعات گوگل از طریق Poetry قابل مدیریت است. ابتدا یک منبع سفارشی در Poetry را برای مخزن GAR با اجرای:

    poetry source add --priority=explicit  https://-python.pkg.dev///simple
    

حتما ضمیمه کنید /simple به…

Source link