Оптимизация Docker-образов

Оптимизация Docker-образов для production через использование кеширования и мультистадийный билдинг.

Скрытый контент
Комментарии (22)
Альберт
2020-01-01 06:29

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

Ответить
Deworker Pro
2020-01-01 07:28

Использовать для изображений отдельный файловый хостинг и загружать на него файлы из PHP по S3 или FTP.

Ответить
Arunas
2020-01-01 17:36

в prod режиме как изменить параметры в файле параметров (напр.: params.php), где виде масива, хранится параметры: 'limitRowTable' => 20, 'limitRowSearchTable' => 35, и т.д. ? Каждый раз передеплоит сайт ?

Ответить
Deworker Pro
2020-01-01 17:59

Да, все изменения через передеплой.

Ответить
Arunas
2020-01-01 18:14

а где лудшее тогда хранит таких параметров для многократного использования?

Ответить
Deworker Pro
2020-01-02 07:00

Часть можно хранить в переменных окружения.

Ответить
Arunas
2020-01-01 18:28

у Вас на локалке стоит Ubuntu 18 или Debian.? (никак не получается make site error: ERROR! The file hosts.yml is marked as executable, but failed to execute correctly. If this is not supposed to be an executable script, correct this with chmod -x hosts.yml. ERROR! problem running /var/www/projects/auction/provisioning/hosts.yml --list ([Errno 8] Exec format error) ERROR! hosts.yml:6: Expected key=value host variable assignment, got: ssh )

Ответить
Deworker Pro
2020-01-01 18:41

На локалке Ubuntu.

Ответить
Arunas
2020-01-01 19:11

если у меня Ubuntu 16.04.6, то ansible-playbook будет ли коректно действовать?

Ответить
Deworker Pro
2020-01-02 06:58

Утилита популярная, так что везде должна работать.

Ответить
Arunas
2020-01-02 15:53

а будет чат (с centrifugo или под.)?

Ответить
Deworker Pro
2020-01-02 17:22

Будут уведомления с Centrifugo.

Ответить
Arunas
2020-01-03 14:39

:)

Ответить
Arunas
2020-01-03 15:35

Наконец, сегодня деплоил проект https://demo-auction.skucai.com

Деплой заработал с исключением: для docker login задействовало 2 параметра - Username и Password, а в provisioning/docker-login.yml указанно 3: Registry, Username, Password. (В хостинге делал напрямую docker login). Почему не сработало make docker-login?

Ответить
Ruslan
2020-01-05 22:08

Я еще не дошел до полного деплоя, не могли бы вы добавить в ДНС www поддомен? Мне кажется, что в скрипте сербота должен быть www поддомен для получения сертификата.

Ответить
Sergei
2020-01-10 16:11

Т.е. я так понял, что бы сделали образ builder, де факто проинсталлированный композер с вендором, просто чтобы второй + n раз не скачивать/устанавливать?

Ответить
Deworker Pro
2020-01-10 16:18

Да, сделали чтобы собирать чистовые образы легковесными без лишнего мусора.

Ответить
Arunas
2020-01-25 09:50

в каком образе, в каком месте (при быльде для прода) собырается-копируется каталог api/src? Напр. api/public копируется в api/docker/production/nginx/Dockerfile (стр.: COPY ./public ./public), а где есть (COPY ./crc ./src) ни где ненашёл :(...

Ответить
Дмитрий
2020-02-29 20:40

Какой сервер нужен для работы проекта? Я заказал на vscale самый дешевый за 200 руб. в месяц на убунте. Но похоже он не вывозит. При поднятии контейнеров пишет Killed и докер демон полностью отрубается.

Ответить
Дмитрий
2020-03-01 07:19

Удалось поднять 3 контейнера на продакшн: gateway, frontend, registry. Реестр контейнеров поднял на этом же сервере заранее, запушил туда свои контейнеры и переподнял вот эти три. Не понятно сейчас с сервером что делать, я вроде видел что у Дмитрия тоже за 200 р. сервер, но на Debian. Перезаказать на Debian?

Ответить
Deworker Pro
2020-03-01 13:24

У нас пока Debian за 200. Со временем потребуется наращивание мощности или числа виртуалок для добавления прочего софта.

Чтобы процессы не отваливались из-за нехватки памяти в пиках можно добавить файл подкачки:

dd if=/dev/zero of=/swap bs=1M count=1024
mkswap /swap
swapon /swap
echo '/swap none swap sw 0 0' | tee -a /etc/fstab
Ответить
Дмитрий
2020-03-01 15:31

Применил. Заработало! Текущий проект поднялся!

Ответить
Зарегистрируйтесь или войдите чтобы оставить комментарий