Alexander
Второй был лучше
George
А links ни нужен, юзай networks
George
Второй был лучше
Если сворма нет, то 3.* не нужен
Alexander
Но, в конце концов, придётся переходить на последнюю версию
Alexander
А links ни нужен, юзай networks
Это я как пример сказал)
Alexander
Третий для сворма, да
Alexander
Но сейчас думаю, что, в связи в небольшим бюджетом, может и сворм подрубить...
George
Касательно перезапуска - рекомендую посмотреть в логи флюента
George
Он может вызывать каскадный рестарт. Наверное
Alexander
Смотрел. Дельного там ничего нет(
Alexander
Такими темпами просто depends_on уберу, если будет так дальше делать
Alexander
В моём случае просто это можно сделать
Alexander
В который раз выручаете)
Stripe
Всем привет, кто разворачивал дрпал с докером, есть такие? Подскажите пожалуйста!
Anonymous
Всем привет, кто разворачивал дрпал с докером, есть такие? Подскажите пожалуйста!
Если бы ты сразу спросил, то может уже и подсказали бы. Откуда такая любовь к мета-вопросам?
Stripe
спросить почему отваливается drush
Stripe
Egor
Есть ли какая-нибудь утилитка с UI для управления регистри?
George
возьми регистри с уже готовым уай - например, harbor
George
а вот так чтобы управлять... нет, такого не видел
Egor
А можно сделать в docker-compose что бы один volume всегда удалялся при остановке или пересборке? Или может есть какой-то способ прокинуть папочку подготовленную одним контейнером в другой, не через volume?
Ivgenich
Именно прокинуть - только через директиву volume мне кажется. Именно волюмом или просто можно папку подмонтировать. Удалять тоже мне кажется нельзя. Но можно вместо прямого вызова docker-compose накидать bash скрипт. Или просто через && вызывать удаление контейнера.
George
нет. Пользуйтесь ansible
George
там есть менеджмент вольюмов и можно по-человечески описывать пайплайн запуска приложения
George
не знаю - что лучше
Ivgenich
Думаю зависит от конкретной задачи. Постановка вопроса не полная. Не ясно, что больше подойдёт.
Egor
а если volume указать не персистентную файловую систему, это не будет очищать volume?
George
поддержу
George
volume на то и вольюм, чтобы переживать остановку контейнера. Либо https://t.me/docker_ru/131091
George
А, есть совет
George
те файлы, которые реально нужны - пробрасывайте через bind mount (-v path_host_system:path_in_container)
George
а те файлы, которые не очень нужны - пихайте в вольюм (именно вольюм,-v NAME_OF_VOLUME:path_in_container) Тогда вольюмы можно грохнуть docker-compose down -v, а файлы в файловой системе через bind mount останутся (!)
George
@egor777ka @ivgenich
Ivgenich
Да. Канает. Но все равно сама задача не очень ясна. Но это вполне себе решение.
Egor
В одном контейнере Django + gunicorn, Django собирает статику и ложит в папочку. Во втором контейнере nGinx он смотри в эту папочку и отдаёт эти файлики когда клиент запрашивает статику. Мне бы хотелось что бы при билде эта папочка каждый раз пересобиралась, а то там какое-то хитрое кэширование и если волюм не грохнуть, то статика будет лежать старая.
Egor
а вот так чтобы управлять... нет, такого не видел
да мне нужно удалить старые данные.
George
root@srv01:~# docker restart 54f514346c22 Error response from daemon: Cannot restart container 54f514346c22: id already in use
George
чертов докер. Не дает запустить контейнер со статусом Exit. Пожалуй-ка, пересоздам я его
George
а еще прекрасно вот это 250874: veth1dabaf2@if250873: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue master docker0 state UP group default link/ether de:4a:6d:da:a0:10 brd ff:ff:ff:ff:ff:ff link-netnsid 37 inet6 fe80::dc4a:6dff:feda:a010/64 scope link valid_lft forever preferred_lft forever 250876: veth24fb1d2@if250875: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue master docker0 state UP group default link/ether 8a:08:9c:d7:50:c0 brd ff:ff:ff:ff:ff:ff link-netnsid 39 inet6 fe80::8808:9cff:fed7:50c0/64 scope link valid_lft forever preferred_lft forever 250878: veth45ee712@if250877: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue master docker0 state UP group default link/ether 96:93:a5:3e:73:9c brd ff:ff:ff:ff:ff:ff link-netnsid 40 inet6 fe80::9493:a5ff:fe3e:739c/64 scope link valid_lft forever preferred_lft forever
George
как минимум - это вызывает проблемы с вмварью
George
я с таким говном, например, наелся https://bugs.debian.org/756808
ᴅⁱᵐⁱᴅʳ0ˡ
Как это сделать?
FROM node:8-slim AS builder RUN mkdir /front WORKDIR /front COPY ./front . RUN npm install --silent RUN npm run prod FROM nginx:1.15.2-alpine COPY ./docker/nginx/nginx.conf /etc/nginx/conf.d/default.conf RUN rm -rf /usr/share/nginx/html/* COPY --from=builder /dist /usr/share/nginx/html/palisad/dist CMD ["nginx", "-g", "daemon off;"]
Egor
FROM node:8-slim AS builder RUN mkdir /front WORKDIR /front COPY ./front . RUN npm install --silent RUN npm run prod FROM nginx:1.15.2-alpine COPY ./docker/nginx/nginx.conf /etc/nginx/conf.d/default.conf RUN rm -rf /usr/share/nginx/html/* COPY --from=builder /dist /usr/share/nginx/html/palisad/dist CMD ["nginx", "-g", "daemon off;"]
Я бы так сделал, но мне нужно что бы из первого контейнера был запущен сервер плиложения для обработке запросов к не статике.
George
это не играет роли.
George
Коллега говорит, что для сборки статики тебе не нужна зависимость между двумя контейнерами
Egor
это не играет роли.
Предлагаешь по 2 раза одно и тоже делать при сборке?
ᴅⁱᵐⁱᴅʳ0ˡ
контейнер с статикой и бэком, на nginx разруливаешь трафик
George
возможно, что это и будет лучше
Egor
контейнер с статикой и бэком, на nginx разруливаешь трафик
nGinx должен видеть и бэк и статику(из контейнера с бэком)
ᴅⁱᵐⁱᴅʳ0ˡ
в чем проблема сделать общую сеть в docker-compose ?
ᴅⁱᵐⁱᴅʳ0ˡ
и обращаться к ним по заданым именам
Egor
В смысле как общая сеть поможет в этом?
George
nGinx должен видеть и бэк и статику(из контейнера с бэком)
у тебя статика на лету, что ли, генерится?
George
ты только что утверждал, что она создается один раз
Egor
у тебя статика на лету, что ли, генерится?
Статика раз собирается бэком
George
ну, значит тогда nginx вообще плевать на содержимое контейнера с джангой
ᴅⁱᵐⁱᴅʳ0ˡ
да как бэком может статика собираться, что за дич?
George
(при условии, что ты статику налил при сборке образов)
ᴅⁱᵐⁱᴅʳ0ˡ
пришли докер файл
Egor
(при условии, что ты статику налил при сборке образов)
Я понял вариант по 2 раза делать одно и тоже.
Egor
пришли докер файл
FROM python:3 ENV PYTHONUNBUFFERED 1 RUN mkdir /code WORKDIR /code COPY requirements.txt /code/ RUN pip install -r requirements.txt COPY . /code/ RUN python manage.py collectstatic
George
ну, его переделать, на мультистейдж - не проблема
ᴅⁱᵐⁱᴅʳ0ˡ
ну это бэк на гуникорне, ни как не статика
George
и тогда из одного докерфайла ты сможешь собирать и джангу, и энджинкс
Egor
Ладно, сейчас это можно решить через мультистейдж. А как делали древние люди около года назад?
George
они страдали
Egor
а в docker-compose нет возможности разные контейнеры друг на друга намазывать, как в мультистейдж?
Egor
в смысле? нет, вряд ли
Ну в смысле указать что от чего зависит можно, а вот указать что нужно вытащить из зависимого контейнера?
George
нет
George
компоуз не для этого
Egor
Подождём годик, может разрабы решат что он для этого.