Oleg
сделал, но проксирует по идиотски
Dos
вот так организовать структуру нормально?https://stackoverflow.com/questions/46346522
𝕀𝕘𝕠𝕣
привет, подскажите, как проще по volume id узнать какому контейнеру оно принадлежит? можно в docker inspect контейнер увидеть volume, а по volume как определить контейнер?
Dsemenov
Тут
Dos
как указать в docker-compose 'volumes:' конкретный директори?
Sergey
volumes:
- /to/host/directory:/to/container/directory ?
Dos
это в сервис?
я хотел отдельно описать
ладно так попробую
Sergey
отдельно тоже катит
Sergey
https://docs.docker.com/compose/compose-file/#short-syntax-3
Alexander
𝕀𝕘𝕠𝕣
Dos
почему здесь https://docs.docker.com/compose/django/#create-a-django-project
и volumes:- .:/code указывает и ADD . /code/ делает? Разве ADD не добавляет папку в имейдж?
Alexander
ну увидеть разные)
docker volume inspect что кажет? (у меня нет volume чтобы проверить)
𝕀𝕘𝕠𝕣
да, он покажет волум, но я хочу найти по волуму контейнер, т.е. если много контейнеров искать в каждом контейнере гемор
𝕀𝕘𝕠𝕣
Dos
юмор, а если попробовать удалить ? не скажет используется этими контейнерами?)))
𝕀𝕘𝕠𝕣
𝕀𝕘𝕠𝕣
Sergey
docker ps -f "volume=/var/lib/mysql" ?
Sergey
ну или по имени, вместо пути
Vadim
Всем привет!
Подскажите пожалуйста, а был ли у кого-нибудь опыт настройки Certbot для Amazon Linux?
Есть django-приложение, которое запускаю через docker-compose (так как присутствуют еще nginx и rabbitmq сервисы). При запуске через http все ок - приложение грузится, при https - Этот сайт не может обеспечить безопасное соединение
docker-compose.yml - https://pastebin.com/wLJr0p6Y
nginx-conf.conf - https://pastebin.com/DEQiMfga
Заранее благодарю!
Artem
Vadim
Запускаю nginx как compose-сервис
Передаю в него конфиги
Может проблема в том, что не указываю какие-то дополнительные параметры
Если он не причем - это здорово сужает область проблемы 😊
Vladislav
Всем привет! Я недавно познакомился с докером и у меня возник вопрос - как заставить его подняться самому после ошибки? Использую docker-compose v3
текущий конфиг (его часть) выглядит так:
Vladislav
Vladislav
P.S. проблема в том, что в момент, когда поднимается сервер, он не может подключиться к БД т.к. в это время она только собирается
twwlf
twwlf
ну и плюс у тебя должен завершаться процесс при проблемах с соединением к бд
Vladislav
это не решение проблемы. Данная команда следит за стартом, а не за завершением сборки
twwlf
это правда
Vladislav
в официальной доке указано, что depends_on не ждет момента, когда контейнер будет "готов", а запускает зависимый сразу после инициализации первого
Vladislav
и да, я это указал и проблема только при первом запуске, когда база данных еще не собрана, но это же ужасно - вручную пересобирать
Denis
Можете подсказать, как поменять файл внутри контейнера, скачанный с другого репозитория?
Denis
Denis
Вот, если точнее
Artem
Заходим и меняем через sed, потом коммитим контейнер, если надо.
Vladislav
Вначале ты говоришь, что из-за ошибки не рестартится, теперь ты говоришь, что это не ошибка. Сделай у себя в коде отсутствие соединения с базой как ошибку. Тогда контейнер автоматически перезапустится. И напиши, как тебе посоветовали, depends_on. Тогда твой контейнер не стартанет, пока не запустится контейнер с базой.
1) я говорил, что рестарт, в случае ошибки, просто не происходит, из-за чего я не могу понять что я делаю не так. Просто идет его игнорирование.
2) depends_on не помогает. при создании контейнера база НЕ успевает подняться, из-за чего происходит падение. При последующих запусках работает так, как надо.
Я приложил ссылку с полным конфигом данного сервиса
https://pastebin.com/hhzEu4xY
Andrey
Хелсчек запили
Andrey
Решит многие проблемы :)
Vladislav
ок, сейчас попробую)
Hикoлaй
Народ, подскажите плиз.
Кейс такой: для прода собираю контейнер, в нем присобачиваю текущий каталог в контейнер ADD ["./", "/var/www/app/"], потом аккурат перед entrypoint выполняю свой init.sh где в прилагу устанавливаются зависимости и происходит миграция, далее все стартует норм.
Для девелопмента же надо каталог проекта монтировать в контейнер, для моментальных изменений. Я это делаю так: в докерфайле ничего не меняю, каталог так же добавляется, но в docker-compose я поверх монтирую каталог
volumes:
- "./qr-sender/:/var/www/app"
но дело в том что монтирование происходит уже после отработки докерфайла где устанавливаются зависимости, и от этого все плохо(((
Как этот момент вы у себя обрабатываете?
Есть конечно мысля написать в композе command с нужным набором команд, но мне кажется это дико не удобно и не правильно
Artem
Добавь свой init в энтрипойнт
Artem
И передавай ему какой нибудь энвайромент для отработки
Artem
Типо init=1 для его запуска
Artem
Да
Hикoлaй
спс, щас попробую..
Hикoлaй
Artem
В скрипте энтрипойнта читаешь переменную init перед запуском основного процесса если она задана, то выполняешь нужные манипуляции
Hикoлaй
Anonymous
коллеги, всем доброго дня!
Artem
Anonymous
такая проблема (не уверен, проблема ли, баг или фича):
в общем создаём к примеру каталог /docker, метку селинукс не прописываем. права оставляем по дефолту. разве селинукс должен разрешить запись данных из контейнера в этот каталог в таком случае?
Anonymous
а, монтируем каталог в контейнер перед запуском, разумеется: -v /docker:/var/lib/mysql
Anonymous
потому что летом и в версии 16.03-16.09 это точно не работало
Anonymous
вопрос снят
Anonymous
в связи с тем, что на сайте заявлена поддержка selinux только для EE версии
Fomalhaut
Приветствую постояльцев! 😊
Fomalhaut
Подскажите, плз, как можно вывести список версий контейнера (или как там правильно)? Ведь можно указать ubuntu:14.04, если надо именно такой, а не latest. А вот сам список как увидеть?
Artem
docker ps и там где IMAGE написан же тег
Artem
или ты вообще про то какие доступны?
Fomalhaut
Алексей
docker hub
Artem
Заходишь в докерхаб и смотришь какие теги доступны
Fomalhaut
Понятно. Думал, что есть что-то аналогичное центовскому
yum list —showduplicates
Fomalhaut
Спасибо
Nklya
У меня такой алиас прибит для получения списка тегов
gettags(){
curl -s https://registry.hub.docker.com/v1/repositories/$1/tags|jq .
}
Fomalhaut
Hикoлaй
Andrey
Ребят, всем привет.
Скажите, а как по канонам докера собирать php сайтики?
По сути какие есть компоненты:
1) PHP код бека
2) html/css/js и вот это вот всё для фронта
3) php-fpm
4) nginx
5) База
Исходя из логики 1 процесс 1 контейнер, мне надо:
1) Volume для кода
2) Контейнер с php-fpm
3) Контейнер с nginx
4) Контейнер с базой
И вроде как все логично, но не редко вижу когда php суют вместе с кодом в один контейнер. А иногда еще и базу к ним селят. Хотелось бы мнения послушать.
Oleh
Один процесс на контейнер. Маунтишь вольюмы с базой и кодом отдельно. Остальное можно в контейнерах хранить.
Fomalhaut
А насколько рекомендовано деление "Один процесс - один контейнер"?
У меня nginx (frontend) и toncat (backend) - я подумывал объединить.
Fomalhaut
Мне кажется, что вполне можно объединять, чтобы не плодить сущности, по некоторым признакам.
Anonymous
Лучше держать в отдельных контейнерах