
Bohdan
26.06.2018
14:00:30
но предполагаю, что они исходят из практики "один контейнер - один инстанс"
хотя хрен знает, надо смотреть

bebebe
26.06.2018
14:06:04

Дмитрий
26.06.2018
14:14:27

wild
26.06.2018
14:15:10

Google

Дмитрий
26.06.2018
14:15:29
в кавычках

wild
26.06.2018
14:15:31
даже указывая //c//logs:/logs не работает

Дмитрий
26.06.2018
14:15:48
Блэ. На винде чтоли?

wild
26.06.2018
14:19:41
да

Дмитрий
26.06.2018
14:20:06
На винде крайне херово работают Shared Folders

YURII
26.06.2018
15:00:23
Доброго дня, такой вопрос:
Стоит ли при найтройке дев энваиремента для связки пхп+мускуль+редис+нгинкс
Шарить сокеты или юзать обычный tcp

Yury
26.06.2018
15:02:27
А вы сравнивали скорость сокетов? Часто даже для прода нет разницы.

YURII
26.06.2018
16:01:17
Пока только стои вопрос: а стоит ли игра свеч. Сокеты очень слодна настравать права, это жирный минус

Sergey
26.06.2018
16:54:32
Подскажите, можно ли в Dockerfile выполнить команду из вне, например в контейнер нужно добавить бинарник который является результатом копиляции? Или правильно исходники закидывать в контейнер и там их копилить?

Vladimir
26.06.2018
17:00:53
Допустим, джоба в дженкинсе, которая сначала билдит приложение, а потом докерфайл, который добавляет результат этого билда себе в образ
Миллион раз такое делали, норм тема

Sergey
26.06.2018
17:01:35

Google

Vladimir
26.06.2018
17:01:59
Баш скрипт может всё это сделать

Sergey
26.06.2018
17:02:40
Смотря как собирать
Вообще у меня в проекте несколько модулей которые всобираются командой ./gradlw bootJar и потом запускается docker-composer

Vladimir
26.06.2018
17:03:00
Сначала gradlw, потом докер-композ

Sergey
26.06.2018
17:03:22

Vladimir
26.06.2018
17:04:03

Sergey
26.06.2018
17:05:07
типо запусти мне ls -la до сборки хочу видть файлы в текущей папке

Vladimir
26.06.2018
17:06:26

Bohdan
26.06.2018
17:15:46
еще multistage билды для этих целей хороши
как пример - mcuadros/ofelia на гитхабе
там на го, но суть та же

Kirill
26.06.2018
18:00:46
.NET Core тоже как пример подойдет
Но репу сейчас не скажу точно

Антон
27.06.2018
06:16:55
Привет. Есть такие, кто настраивал xDebug в PhpStorm для nginx + php-fpm контейнеров?
2 дня е**сь уже, никак не могу завести. И понять не могу, почему не робит. Исопльзую офф. образы

Sad but
27.06.2018
06:17:24

Дмитрий
27.06.2018
06:17:24
Только у меня свой образ пыхи

Антон
27.06.2018
06:18:47
docker-compose
version: '3'
services:
nginx:
image: nginx:1.15
container_name: nginx
ports:
- 80:80
- 443:443
volumes:
- ./docker/nginx/conf.d:/etc/nginx/conf.d
- ./:/var/www/html
- ./logs/nginx:/var/www/log:rw
links:
- php
restart: always
php:
build:
context: ./docker/php
dockerfile: Dockerfile
container_name: php
volumes:
- ./:/var/www/html
restart: always

Google

Антон
27.06.2018
06:19:03
Dockerfile
FROM php:7.2-fpm
ENV XDEBUG_ENABLED 0
RUN apt-get update && \
apt-get install -y \
zlib1g-dev \
libcurl3-dev && \
pecl install xdebug && \
docker-php-ext-install \
zip \
curl \
pdo_mysql && \
docker-php-ext-enable xdebug
COPY conf.d/ /usr/local/etc/php/conf.d/
EXPOSE 9000 9001
CMD ["php-fpm"]
xdebug.ini
xdebug.remote_enable = 0
xdebug.remote_autostart = 0
xdebug.remote_port = 9001
xdebug.idekey = PhpStorm

Дмитрий
27.06.2018
06:19:50

Антон
27.06.2018
06:20:06
почему?

