@ru_docker

Страница 378 из 610
Aleksey
19.08.2017
02:47:25
Утра не спящим :3

Хочу развернуть на сервере инфраструктуру для разработки и тестирования сайтов, а так же для хранения пары работающих сайтов. Для этого выбрал docker со связкой nginx+ssl->php7-fpm->mariadb. Почитав много документаций, возникли некоторые вопросы, в которых я не могу разобраться. 1. Если я буду использовать связку контейнеров nginx-proxy -> (apache/nginx ?)+ssl->php7-fpm->mariadb, то как я понял, указывать на docker контейнеры с сайтами (5-7 сайтов) нужно будет в nginx-proxy ? Или я что то не понимаю? 2.На основе первого вопроса. Имеется сервер на debian 8. На сервере две сетевые карты, в первую входит инет, вторая раздает его на локалку ну и на сервер, так же на сервере поднят dnsmasq. Каким образом можно получить доступ к сайтам из первого вопроса (test.com, test2.com) развернутых в docker контейнерах (nginx-proxy -> (apache/nginx ?)+ssl->php7-fpm->mariadb)

Yuriy
19.08.2017
10:50:53
Хочу развернуть на сервере инфраструктуру для разработки и тестирования сайтов, а так же для хранения пары работающих сайтов. Для этого выбрал docker со связкой nginx+ssl->php7-fpm->mariadb. Почитав много документаций, возникли некоторые вопросы, в которых я не могу разобраться. 1. Если я буду использовать связку контейнеров nginx-proxy -> (apache/nginx ?)+ssl->php7-fpm->mariadb, то как я понял, указывать на docker контейнеры с сайтами (5-7 сайтов) нужно будет в nginx-proxy ? Или я что то не понимаю? 2.На основе первого вопроса. Имеется сервер на debian 8. На сервере две сетевые карты, в первую входит инет, вторая раздает его на локалку ну и на сервер, так же на сервере поднят dnsmasq. Каким образом можно получить доступ к сайтам из первого вопроса (test.com, test2.com) развернутых в docker контейнерах (nginx-proxy -> (apache/nginx ?)+ssl->php7-fpm->mariadb)
1. Если я буду использовать связку контейнеров... Тебе ничего не мешает настроить 1 nginx на несколько сайтов с разными инстансами php-fpm / Марии и проч. 2. Каким образом можно получить доступ к сайтам из первого вопроса развернутых в docker контейнерах; EXPOSE в докерфайле опубликует порт контейнера, потом в рамках сети docker network ты можешь этот порт пробросить на конкретный сетевой интерфейс - под капотом используется iptables и bridge-utils, можешь ручками поднять по желанию. Почитай доков в общем ...

Google
Yuriy
19.08.2017
10:54:16
Спасибо за ответ, доки как раз читаю)
Разберись с разделами docker volume и сетью docker network. Потом глянь storage / network driver'ы. Сейчас имеет смысл использовать macvlan и LVM. Overlay Network так себе... если хочешь/будешь использовать Swarm то выбора особо то и нет - придётся его использовать так как остальное плохо поддерживается.

Yuriy
19.08.2017
17:04:50
Производительность у OverlayFS / Overlay Network не ахти, а btrfs уже давно deprecated в некоторых дистрах, остаётся только lvm :D

Алексей
19.08.2017
17:10:08
где вам там нужна производительность на overlayfs я ниразу не понимаю

там все данные должны немедленно осесть в page cache

а если они там нет значит у вас беда

Phil
19.08.2017
17:11:15
Yuriy
19.08.2017
17:11:39
Ясно-понятно

