Composer: التثبيت على حاويات Docker

تم إنشاؤها على ٢٨ يونيو ٢٠١٦  ·  3تعليقات  ·  مصدر: composer/composer

كما يقول المستندات :

تحذير: الرجاء عدم إعادة توزيع كود التثبيت. سيتغير مع كل إصدار من المثبت. بدلا من ذلك ، يرجى ربط هذه الصفحة.

من المزعج استخدام رمز التثبيت المتوفر هناك في Dockerfile ، حيث أن التحقق SHA-384 سيصبح قديمًا قريبًا وسنحصل على رسالة حزينة Installer corrupt كل مرة نحاول فيها بناء الحاوية.
اعتدت أن أحب التثبيت أحادي الخط ولكني أعلم أنه يحتوي على مشكلة الفساد.

إذن ، ما هي الإرشادات لاستخدامه على Dockerfile؟ هل يجب أن نستمر في استخدام التثبيت أحادي الخط أعلاه؟ هل يجب أن يكون على المستندات؟

curl -sS https://getcomposer.org/installer | php -- --install-dir=/usr/local/bin --filename=composer
Question

التعليق الأكثر فائدة

ال 3 كومينتر

أعتقد أنه من الأفضل لـ Docker استخدام إصدار ثابت معروف وتنزيله مباشرة.

على سبيل المثال:

wget https://getcomposer.org/download/1.1.3/composer.phar
# or if you want snapshot
wget https://getcomposer.org/composer.phar

أعلم أن هذا لا يوفر لك نفس الأمان الذي يوفره نص التثبيت.

هناك خيار آخر يتمثل في تثبيت composer.phar في المستودع الذي يحتوي أيضًا على Dockerfile ، ثم استخدام خطوة COPY لنسخه في الحاوية في وقت الإنشاء.

في حالة Docker ، يمكن أيضًا التحقق من ذلك عن طريق تسلسل الأوامر ، كما لو فشل أي منها في بيان RUN ، فإن بناء الصورة بالكامل سيفشل أيضًا:

RUN echo "$(curl -sS https://composer.github.io/installer.sig) -" > composer-setup.php.sig \
    && curl -sS https://getcomposer.org/installer | tee composer-setup.php | sha384sum -c composer-setup.php.sig \
    && php composer-setup.php -- --install-dir=/root/bin --filename=composer

من الشائع جدًا أن يكون لديك هذا للتحقق من صحة التوقيع ، راجع

هل كانت هذه الصفحة مفيدة؟
0 / 5 - 0 التقييمات