@docker_ru

Страница 1266 из 1375
George
02.06.2019
19:43:24
Например php, как некомпилируемый и на мой взгляд с ним проще чем с компилируемым, но не пойму как именно. Фрэймворк yii2. Для дэбага необходим xdebug модуль php, должен быть установлен в образ для разработчика, как я понял код нужно монтировать в образ, а для тестового и прода нужно код переписывать в образ для доставки на сервера и не должно быть при этом xdebug. И вот запутался как правильно сделать, два образа - это было первое решение, но планируется сервисов больше чем 4 и тогда - тушите свет, как рулить таким зоопарком образов docker
Ну, вариантов концептуально два: 1. Образ один и тот же, но разные конфигурационные настройки 2. Образы разные. Ещё накину. Все файлы кода должны быть внутри образа. Это сильно упрощает доставку. Т.к. в противном случае нужно доставлять три сущности: 1. Образы контейнеров 2. Докер компоуз или любое описание конфигурации контейнеров 3. Код Я же предлагаю обойтись 1+2. Далее. Код в вольюме - это удобно для разработки, т.к. позволяет оперативно вносить изменения. Для компилируемых языков и пайтона есть вообще хотрелоад при изменении кода

Но в проде - все изменения через регламентную процедуру в виде заливки обновленных образов. Что ещё сказать...

А, если наживую меняете код внутри запущенного контейнера, то изменения живут до пересоздания контейнера. Т.е. docker stop ОЧЕВИДНО не обнуляет эфемерную файловую систему контейнера :-) но для многих этот момент неясен

Google
Maxim
02.06.2019
19:49:37
https://serversforhackers.com/c/disable-in-prod
Для php это прям то что нужно, спасибо! В итоге для некомпилируемых типа php с дэбагером можно просто не загружать дэбагер, это отличное решение! Один образ для всех окружений, ура!

Осталось с компилируемыми разобраться

George
02.06.2019
19:49:54
О да) Это для многих сюрпризом является) А потом, бегают и удивляются, куда делись мои данные
Это в обе стороны работает. И в сторону куда делись данные, и в обратную - а почему файлы в контейнере изменённые, мы же вольюм не делали

Michel
02.06.2019
20:00:49
Всем ку, поделитесь опытом юзеры win10, как вы используете докер? У кого-то тулбокс работает корректно?

Michel
02.06.2019
20:04:08
Стоит на win, без прослоек
С включённой виртуализацией?

Maxim
02.06.2019
20:06:31
Все дело, в том что нужно для дебага
node.js вроде нужно собрать приложение с ключем development и тогда он будет использовать web socket для дэбага в chrome dev tools, для java необходимо что то подобное но разработчики еще не скинули описание, скорее всего пришлют скриншоты из Intellij или подобной ide, для python вроде так же как для php, но не уверен, разработчики подключатся только через неделю но думаю что раз нет необходимости компилировать то подход наверняка такой же как с php

Alexey
02.06.2019
20:07:08
Всем ку, поделитесь опытом юзеры win10, как вы используете докер? У кого-то тулбокс работает корректно?
Docker for windows установлен, и для удобства управления и сборки образов настроил docker в wsl

Michel
02.06.2019
20:07:35
Alexey
02.06.2019
20:07:58
Тулбоксом не пользовался

Google
Maxim
02.06.2019
20:33:35
Благодарю за подсказки, очень выручили!

Maxim
03.06.2019
07:38:48
Всем привет.

Есть задача: опубликовать пул портов. Т.е. docker run -p 100-200:80 ... Как-то так. Это возможно?

George
03.06.2019
07:39:43
Привет. Здесь можно сразу задавать вопрос, без прелюдий

Есть задача: опубликовать пул портов. Т.е. docker run -p 100-200:80 ... Как-то так. Это возможно?
если у тебя есть в Dockerfile нужное кол-во EXPOSE - есть параметр -P

если нужно ВЕСЬ диапазон зарулить в 80-й, то ты используешь не то средство - тебе нужно настраивать файрволл, иначе это будет не эффективно

я уж не говорю про то, что формулировка задачи весьма занятная. зачем тебе это?

Maxim
03.06.2019
07:41:19
Тест. ) Имено что на 1 порт.

Viktor
03.06.2019
07:41:35
Тест ради теста)

Maxim
03.06.2019
07:41:47
Есть вариант перебоать все по очереди, но это как-то не айс.

Ладно, спасибо. Прояснили.

George
03.06.2019
07:42:34
эм... for цикл в баше отменили?

Roman
03.06.2019
09:32:54
Привет! Имеется такой вот докер файл: FROM php:7.2-fpm-alpine3.8 RUN docker-php-ext-install sockets \ && docker-php-ext-enable sockets WORKDIR /var/www COPY www.conf /usr/local/etc/php-fpm.d/ COPY . /var/www Подскажите пожалуйста, как мне выдать права в /var/www* для www-data без добавления еще одного слоя, есть варианты?

Viktor
03.06.2019
09:35:03
У copy есть флаг --chown

Alex
03.06.2019
09:41:46
почему все так боятся сделать новый слой?

George
03.06.2019
09:42:29
не знаю

Roman
03.06.2019
09:45:37
почему все так боятся сделать новый слой?
а зачем, если можно не делать?

