
Алексей
23.08.2018
14:45:30

Роман
23.08.2018
14:49:30
Так, похоже я разобрался.
Видимо bash автоматом убивает nginx, если я вхожу с командой bash.
Большое спасибо!

Алексей
23.08.2018
14:59:00
У тебя в нормальной конфигурации в контейнере работает один родительский процесс.
В Dockerfile ты говоришь "запусти nginx". В командной строке ты говоришь "нет, не слушай Dockerfile, запусти bash".

Google

Роман
23.08.2018
15:12:55
Не знал, что оно так работает!
Теперь понял.

Alexander
23.08.2018
15:15:37

Boris
23.08.2018
15:22:29
Как решить задачу с подключением http/2 в docker?
Требуется сертификат, а я цепляю его аж на лоад балансере

Роман
23.08.2018
15:24:03
Кстати, docker exec
Да, теперь понимаю, что
docker run -it xxxx bash
И
docker exec -it xxxx bash
имеют совершенно разный результат.

Vasiliy
23.08.2018
15:24:40
Или вопрос в том - как на БН закинуть сертификат для сайта ?

Boris
23.08.2018
15:28:12
Нет, просто использую elastic load balancer, а он в этом понятии не конфижится
поэтому ответ в http2 нужно отдать из контейнера

Vasiliy
23.08.2018
15:31:11

Boris
23.08.2018
15:31:44
Верно, с амазона

Vasiliy
23.08.2018
15:32:35
Ну а докер тогда тут причём ?
Может в чате aws и спросить ?

Boris
23.08.2018
15:33:54
В докере nginx должен работать по http/2, тогда и ELB будет
Вопрос касается докера, т.к. интересно как решают этот вопрос используя контейнеры

Google

Boris
23.08.2018
15:34:29
Где как правило ни хостнеймов ни сертификатов нет

Dima
23.08.2018
15:49:02

Алексей
23.08.2018
15:57:27
Господа, есть ещё вопрос.
Есть задача идентифицировать воркеры работающие в Swarm. Ну, то есть чтобы знать что не "какой-то воркер зафейлил таск", а что вот конкретный запуск.
В среде внутри контейнера есть что-то что может каждый таск Swarm идентифицировать? Или лучше просто при запуске воркера в контейнере генерить UUID и его использовать для идентификации?

Vasiliy
23.08.2018
15:57:52
Где как правило ни хостнеймов ни сертификатов нет
Под словом hostname ты имеешь ввиду http-заголок Host, который клиент присылает или backend ?
А вообще вот - https://github.com/jwilder/nginx-proxy
+ lets-encrypt proxy companion
Еще коллеги traefic и что-то там в кубернетесе хвалили, но я не использовал.

Konstantin
23.08.2018
16:16:55

Dima
23.08.2018
16:18:03

Alexey
23.08.2018
16:50:36
Оо, как раз хотел сказать.
Ранее когда спрашивал, у меня почему то не работал nginx-proxy и traefik внутри контейнера. сейчас я понял свою ошибку, что контейнеры в бэкенде после прокси, у них можно не публиковать порты и проксировать нужно на внутренний порт контейнера
а я раньше проксировать с внешнего 80 на внешний 8080 и получал ошибку bad gateway ?

Александр
23.08.2018
17:09:11
Доброго времени суток. Вопрос по сборке php приложения в докере.
Как можно упаковать так, чтобы в одном контейнере запускался веб сервер (nginx) и php(fpm) или так плохо делать?
Если плохо, то как тогда собирают подобное? Используют php-apache образ?

Алексей
23.08.2018
17:43:48

Kirill
23.08.2018
18:03:50
+

Александр
23.08.2018
18:15:53

arts
23.08.2018
18:26:43

Александр
23.08.2018
18:28:26

Алексей
23.08.2018
19:25:55
Для фронта нужно обращаться нодой, нам, вебпаком..... Для Бэка хватит хдебуга и компостера

Александр
23.08.2018
19:31:03
Ну это можно через multistage build собрать
И мне больше нравится рассматривать фронт и Бек как составляющие одного приложения

arts
23.08.2018
19:40:35

Александр
23.08.2018
19:40:59
Есть ведь официальные образы apache-php

Google

Александр
23.08.2018
19:42:14
Их не используют?

arts
23.08.2018
19:42:32
Апач вообще труп давно
И там пхп работает внутри процесса апача, как подключаемая библиотека

Александр
23.08.2018
19:43:52
А, понятно. В общем только разделять на 2 контейнера?

arts
23.08.2018
19:43:59
Да
Не воспринимай контейнер как виртуалку. Контейнер — это всего лишь изолированное окружение для процесса.

Александр
23.08.2018
19:45:30
Тогда не понимаю как без volume прокидывать код приложения в fpm и nginx контейнеры

arts
23.08.2018
19:53:29
Копировать при сборке.

Mikalai
23.08.2018
20:33:54
Добрый вечер, господа. А чем бы максимально дёшево по железу замониторить докер ноду?

Aleksey
23.08.2018
21:32:51

Mikalai
23.08.2018
21:33:14

Aleksey
23.08.2018
21:33:31

bebebe
23.08.2018
23:04:03

