169 похожих чатов

Коллеги, подскажите такой момент пожалуйста. Переезжаем мы значит в облако Есть у

нас проект на php , крутится в кубере. Настроен автодеплой, и при каждом деплое образ собирается заново с экстеншенами.

Сам проект - легаси, докерфайл для него собирался наполовину на коленке, наполовину из старых докерфайлов, которы использовались для локальной разработки (в текущем проде докера нет, всё просто на хосте крутится)

И проблема в том, что сам по себе билд шёл минут 5, что многовато, но теперь я добавил в него недостающие расширения (например grpc на котором код завязан) и билд идёт почти 25 минут

В целом, вот что поменялось (утянул из старого докерфайла для локалки)

RUN mkdir -p /usr/src/php/ext/redis \
&& curl -fsSL https://github.com/phpredis/phpredis/archive/$EXT_REDIS_VERSION.tar.gz | tar xvz -C /usr/src/php/ext/redis --strip 1 \
# amqp
&& mkdir -p /usr/src/php/ext/amqp \
&& curl -fsSL https://github.com/php-amqp/php-amqp/archive/$EXT_AMQP_VERSION.tar.gz | tar xvz -C /usr/src/php/ext/amqp --strip 1 \
# uuid
&& mkdir -p /usr/src/php/ext/uuid \
&& curl -fsSL https://github.com/php/pecl-networking-uuid/archive/$EXT_UUID_VERSION.tar.gz | tar xvz -C /usr/src/php/ext/uuid --strip 1 \
# memcached
&& mkdir -p /usr/src/php/ext/memcached \
&& curl -fsSL https://github.com/php-memcached-dev/php-memcached/archive/$EXT_MEMCACHED_VERSION.tar.gz | tar xvz -C /usr/src/php/ext/memcached --strip 1 \
# legacy mysql
&& mkdir -p /usr/src/php/ext/mysql \
&& curl -fsSL https://github.com/php/pecl-database-mysql/archive/$EXT_LEGACY_MYSQL_VERSION.tar.gz | tar xvz -C /usr/src/php/ext/mysql --strip 1 \
# grpc
&& mkdir -p /usr/src/php/ext/grpc \
&& curl -fsSL https://pecl.php.net/get/grpc-$EXT_GRPC_VERSION.tgz | tar xvz -C /usr/src/php/ext/grpc --strip 1
RUN install-php-extensions uuid grpc ...

Вопросов у меня два)
1 - можно ли это дело ставить более правильно и быстро
2 - Хорошая ли идея заранее упаковать все расширения в готовый образ, а потом использовать как базу, закидывая в него нужные php.conf, php.ini ну и прочие надстройки?

1 ответов

33 просмотра

Создаёшь образ с нужным runtime. Его используешь, вместо образа, который сейчас для сбора приложения

Похожие вопросы

Обсуждают сегодня

а зачем этот вопрос для удаления из чата?
Mёdkinson Medvezhkin
63
Всем привет! Подскажите. Я написал приложение на Delphi 10.2 Tokyo под Windows 10. И передо мной стал вопрос о том чтобы сделать это приложение кроссплатформенным (под Linux и...
Дмитрий Завгородний
24
Привет всем. Подскажите где можно посмотреть, какая версия электрон, поддерживает версии windows? Некий changelog. Мне бы желательно, поддержку 7,8,10... latest, как понимаю и...
Anonym Squad
21
Портфолио: Зовут меня Александр, мне 36 лет. Город Пушкино. Общий рабочий стаж: ~14 лет Уровень квалификации: Senior Full-stack developer Где прочесть мой код? https://github....
Magic
10
Не ну фпц - это уже просто троллинг какой-то. Элементарный код нельзя собрать. ЧЯДНТ? program Project1; {$mode delphi} uses SysUtils, Classes, Generics.Collections; var...
Peter
4
а где есть mysql cloud кроме яндекс-клауд?
Oleg Nosov
13
Есть ли смысл устраиваться на 1с ? Даст это плюс в дальнейшем трудоустройстве на php? Просто у меня в городе вакансий на пхп нету. Или лучше удаленно искать. Опыта работы нету...
Azamat
14
hi im a cs student. i need some advice from people who have enough experience in Embedded Software. I need to know whether this profession is suitable for me. I have watched s...
Sahand 🏔️
8
А кто-нибудь запихивал сборку перловых модулей/образов с perl приложениями в окружения без интернета (в специализированном CI/CD)? У меня сейчас есть ряд cpanfile, которые н...
Andrey Smirnov / 𝓪𝓵𝓵𝓽𝓮𝓻 /
14
Кстати а покупал кто-нибудь ЭЦП для подписи кода? А то у меня на некоторых компах и ОС иногда SmartScreen винды программу за вирус принимал. Если купить такую ЭЦП и подписыват...
Дмитрий Завгородний
15
Карта сайта