Дмитрий
27.06.2018
06:20:31
# Set xDebug
RUN echo "xdebug.remote_autostart=$XDEBUG_STATE" > $PHP_INI_DIR/conf.d/xdebug.ini \
&& echo "xdebug.remote_enable=$XDEBUG_STATE" >> $PHP_INI_DIR/conf.d/xdebug.ini \
&& echo "xdebug.default_enable=$XDEBUG_STATE" >> $PHP_INI_DIR/conf.d/xdebug.ini \
&& echo 'xdebug.idekey=PHPSTORM' >> $PHP_INI_DIR/conf.d/xdebug.ini \
&& echo 'xdebug.remote_host="host.docker.internal"' >> $PHP_INI_DIR/conf.d/xdebug.ini \
&& echo 'xdebug.remote_handler=dbgp' >> $PHP_INI_DIR/xdebug.ini \
&& echo "xdebug.remote_port=$XDEBUG_PORT" >> $PHP_INI_DIR/conf.d/xdebug.ini \
# Disable xDebug for none local builds
&& sh -c "if [[ $XDEBUG_STATE = 'Off' ]] ; then sed -i '1s/^/;/' $PHP_INI_DIR/conf.d/00_xdebug.ini ; fi"

Bohdan
27.06.2018
06:20:59
тоже настаивал

Дмитрий
27.06.2018
06:21:02
Это правда мой конфиг) сути не меняет, у тебя IP адреса нет, куда ему запросы слать

Антон
27.06.2018
06:21:25
да я и remote_host указывал, и без него

Bohdan
27.06.2018
06:21:43
либо connect_back нужно, либо remote_host
но первый не работает с cli

Дмитрий
27.06.2018
06:22:03
connect_back в докере не работает нормально

Антон
27.06.2018
06:23:12
у меня есть рабочий вариант apache+php (ubuntu образ). Там все ок робит))
а тут не хочет

Дмитрий
27.06.2018
06:23:12
И вот еще что нужно сделать, а то замучаешься

Антон
27.06.2018
06:23:38
ну порт я указал

Дмитрий
27.06.2018
06:23:44
Я про галки

Bohdan
27.06.2018
06:24:22

Антон
27.06.2018
06:24:40
localhost?

Дмитрий
27.06.2018
06:24:48

Google

Антон
27.06.2018
06:24:52
а не remote_host?

Sad but
27.06.2018
06:25:11
Адрес докера глянь, у меня он стоит

Дмитрий
27.06.2018
06:25:14

Bohdan
27.06.2018
06:25:48

Admin
ERROR: S client not available

Антон
27.06.2018
06:26:49

Дмитрий
27.06.2018
06:27:46
А, стоп. Вру. Он не проброшен. ?

Max
27.06.2018
06:27:56
Ахаха. Директивы портс нету в композе...
php:
build:
context: ./docker/php
dockerfile: Dockerfile
container_name: php
volumes:
- ./:/var/www/html
restart: always

Антон
27.06.2018
06:28:01

Дмитрий
27.06.2018
06:28:13

Bohdan
27.06.2018
06:28:37

Max
27.06.2018
06:28:38
значит локально служба работает или запущена раньше была. Страдайте

Дмитрий
27.06.2018
06:30:38
Наоборот нельзя пробрасывать порт xDebug, потому что он занят уже слушателем PhpStorm

Антон
27.06.2018
06:31:39
ога, есть такое

Bohdan
27.06.2018
06:32:27
конфиг xdebug
;zend_extension=xdebug.so
xdebug.remote_enable=on
xdebug.remote_connect_back=off
xdebug.remote_host=172.18.0.1
xdebug.coverage_enable=off
xdebug.profiler_enable = false
xdebug.profiler_enable_trigger = true

Sad but
27.06.2018
06:32:44

Bohdan
27.06.2018
06:33:02
для php
environment:
XDEBUG_CONFIG: 'idekey=PHPSTORM'
PHP_IDE_CONFIG: "serverName=docker"
порты наружу не торчат
в шторме нужно настроить сервер
и соответственно его назвать

Антон
27.06.2018
06:34:18

Google

Антон
27.06.2018
06:34:24
точней не так

Дмитрий
27.06.2018
06:34:31
xdebug.remote_host=172.18.0.1
если сетка кастомная, лучше юзать host.docker.internal

Антон
27.06.2018
06:34:33
где написать это я знаю

Дмитрий
27.06.2018
06:34:47

Bohdan
27.06.2018
06:35:57
это переменные окружения для образа php

Антон
27.06.2018
06:36:49

Bohdan
27.06.2018
06:38:06
их вроде xdebug подхватит
ну или шторм, не помню
порт не менял, нигде вроде
фпм тоже на 9000 висит и не жалуется
но вроде бы суть в том, что в данном варианте xdebug коннектится к шторму, а не наоборот, потому на порт пофиг (могу ошибаться)

Антон
27.06.2018
06:38:33

Bohdan
27.06.2018
06:39:30
тогда шторм ловит их, скорее всего
idekey - это вообще для ide, а server_name - точно для шторма
он на основании этого вроде маппинги делает (на основании конфига сервера)

Антон
27.06.2018
06:41:03
xdebug.remote_host=172.18.0.1
а это ip контейнера php? или сетки?

Vladimir
27.06.2018
06:42:44
remote_host это ip хоста с ide