ساخت چند قوس ، در مورد تراویس چیست؟


به دنبال مقاله قبلی که در آن دیدیم که چگونه می توان تصاویر چند قوس را با استفاده از اقدامات GitHub ساخت ، اکنون ما نشان خواهیم داد که چگونه می توان با استفاده از یک CI دیگر ، همان کار را انجام داد. در این مقاله ، تراویس را در نظر خواهیم گرفت که یکی از فریبنده ترین مواردی است که برای این مورد استفاده دارد.

برای شروع ساخت تصویر خود با تراویس ، ابتدا باید را ایجاد کنید .travis.yml پرونده را در ریشه مخزن خود قرار دهید.

زبان : bash
dist : bionic
خدمات :
-
-

اسکریپت :
- docker نسخه نسخه

شما ممکن است توجه داشته باشید که ما برای استفاده از "bionic" برای داشتن جدیدترین نسخه اوبونتو در دسترس قرار داده ایم – اوبونتو 18.04 (بیونیک بیور). از امروز (ماه مه 2020) ، اگر این اسکریپت را اجرا کنید ، می توانید مشاهده کنید که نسخه Docker Engine ارائه شده 18.06.0 درجه است که برای استفاده از buildx بسیار قدیمی است. بنابراین ما باید Docker را به صورت دستی نصب کنیم.

زبان : bash
dist : bionic
Before_install :

] - sudo rm -rf / var / lib / apt / لیست / *
- curl -fsSL https://download.docker.com / linux / ubuntu / gpg | sudo apt-key add -
- sudo add-apt-repository "deb [arch=amd64]
https://download.docker.com/linux/ubuntu $ (lsb_release -cs) edge "
- sudo apt-get update
- sudo apt-get -y -o Dpkg :: گزینه ها :: =" - force-confnew "نصب docker-ce
اسکریپت :
- نسخه docker

] همانطور که در اسکریپت قبلی مشاهده می کنید ، مراحل نصب نیاز به اضافه کردن کلیدهای جدید دارد تا بتواند قادر به همگام سازی بانک اطلاعاتی بسته ها و بارگیری بسته های جدید از مخزن Docker APT باشید. سپس می توانیم آخرین نسخه Docker را برای Ubuntu 18.04 موجود داشته باشیم. پس از اجرای این کار ، می بینید که اکنون نسخه 19.03 موتور داکر را داریم.

در این مرحله ما می توانیم با Docker CLI ارتباط برقرار کنیم اما هنوز افزونه buildx نصب نشده است. برای نصب آن ، آن را از GitHub بارگیری خواهیم کرد.

زبان : bash
dist : bionic
para_install : 19659007] - sudo rm -rf / var / lib / apt / list / *
- curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
- sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu $ (lsb_release -cs) edge"
- [19659005] sudo apt-get update
- sudo apt-get -y -o Dpkg :: گزینه ها :: = "- force-confnew" نصب docker-ce
- mkdir -vp ~ / .docker / cli-plugins /
- curl --silent -L "https://github.com/docker/buildx/releases/download/v0.3.0/buildx-v0.3.0.linux -amd64 "> ~ / .docker / cli-plugins / docker-buildx
- chmod a + x ~ / .docker / cli-plugins / docker-buildx
script :
- نسخه docker buildx

اکنون ما قادر به استفاده از buildx هستیم. این کار مبهم است و به دلیل نحوه کار تراویس و نسخه هایی که بر پایه آن قرار دارند ، ما نمی توانیم با استفاده از یک تصویر Docker مانند در CircleCI آن را کوتاه کنیم. ما باید هر بار که ساخت را ساختید ، این قالب بزرگ را در بالای فیلمنامه خود نگه داریم و به آن اجازه دهیم حدود 1.5 دقیقه طول بکشد.

اکنون زمان آن رسیده که تصویر خود را برای چندین معماری بسازیم. ما از همان Dockerfile که برای مقاله قبلی استفاده کردیم و همان دستور ساخت استفاده خواهیم کرد:

از debian : buster-slim
RUN ] apt-get update
&& apt-get install -y curl
&& rm -rf / var / lib / apt / لیست / *
ENTRYPOINT [ ] "curl" ]

پرونده پیکربندی Travis را تغییر دهید تا در بخش "script" موارد زیر را داشته باشد:

script :
- docker buildx build --platform linux / arm / v7، linux / arm64 / v8 ، linux / amd64 - نام-نام کاربری شما / چند نسخه را مثال بزنید: buildx-new.

اگر آن را مانند این راه اندازی کنید ، خطای زیر را مشاهده خواهید کرد:

ویژگی چند سیستم عامل در حال حاضر برای درایور docker پشتیبانی نمی شود. لطفاً به درایور دیگری تغییر دهید (به عنوان مثال "docker buildx create --use")

این به این دلیل است که هیچ درایور سازنده ای در حال حاضر آغاز نشده است. بنابراین ، اگر این خط را به پرونده پیکربندی خود اضافه کنیم و مجدداً آن را اجرا کنیم ، این کار به سازنده اجازه می دهد تا نمونه ای از ساخت آن را برای ساختن تصاویر چندتایی اجرا کند.

حرکت به داشبورد تراویس ، باید نتیجه زیر را مشاهده کنید:

اکنون آخرین مرحله برای ذخیره تصویر در مرکز داکر است. برای این منظور ما به یک نشانه دسترسی از Docker Hub برای دسترسی به نوشتن نیاز داریم.

پس از ایجاد یک نشانه دسترسی ، باید آن را در بخش "تنظیمات" به تنظیمات پروژه خود اضافه کنید.

سپس می توانید متغیرهای DOCKER_USERNAME و DOCKER_PASSWORD ایجاد کنید تا بعد از آن وارد شوید.

دستور buildx به شرح زیر است.

اسکریپت :
- docker login -u "$ DOCKER_USERNAME" -p "$ DOCKER_PASSWORD"
- docker buildx - استفاده
- docker buildx build --push --platform
linux / arm / v7 ، linux / arm64 / v8 ، linux / arm64 / v8 ، linux / amd64 --tag
your-name / multiarch-مثال: buildx -latest.

و voila ، اکنون می توانید هر بار که تغییری در پایگاه داده خود ایجاد کنید ، چند تصویر قوس ایجاد کنید.

<! -

 Avatar

Jeremie Drouet

->