там все данные должны немедленно осесть в page cache
Я не думаю что мне стоит объяснять почему это плохая идея. ... хотя бы потому что докер не поддерживает DAX (https://www.kernel.org/doc/Documentation/filesystems/dax.txt)

Тоже самое и с Overlay Network - сейчас Contiv (Open vSwitch менеджер от Cisco) по пропускной способности и задержкам на много его превосходит. OVS можно пропатчить под DPDK со всеми последствиями...

Google
Алексей
19.08.2017
17:22:32
Я не думаю что мне стоит объяснять почему это плохая идея. ... хотя бы потому что докер не поддерживает DAX (https://www.kernel.org/doc/Documentation/filesystems/dax.txt)
Юрий, вы говорите про то что интерпретатор php который запущен в докере не будет немедленно в пейдж кеше ? или же про то что php скрипты не окажутся там же через времмя выполнения ?

ведь докер контейнеры неизменны и писать в них против бестпрактиса

Dulat
19.08.2017
19:00:04
Всем привет. Использую docker для локальной разработки. Работаю на OSX. Что посоветуете использовать для синхронизации изменений в volume на контейнере, c измененими на хосте?

Combot
19.08.2017
19:04:27
combot.org/chat/-1001043771136

Yuriy
19.08.2017
21:22:54
Юрий, вы говорите про то что интерпретатор php который запущен в докере не будет немедленно в пейдж кеше ? или же про то что php скрипты не окажутся там же через времмя выполнения ?
1. "не будет немедленно в пейдж кеше" Немедленно не будет - есть порог вхождения. 2. "или же про то что php скрипты не окажутся там же через времмя выполнения" Надо думать о количестве копий этих самых php скриптов. 3. "ведь докер контейнеры неизменны и писать в них против бестпрактиса" Я не говорю что в них надо писать, я говорю что если у нас есть многослойный CoW скорость чтения падает экспоненциально количеству слоёв. У OverlayFS в этом плане совсем дела обстоят не ахти - текущая реализация довольно костыльная, также она особо не отличается надёжностью по ряду причин. 4. "про сеть я не знаю" На практике использовал раньше outscale/butterfly для своих проектов, потом под докером поднимал руками OVS... надоело менеджить и слез на Contiv так как в нём уже есть нормальная реализация network driver'a. Грубо-говоря разница между Contiv и Overlay ровно такая же как между Open vSwitch и iptables + linux bridge.

Ilja
19.08.2017
21:49:21
всем привет

вопрос по поводу установки докера

у многих было зависание при старте сервиса докер?

по факту даже установка до конца не может завершиться

из гугла варианты не помогли

Phil
19.08.2017
21:51:04
Угу. Небось ищет девпйсмаппер котлрого нет

Ilja
19.08.2017
21:53:10
тогда как быть?

Phil
19.08.2017
21:55:52
А подкиньте еще не установленному docker.conf или как он там и пропишите принудительно overlay2

Я простите в душе, но направление гугления такое. Или aufs для начала

Ilja
19.08.2017
21:57:07
спасибо посмотрю

Phil
19.08.2017
22:00:58
Смысл в том, что он автоматом чтото вычислить не может при старте

У меня такое было с devmapper

Модуль в ядре есть, а lvm не настроен

Google
Aleksey
19.08.2017
22:24:34
Доброй ночи всем

Алексей
19.08.2017
22:24:49
1. "не будет немедленно в пейдж кеше" Немедленно не будет - есть порог вхождения. 2. "или же про то что php скрипты не окажутся там же через времмя выполнения" Надо думать о количестве копий этих самых php скриптов. 3. "ведь докер контейнеры неизменны и писать в них против бестпрактиса" Я не говорю что в них надо писать, я говорю что если у нас есть многослойный CoW скорость чтения падает экспоненциально количеству слоёв. У OverlayFS в этом плане совсем дела обстоят не ахти - текущая реализация довольно костыльная, также она особо не отличается надёжностью по ряду причин. 4. "про сеть я не знаю" На практике использовал раньше outscale/butterfly для своих проектов, потом под докером поднимал руками OVS... надоело менеджить и слез на Contiv так как в нём уже есть нормальная реализация network driver'a. Грубо-говоря разница между Contiv и Overlay ровно такая же как между Open vSwitch и iptables + linux bridge.
1. конечно не будет немедленно. ок. 2. не уверен 3. оверлей это симлинки... какая может быть надежность у однократного чтения я хз. по мне так выглядит бинарно, прочитали или нет. время жизни контейнера всё равно измеряется как правило большими на порядки величинами чем время его старта 4. ну ок. есть что почитать ?

Aleksey
19.08.2017
22:25:54
Кто может поделиться docker-compose.yml для развертывания nginx+ssl+php7-fpm+mariadb ?

Ilja
19.08.2017
22:34:57
https://m.vk.com/away?to=http%3A%2F%2Farchive.hamdeew.ru%2Fpage%2Flokalnyj-vebserver-bez-boli-s-docker&ref=im

Мб это?

Ilja
19.08.2017
22:39:41
Нет какого нибудь портативного установщика из консольки раз через apt не работает?

Времени нет возиться с ним

Алексей
19.08.2017
22:48:36
Yuriy
19.08.2017
22:49:02
про openvswitch скучно. а вот про contiv интересно.
Contiv под капотом уже использует Open vSwitch.

Алексей
19.08.2017
22:49:03
каков порядок хостов под ним у вас ? порядок

Yuriy
19.08.2017
22:49:31
Алексей
19.08.2017
22:50:35
ну 1-3 ? или 10-30? 100+ ? 1000+ ?

Yuriy
19.08.2017
22:51:14
В среднем 800 контейнеров на 60+ ларджовых EC2 инстансах.

Алексей
19.08.2017
22:53:23
а трафика ?

Yuriy
19.08.2017
22:53:46
а трафика ?
Заходит с Akamai около 300 Гбит/с.

Алексей
19.08.2017
22:55:49
не хило да.

контив я так понимаю делает разные варианты сети. на сайте вижу у них слово bgp даже.

там какой нить грязи типа обязательной терминации на циске нету ?

Yuriy
19.08.2017
23:01:27
Google
Алексей
19.08.2017
23:01:48
ну тоесть точка входа тоже софтовая ?

Yuriy
19.08.2017
23:02:22
Да

Алексей
19.08.2017
23:10:15
а в сравниии с Calico например. чего как ?

Yuriy
19.08.2017
23:15:08
а в сравниии с Calico например. чего как ?
Сам по себе OVS имеет выше пропускную способность но и выше задержки, он более гибок в плане настройки и API. Если брать решения на основе DPDK или OVS DPDK - там вообще нет смысла сравнивать с Calico ... 6wind как-то на правах рекламы прикручивала к Calico свой DPDK свитч - там получался всего лишь 3х кратный прирост пропускной способности :р

https://www.projectcalico.org/turbo-charged-calico/

* я работал в 6wind и в WindRiver некоторое время там собственно и получил опыт разработки под DPDK.

На практике при разработке прикладных решений под DPDK задачи сводятся к "давайте обслуживать 1 http запрос за 800 процессорных тактов".

По этому 99% хомячков и простых смертных вряд ли поймут о чём вообще речь и какие у таких подходов приемущества... Главным недостатком естественно является сложность поддержки.

Алексей
19.08.2017
23:33:19
посмотрел по контиву доку и видняшки. мило.

надо будет потыкать внимательно

Aleksey
19.08.2017
23:40:10
Ребят подскажите пожалуйста https://github.com/nanoninja/docker-nginx-php-mysql/blob/master/etc/nginx/default.conf

Тестирую, но сайт по домену не открывается

по ip доступен

Ruslan
20.08.2017
02:39:11
Подскажите, есть ли для докера, что то для отображения stderr контейнеров и логов из файла (пишет приложение) в браузере? Это для локальной разработки

Driver
20.08.2017
04:27:15
зайди в контейнер да посмотри что он тебе в логи складывает, или подключи remote debug если стек позволяет

zigmund
20.08.2017
06:26:35
Подскажите, есть ли для докера, что то для отображения stderr контейнеров и логов из файла (пишет приложение) в браузере? Это для локальной разработки
Самый простой вариант - тыкаться в апи по хттп и получать логи. Но нормальный способ - слать логи в грейлог или елк и там уже рассматривать, фильтровать и прочее.

Алексей
20.08.2017
07:58:49
@YuriyYarosh чот не могу найти с ходу можно ли одну из сетей привязать к конкретному netns. Схема такая один internal интерфейс, и на хост приходит множество вланов из разных vrf, в каждом свой дефолт роут. Надо запускать контейнеры с одним интернал и одним екстернал интерфейсом. Контейнеров где-то с десяток надо на каждый такой vrf. исходящий Ip при этом должен быть один. Я думал решать через netns и искал свойство parent netns Может надо как-то не так?

сейчас из решений видится только -net=host и отказ от internal сети. но это грусть

Ilja
20.08.2017
08:37:12
$ sudo docker daemon -l debug DEBU[0000] docker group found. gid: 999 DEBU[0000] Server created for HTTP on unix (/var/run/docker.sock) DEBU[0000] Using default logging driver json-file DEBU[0000] devicemapper: driver version is 4.34.0 DEBU[0000] devmapper: Generated prefix: docker-253:2-524711 DEBU[0000] devmapper: Checking for existence of the pool docker-253:2-524711-pool DEBU[0000] devmapper: Pool doesn't exist. Creating it. sudo docker run -v $(pwd):/var/www/srv/ -p 8999:80 -t -i rhamdeew/lamp /bin/bash и докер run замораживается

Google
Ilja
20.08.2017
08:37:37
вроде даже без ошибок

Phil
20.08.2017
08:43:32
Я вроде что-то писал про девмаппер

~# cat /etc/docker/daemon.json { "storage-driver": "overlay2" }

Попробую другими словами. devmapper интересен, когда реально хочется использовать devmapper. Или для стеджинга на луп-девайсах (кошмар, так делать не надо). Но эти нехорошие люди редиски, смотрят, что драйвер есть и он у них по приоритету выше остального

И кстати, что говорит dmesg

Ilja
20.08.2017
08:47:31
сек

нормально что директории /etc/docker нет?

[3823260.184707] systemd[1]: apt-daily.timer: Adding 10h 24min 27.015526s random time. [3823961.063068] device-mapper: table: 252:0: thin-pool: unknown target type [3823961.064253] device-mapper: ioctl: error adding target to table [3824084.550702] device-mapper: table: 252:0: thin-pool: unknown target type [3824084.552368] device-mapper: ioctl: error adding target to table [3824102.274937] device-mapper: table: 252:0: thin-pool: unknown target type [3824102.276566] device-mapper: ioctl: error adding target to table [3824202.094908] device-mapper: table: 252:0: thin-pool: unknown target type [3824202.096594] device-mapper: ioctl: error adding target to table

Phil
20.08.2017
08:51:18
вотвотвот.

нормально. создать, положить. перезапустить

Страница 378 из 610