Anonymous
Т.е. для меня это в плюс
Anonymous
Но я не стану каждому клиенту под его сайт настраивать конфиг
Oleg
Можете в nginx прокинуть хоть 1000 конфигов
речь очевидно не о том как запустить на вирт-хостинге что-то а как развернуть инфраструктуру виртуального хостинга с php mysql и всем этим. php-fpm там не очень подходит, тк эта вселенная привычна к апачам и htaccess
Александр
Если нужен .htaccess, то да, согласен
Anonymous
php-fpm в виртуальном хостинге тоже используется (для CMS хостинга, когда все сайты на сервере работают на одной CMS).
Anonymous
Пытаюсь сделать так, чтобы контейнер при создании подключался к сети version: "3.3" services: web: image: ubuntu:latest ports: - 81 networks: default: external: name: network Но Docker почему-то не поддерживает external services.web.networks.default contains unsupported option: 'external'
Igor
External должен вроде от рутовых нетворков идти
Anonymous
В версии 3.3 это убрали, по крайней мере во второй вроде всё работает
Anonymous
Суть в том, что мне нужен аналог --network=some-network из Docker CLI
Oleg
В версии 3.3 это убрали, по крайней мере во второй вроде всё работает
если сеть вненшняя, то тот факт что она внешняя надо описать в композ-файле отдельно.
Oleg
version: '3' services: web: build: ./web restart: always networks: - mynetwork - default networks: mynetwork: external: true
Oleg
как-то так
Александр
default не забудь, чтоб соседние контейнеры видел
Oleg
исправил ага
Anonymous
ОК
Anonymous
Только теперь после создания контейнер самоуничтожается
Anonymous
---> Running in 1bf424ef9ffc .... ---> f7b76b1d5be4 Removing intermediate container 1bf424ef9ffc
Chebyrash
Он и не запускался
Anonymous
docker-compose up Recreating php70_web_1 ... Recreating php70_web_1 ... done Attaching to php70_web_1 php70_web_1 exited with code 0
Chebyrash
Смотрите логи контейнера
Anonymous
Нет контейнера - нет логов
Chebyrash
docker ps -a
Oleg
значит процесс завершился. или проблемы с ENTRYPOINT / CMD (что вероятнее судя по сode 0) или что-то крашнулось
Chebyrash
Находите умерший контейнер
Chebyrash
Смотрите его логи
Anonymous
Мёртвый контейнер:
Anonymous
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES 6a47eca3a20f ubuntu:latest "/bin/bash" 2 minutes ago Exited (0) 2 minutes ago php70_web_1
Anonymous
Логов нет
Oleg
docker logs php70_web_1 ?
Anonymous
Пустота
Anonymous
root@dartp52:/# docker logs php70_web_1 root@dartp52:/#
Chebyrash
Oleg
тогда смотрите что у вас там в ENTRYPOINT / CMD
Oleg
а ну да.
Anonymous
Ничего необычного
Anonymous
https://pastebin.com/NAUicv3F
Oleg
последняя строчка
Oleg
run заменить на cmd
Oleg
run - это про построение окружения: установка пакетов и зависимостей
Oleg
cmd - это что запускать при старте контейнера
Oleg
run исполняется при построении образа
Oleg
cmd - при запуске контейнера
Anonymous
Даже так выход с кодом 0
Anonymous
CMD apache2ctl graceful
Oleg
docker-compose up --build — чтобы он перестроил образ заново если Dockerfile поменялся
Oleg
иначе будет запускать контейнер с предыдущего образа - ессно с тем же результатом
Chebyrash
CMD apache2ctl graceful
CMD ["apache2ctl", "graceful"]
Anonymous
Successfully built 9a341d1fb063 Successfully tagged ubuntu:latest Creating php70_web_1 ... Creating php70_web_1 ... done Attaching to php70_web_1 web_1 | AH00558: apache2: Could not reliably determine the server's fully qualified domain name, using 172.19.0.2. Set the 'ServerName' directive globally to suppress this message web_1 | httpd not running, trying to start php70_web_1 exited with code 0
Oleg
ну собсно все запускается. только апач на конфигурацию ругается
Anonymous
В логах только это
Anonymous
AH00558: apache2: Could not reliably determine the server's fully qualified domain name, using 172.19.0.2. Set the 'ServerName' directive globally to suppress this message httpd not running, trying to start
Anonymous
Ничего критичного в этом сообщении нет
Александр
Уже 500 раз бы подняли php:apache без плясок с бубном
Oleg
а
Oleg
ну ясн
Anonymous
Мне нужен MPM-ITK
Oleg
-DFOREGROUND
Oleg
CMD ["apache2ctl", "graceful", "-DFOREGROUND"]
Александр
Мне интересно, как вы это админить будете? Может без докера? Я полагаю, вы с каждой мелочью щас разбираетесь, и сразу в прод на сотни клиентов
Anonymous
Примерно так. А как Вы будете запускать несколько Apache на хосте без Docker ?
Anonymous
Да, есть геморрой с компиляцией Apache
Anonymous
Отдельно на каждую версию PHP
Александр
Мне нужен MPM-ITK
Можно добавить его
Oleg
разные версии похапе вроде нужны
Anonymous
Один никак не подходит?
Нет, потому что нужны разные версии PHP
Александр
Php-fpm
Anonymous
Про php-fpm я знаю
Александр
Посмотрите курс shippingdocker, чуть проще будет
Anonymous
Мда
Anonymous
Попробовал собрать образ на базе Debian Jessie - тоже самое
Anonymous
В логах ничего нет
Anonymous
Всё собирается
Anonymous
Ничего не запускается
Oleg
вам нужно запустить apachе не как демона а в foreground
Oleg
копайте в эту сторону
Oleg
"демоном" — фоновым процессом на хост-машине — в данном случае будет выступать собственно контейнер. соотв процесс внутре контейнера должен бежать не демоном а в фореграунде. как только foreground-процесс завершится, то "завершится" и контейнер.