Mikalai
23.08.2018
23:05:00

bebebe
23.08.2018
23:05:54
максимально дешево, это tmuxinator темлпейт который запускает tmux сессию на все машины и запускает там htop например

Sergey❄️
23.08.2018
23:14:54
Error parsing reference: "debian:jessie-slim as builder" is not a valid repository/tag: invalid reference format
В dockerfile написано вот так
FROM debian:jessie-slim as builder
Докерфайл честно украден, такой синтаксис больше не поддерживается?
похоже регистр для AS был важен
Нет, та же ошибка

bebebe
23.08.2018
23:25:15
docker какой версии?

Sergey❄️
23.08.2018
23:26:10

Google

Александр
24.08.2018
07:16:15
Копировать при сборке.
Извини, что беспокою опять, если есть время, мог бы ты глянуть на репозиторий (он очень простой) примера как собирается php приложение. Так ли делают? спасибо
https://git.quantick.ru/quantick/docker-php-nginx-multistage

Роман
24.08.2018
07:21:21
Друзья, доброе утро!
Я с теми же вопросами. Снова нужна ваша помощь.
Собираю вот такой контейнер: https://gist.github.com/rrubashkin/178296746a73ea583d89ae8ab75b9540
Но, он умирает сразу после запуска (docker run -d).
Перепробовал уже много вариантов, но, ничего не получается. Что я делаю не так? Заранее спасибо

Tores
24.08.2018
07:21:30
ДД, подкажите - вот из мурзилки docker run -d -p 8000:8000 -v /local/config.yml:/opt/config.yml:ro --name=registry-ui quiq/docker-registry-ui
вопрос а разве можно смотнировать файл (именно фай а не директорию )при таком запуске??? я просто туплю и не могу понять, контейнер падает по логичной причине что config.yaml - это директория

Robert
24.08.2018
07:21:51

Александр
24.08.2018
07:22:23

Robert
24.08.2018
07:24:30
они в разных так то
FROM composer AS builder
COPY ./composer.json /var/www/app/composer.json
WORKDIR /var/www/app/
RUN composer install --ignore-platform-reqs --no-scripts
COPY . /var/www/app/
FROM php:fpm AS app
COPY --from=builder /var/www/app/ /var/www/app/
EXPOSE 9000
FROM nginx AS web
COPY default.conf /etc/nginx/conf.d/default.conf
COPY --from=builder /var/www/app /var/www/app
EXPOSE 80
Они у тебя так разные получаются?

Александр
24.08.2018
07:24:48
это multistage build
https://git.quantick.ru/quantick/docker-php-nginx-multistage/src/master/docker-compose.yaml
вот композ файл

Robert
24.08.2018
07:25:34
Жесть какая-то

alexey
24.08.2018
07:26:05
А зачем nginx и php-fpm в одном контейнере
Привет! Нет ли у тебя ссылки на бест практикс, как грамотно разделить nginx с php-fpm, чтобы не было траблов с отдачей статики и т.д включая правильное проксирование с nginx на php-fpm cgi. Спасибо!

Robert
24.08.2018
07:27:56

Александр
24.08.2018
07:28:10
а как прокинуть данные из fpm контейнера в nginx?
без использования volume

Robert
24.08.2018
07:29:52
Данные должны быть в pho fpm
По тому пути что указаны в конфигурация nginx

Александр
24.08.2018
07:36:05

Google

Александр
24.08.2018
07:54:09

Роман
24.08.2018
08:01:44
Друзья, может кто-нибудь подсказать?
Друзья, доброе утро!
Я с теми же вопросами. Снова нужна ваша помощь.
Собираю вот такой контейнер: https://gist.github.com/rrubashkin/178296746a73ea583d89ae8ab75b9540
Но, он умирает сразу после запуска (docker run -d).
Перепробовал уже много вариантов, но, ничего не получается. Что я делаю не так? Заранее спасибо

Александр
24.08.2018
08:02:58
Данные должны быть в pho fpm
Всё, дошло, разделил на разные Dockerfile'ы - работает. Но в сборке nginx всё равно нужно делать COPY проекта, если совсем не прокидывать - не работает

Egor
24.08.2018
08:05:41
никогда этим не страдал nginx +php-fpm прекрасно уживаются

Kirill
24.08.2018
08:07:32

Александр
24.08.2018
08:07:59

Egor
24.08.2018
08:08:21

Robert
24.08.2018
08:08:27
Зависит от вашего понимания и соглашения с парадигмой микросервисов

Egor
24.08.2018
08:08:39

Александр
24.08.2018
08:09:50
У меня пока очень простая задача, чисто для обучения. Мне нужно собрать и развернуть простое php приложение по идеологии docker'а, чтобы понять как с этим работать. Для dev среды там все просто, volume делаешь и все ок. А для production пока возникаются вопросы, ведь там уже не желательно использовать volume
и оно работает как я сделал, но вопрос остается, правильно ли так делать или нет

Egor
24.08.2018
08:11:51
или логов
А платформа готовится не через Build а через запуск контейнера, установкой и последующим коммитом.

Александр
24.08.2018
08:24:40
короче нет единого рецепта, каждый готовит как знает и умеет)