Google
Roman
03.06.2019
09:45:45
У copy есть флаг --chown
спс, поизучаю

Mr_Ras
03.06.2019
12:59:36
как сделать конфигурацию докера, если база данных даже не не хосте, а на сервере в локальной сети?

George
03.06.2019
13:00:01
не играет роли

Alexey
03.06.2019
13:00:52
как сделать конфигурацию докера, если база данных даже не не хосте, а на сервере в локальной сети?
Докеру БД не нужна. Если она нужна приложению в докере - пиши ему хост или ип, и убедись что есть доступ с хост-машины докера

Gennady
03.06.2019
13:11:04
Добрый день китики. может кто пояснить за то, что "под капотом" происходит? Если есть 3-4 контейнера, например БД, клиент, бекенд часть приложения. Каждый торчит куда-то в свой порт, может ли кто обьяснить, как идёт запрос от одного контейнера к другому? Тип, это проходит через какой-то слой?

Gennady
03.06.2019
13:13:41
Торчит куда-то в свой порт в своей виртуальной подсети, где ходит к другим контейнерам по их именам
а кто конкретно ходит по именам? Какая часть докера за это отвечает?

Alexey
03.06.2019
13:16:24
а кто конкретно ходит по именам? Какая часть докера за это отвечает?
Докер за это не отвечает. Ты запускаешь контейнеры, контейнеры - это упрощенные образы стандартных систем на линукс-ядре, вся работа ходить куда-то и резолвить куда - на их совести. Докер тебе дает изоляцию контейнеров, возможности сделать между ними общую сеть, и в том числе и дает свой днс-резолвер, через который и будет система в контейнере выяснять ip соседа

Gennady
03.06.2019
13:16:43
аааааааааааааааа

вот оно как

спасибо большое

Попов
03.06.2019
13:20:40
Привет всем, подскажите, есть сервисы в docker-compose - php, mysql, nginx, соответственно висит несколько разных доменов с сайтами и все замечательно, кроме одног, почта не уходит через функцию mail(), пытался прикрутить ssmtp и разные конфиги, в nginx делал fastcgi_param PHP_VALUE "sendmail_path=/usr/sbin/ssmtp -t -C /etc/ssmtp/ssmtp-mydomain.conf"; но эта фигня никак не хочет адекватно работать, кто с таким сталкивался? представим, что есть несколько разных доменов и виртуальных хостов соответственно, как почту отправлять с них по функции mail()? postfix прикручивать?

Попов
03.06.2019
13:22:50
тогда не пойму как каждому виртуальному хосту задать свой реелй

Попов
03.06.2019
13:27:49
так отправляй по смтп протоколу
ну так я и хочу по smtp отправлять, в качестве релея что юзать то? ssmtp - откразывается адекватно работать с TLS, а postfix если настраивать для разных доменов как?

Google
George
03.06.2019
13:27:53
https://stackoverflow.com/a/14456761/698689

зачем тебе релей?

я не пойму

" ssmtp - откразывается адекватно работать с TLS " - ????

Попов
03.06.2019
13:28:30
https://stackoverflow.com/a/14456761/698689
дык не уходит почта потому, что в мир

есть 10-ть разных доменов, соответственно 10-ть виртуальных хостов, надо с кажого скриптами отправлять почту, чтобы каждый отправлял от имени своего домена

George
03.06.2019
13:36:21
А такой - типа веб хостинг в докерах. Кхм

Ну, тогда реально решение постфикс на хосте. И слать удаленно смтп через него

Т.е. в этом кейсе локальный вызов ,mail () как не работал, так и не будет работать

Попов
03.06.2019
13:37:42
у меня есть почтовик, но как то не хочется в PHP скриптах прописывать логины и пассы до него, а как то упростить задачу

тоесть я могу для каждого домена создать почту на центральном почтовике, но как их связать, чтобы через PHP один домен отправлял от себя и другой от себя отправлял функцией mail без замороча

George
03.06.2019
13:39:19
Без заморочек - нет

Наверное, можно как-то пошарить каталоги с очередью почтовика. Но это не будет секурно и точно не проще, чем переделать на смтп

Попов
03.06.2019
13:40:13
решение одно я нашел, в NGINX каждому домену добавить fastcgi_param PHP_VALUE "sendmail_path=/usr/sbin/ssmtp -t -C /etc/ssmtp/ssmtp-mydomain.conf";

George
03.06.2019
13:40:18
Внедрив докер ты получил ситуацию, что у тебя как будто не один сервер, a N

Попов
03.06.2019
13:40:56
но ssmtp отказывается у меня напрочь работать с TLS

получилось сделать, ослабив секурность и по 25 порту слать

Попов
03.06.2019
13:42:41
587 SMTP over TLS - хер, не хочет

Google
George
03.06.2019
13:42:42
Не будут ли стучать в 25й снаружи ?

587 SMTP over TLS - хер, не хочет
Ну, варианты с сертификатом и пр. - смотрел ? Там все совпадает ?

Чего в логах прсификска ?

Но это не специфично для докера, опять же

Попов
03.06.2019
13:43:29
Ну, варианты с сертификатом и пр. - смотрел ? Там все совпадает ?
да уже неделю, все варианты и весь гугл перечитал блин

Страница 1266 из 1375