@docker_ru

Страница 950 из 1375
Maksim
02.01.2019
16:10:31


Konstantin
02.01.2019
16:11:29
без Dockerfile - только гадать

Илья
02.01.2019
16:18:22
такая проблема возникла, есть 4 контейнера объединенные в docker-compose, nginx, node.js приложение, api на php и база. запросы из ноды идут на nginx и в зависимости от урла отдается апишка либо же запросы идут в ноду. из ноды когда идут запросы на апи, все ок(php конектится к базе по указанному хосту some_db, это важный момент) когда приложение загрузилось и начинает посылать запросы из браузера к апишке, происходит трабл с тем что креды в базе уже не подходят(название хоста где она висит) так как в контейнере хост по названию сервиса some_db, а вне его уже localhost

и непонятно что с этим делать по сути нужно одновременно два хоста для базы работающих

Google
Maxim
02.01.2019
16:38:26
Скорее всего ваше приложение находится внутри образа, а не монтируется в него, Константин вам подсказывает что вам нужно показать здесь Dockerfile для того что бы вам могли помочь разобраться в этой сложной ситуации

Александр
02.01.2019
16:51:38
docker-compose build myapp Что не так тут?
1. Сборка на проде. Она может хорошо выжирать ресурсы, а прод должен совсем другим заниматься 2. Нет образа, который будет идентичен и в разработке, и на тестовом сервере, и на проде

Konstantin
02.01.2019
16:53:03
каждый о своём) Давайте не продолжать или читать все буквы

И вообще не билди из докер компоуза

это почему же?

1. Сборка на проде. Она может хорошо выжирать ресурсы, а прод должен совсем другим заниматься 2. Нет образа, который будет идентичен и в разработке, и на тестовом сервере, и на проде

Александр
02.01.2019
16:53:57
И вообще, в такой реализации нельзя горизонтально масштабировать приложение по нескольким хостам

Для домашнего сайта котика пойдет)

Konstantin
02.01.2019
16:55:28
сложна то как

Maxim
02.01.2019
17:03:04
1. Сборка на проде. Она может хорошо выжирать ресурсы, а прод должен совсем другим заниматься 2. Нет образа, который будет идентичен и в разработке, и на тестовом сервере, и на проде
Зачем прод должен заниматься сборкой? Не проще ли развернуть приватный репозиторий и пушить в него образы которые будет стягивать прод?

Александр
02.01.2019
17:08:00
Так можно, я почему-то подумал, что тут предлагали собирать при деплое. Но тогда не вижу смысла в docker-compose)

Google
Maxim
02.01.2019
18:12:29
Так можно, я почему-то подумал, что тут предлагали собирать при деплое. Но тогда не вижу смысла в docker-compose)
docker-compose полезная штуковина в хозяйстве, помогает в быту, упрощает контейнерную жизнь. Может быть проблема не в docker-compose, а в том как и для чего вы его используете?

Konstantin
02.01.2019
18:36:38
docker-compose полезная штуковина в хозяйстве, помогает в быту, упрощает контейнерную жизнь. Может быть проблема не в docker-compose, а в том как и для чего вы его используете?
Да это просто комбайн для dockercli, и делать такие выводы как выше - смешно) ну как минимум видно кто на что горазд)

Maxim
02.01.2019
18:39:38
Да это просто комбайн для dockercli, и делать такие выводы как выше - смешно) ну как минимум видно кто на что горазд)
Выводы действительно сомнительные, предполагаю что связано это с относительно недавним знакомством с docker

A
02.01.2019
18:55:01
Всем привет. Только начинаю знакомится с докером. Есть рекомендации как настроить среду для разработки php?

Александр
02.01.2019
19:17:55
docker-compose полезная штуковина в хозяйстве, помогает в быту, упрощает контейнерную жизнь. Может быть проблема не в docker-compose, а в том как и для чего вы его используете?
Полностью согласен) Помогает в быту, это да. Но сборку через него не вижу смысла делать. строка в ci docker build... ничуть не труднее для понимания

George
02.01.2019
19:21:50
Пока docker-compose не перепишут на гоу... Забавно, что теперь его единым бинарем распространяют. И это правильно

Maxim
02.01.2019
19:35:56
Полностью согласен) Помогает в быту, это да. Но сборку через него не вижу смысла делать. строка в ci docker build... ничуть не труднее для понимания
docker-compose build использует параметры директивы build такие как context, dockerfile, args и др. указанные в docker-compose.yml и ничем не отличается от обычного docker build, в некоторых случаях эта способность незаменима и это хорошо что она есть в списке возможностей docker-compose

Konstantin
02.01.2019
19:35:59
Полностью согласен) Помогает в быту, это да. Но сборку через него не вижу смысла делать. строка в ci docker build... ничуть не труднее для понимания
Суть в том, что это одно и тоже, разный формат - флагами cli или ключами в yaml. А рассуждения про прод/дев - детсад

Maxim
02.01.2019
19:38:29
Суть в том, что это одно и тоже, разный формат - флагами cli или ключами в yaml. А рассуждения про прод/дев - детсад
Кстати, Константин, подскажи пожалуйста, как лучше организовать разделение prod/dev в одном docker-compose.yml файле? Есть 1 хост и на нем максимум docker-compose. Может знаешь что то типа best practice ?

Александр
02.01.2019
19:38:47
Спасибо, кеп! А то я не знал) Я видел cd, в котором деплой выглядел так: cd /path/to/project git pull docker-compose build docker-compose up -d И подумал, что тут про то же самое. @nodekra Идите сами в свой дет.сад, прочитайте историю сообщений)

Александр
02.01.2019
19:40:54
Я и не просил помощи)

Maxim
02.01.2019
20:37:04
Но это дополнительный уровень абстракции, который с одной стороны может усложнить поддержку ci/cd и "протечь" в неудобном месте
если приведете примеры как это может усложнить ci/cd и что имеется в виду под "протечь" буду вам признателен, и не только я наверное

George
02.01.2019
20:41:21
Google
George
02.01.2019
20:42:01
Я уж не говорю про то - нахера тащить компоуз в образы для сборки, если можно без него

Извините за мат ???

Konstantin
02.01.2019
20:42:59
Я уж не говорю про то - нахера тащить компоуз в образы для сборки, если можно без него
Изначально ты писал, что не нужно билдить композом, отсюда и сырбор

Konstantin
02.01.2019
20:49:37
что то изменяет права на смонтированные директории, скорее всего вы используете одни и теже директории в разных сервисах и монтируете эти директории в запускаемые контейнеры, сервисы работают от разных пользователей и в какой то момент происходит вот такой нежданьчик с правами на запись в файл. Начните с проверки прав на файлы после старта сервисов, а затем после возникновения ошибки, и наверняка они будут отличаться
оказалось действительно так. Владельца кто-то/что-то сбрасывает на root, т.е. вместо id приложения владельцем становится id 0. Осталось понять, почему так происходит. Наверное, нужно аудит настраивать. Вот пример от graylog. До рестарта, когда идут ошибки access denied: [root@ib1 prod]# docker exec -it graylog bash root@942b241883da:/usr/share/graylog# ls -la /usr/share/graylog/data/journal/graylog2-committed-read-offset -rw-r--r--. 1 root root 9 Dec 25 04:02 /usr/share/graylog/data/journal/graylog2-committed-read-offset После рестарта: [root@ib1 prod]# docker exec -it graylog bash root@942b241883da:/usr/share/graylog# ls -la /usr/share/graylog/data/journal/graylog2-committed-read-offset -rw-r--r--. 1 graylog graylog 9 Jan 2 20:11 /usr/share/graylog/data/journal/graylog2-committed-read-offset Также проверил в контейнере clickhouse - такая же история.

Konstantin
02.01.2019
20:58:01
Помогите задебажить, плиз: первые попытки использовать докер на бою (до этого использовали только для тестов и пилотов). Беда в том, что в различных докеризованных приложениях (graylog, clickhouse, redash) через несколько часов работы (6-24 часа) появляются ошибки Access/permission denied при записи в файлы. При этом простой restart контейнеров исправляет проблему еще на некоторые X часов. Сервер новый (72 CPU, 256 Gb RAM, 16Tb sas raid XFS). В какую сторону копать? Примеры ошибок: Redis из набора контейнеров redash очередную регулярную операцию записи в rdb файл выполняет успешно и через 5 минут fail {"log":"1:M 31 Dec 04:16:13.038 * 100 changes in 300 seconds. Saving...\n","stream":"stdout","time":"2018-12-31T04:16:13.039184451Z"} {"log":"1:M 31 Dec 04:16:13.039 * Background saving started by pid 131\n","stream":"stdout","time":"2018-12-31T04:16:13.039402225Z"} {"log":"131:C 31 Dec 04:16:13.050 * DB saved on disk\n","stream":"stdout","time":"2018-12-31T04:16:13.050413019Z"} {"log":"131:C 31 Dec 04:16:13.050 * RDB: 0 MB of memory used by copy-on-write\n","stream":"stdout","time":"2018-12-31T04:16:13.050956288Z"} {"log":"1:M 31 Dec 04:16:13.141 * Background saving terminated with success\n","stream":"stdout","time":"2018-12-31T04:16:13.141947942Z"} {"log":"1:M 31 Dec 04:21:14.086 * 100 changes in 300 seconds. Saving...\n","stream":"stdout","time":"2018-12-31T04:21:14.086386127Z"} {"log":"1:M 31 Dec 04:21:14.086 * Background saving started by pid 132\n","stream":"stdout","time":"2018-12-31T04:21:14.086644556Z"} {"log":"132:C 31 Dec 04:21:14.086 # Failed opening .rdb for saving: Permission denied\n","stream":"stdout","time":"2018-12-31T04:21:14.086918159Z”} Clickhouse около суток принимал поток логов прокси-сервера 500-1000 eps, и внезапно пошли ошибки записи в файл: 2018.12.30 04:27:25.768115 [ 34 ] {} <Error> void DB::SystemLog<LogElement>::flush(bool) [with LogElement = DB::QueryThreadLogElement]: Poco::Exception. Code: 1000, e.code() = 13, e.displayText() = Access to file denied: /var/lib/clickhouse/data/system/query_thread_log/tmp_insert_201812_2215_2215_0, e.what() = Access to file denied Graylog принимает 2000-4000 eps различных логов, и в какой-то момент Kafka в его составе теряет возможность записи в файл graylog2-committed-read-offset, в который до этого постоянно шла запись. 2018-12-19 04:16:42,906 INFO : org.apache.directory.api.ldap.codec.standalone.CodecFactoryUtil - Registered pre-bundled extended operation factory: 1.3.6.1.4.1.1466.20037 2018-12-19 04:17:59,513 ERROR: org.graylog2.shared.journal.KafkaJournal - Cannot write /usr/share/graylog/data/journal/graylog2-committed-read-offset to disk. java.io.FileNotFoundException: /usr/share/graylog/data/journal/graylog2-committed-read-offset (Permission denied) CentOS 7.6.1810. docker --version Docker version 18.09.0, build 4d60db4 docker-compose --version docker-compose version 1.23.1, build b02f130 mount … /dev/mapper/vgsas-sas on /mnt/sas type xfs (rw,nosuid,nodev,noatime,seclabel,attr2,inode64,logbsize=64k,sunit=128,swidth=2048,noquota) df -h … /dev/mapper/vgsas-var_lib_docker 48G 30G 18G 63% /var/lib/docker /dev/mapper/vgsas-sas 16T 497G 16T 4% /mnt/sas
вот здесь внизу про версии ОС и докера

Про SE linux /usr/sbin/getenforce Enforcing

George
02.01.2019
20:59:22
/var/lib/docker на отдельном разделе. Хм. Тоже может быть фактором для "взорваться". Вот честно скажу - именно такой проблемы не было, но попробуйте selinux отключить

Вероятнее всего все начнет работать

Дальше это будет поводом чтобы разобраться с метками ?

Александр
02.01.2019
21:11:45
Как-нибудь можно заставить использовать кеш зависимостей из домашней папки, если в Dockerfile выполняется их скачивание. Пока вариант - использовать multistage и ложить туда кеш, но в multistage мне не нравится то, что будет висеть лишний контейнер, который кстати тоже нужно быдет собирать и отправлять в registry

Пример - php зависимости - composer install, если есть кеш в ~/.composer, то в большинстве случаев выполняется просто копирование вместо скачивания. Но проблема в том, что эта папка на хосте

Александр
02.01.2019
21:20:34
А реверс-прокси jwilder/nginx-proxy работает со swarm или только у меня не заводится?

Konstantin
02.01.2019
21:24:35
Не удивлюсь, что центось и забыли в вольюмах прописать z Z - надо для правильной работы меток selinux
Центось и в вольюмах я не прописывал z Z. Попробовал прописать :z в строке мапинга. Понаблюдаю. Спасибо!

Александр
02.01.2019
21:25:09
Кеш хранится на раннере. Но может храниться и в артефактах, например, но команды в Dockerfile почему-то не юзают его

Google
Александр
02.01.2019
21:25:40
А когда последний релиз был? Раньше не умел
спасибо, теперь моя душа спокойна. А не подскажешь какие альтернативы умеют?

Батыр
03.01.2019
03:47:39
Ну или есть https://phpdocker.io/generator если нужно под определенный проект

Батыр
03.01.2019
04:09:33
я даже логически не зная конфигов nginx понимаю что !-e это if not exists (наверно), хотя скорее всего загуглю

так что да, новичек либо разберется как настроить так чтобы работало, либо пойдет читать доку и настраивать свой конфиг) Шишки повсюду и чем больше мы их набиваем - тем больше растем)

Maxim
03.01.2019
04:12:12
я даже логически не зная конфигов nginx понимаю что !-e это if not exists (наверно), хотя скорее всего загуглю
спросите у google сколько фаз жизненного цикла у запроса в nginx и как они работают, конфигурация nginx это тот еще ребус

так что да, новичек либо разберется как настроить так чтобы работало, либо пойдет читать доку и настраивать свой конфиг) Шишки повсюду и чем больше мы их набиваем - тем больше растем)
использование if в nginx конфигах необходимо избегать, использовать if разрешено если вам в лицо смотрит дуло пистолета или рядом с вами террорист угражает взорвать бомбу если вы этого не сделаете

Maxim
03.01.2019
04:35:38
а как вы настраиваете отдачу статики?
без использования if в конфигах nginx

Ramil
03.01.2019
05:11:51
Господа, например asterisk рекомендует все файлы и либы chown -R asterisk:asterisk. Есть ли в этом смысл если в докер пихать?

Tom Hass
03.01.2019
06:02:07
Telegram Marketing Tools Telegram bulk sender Telegram group scraper Advertising software Channel real subcribers Fake member adder Telegram Thunder Software:Copy telegram group members Telegram Adrenaline Bulk Sender: automatic detect group link and join for advertising Telegram fake member and view: Increase Channel and Group with Fake Member and Fake View. Without extra cost. Telegram Vote Bot: Telegram Spell Auto increase vote, poll, like, click and inline keyboard. Telegram automatic account builder : Create telegram account with STAT format, for all of API software. Our Site tgMember.com tgMemberOfficial@gmail.com +989216973112 whatsapp & skype free test befor payment

Telegram Marketing Tools Telegram bulk sender Telegram group scraper Advertising software Channel real subcribers Fake member adder Telegram Thunder Software:Copy telegram group members Telegram Adrenaline Bulk Sender: automatic detect group link and join for advertising Telegram fake member and view: Increase Channel and Group with Fake Member and Fake View. Without extra cost. Telegram Vote Bot: Telegram Spell Auto increase vote, poll, like, click and inline keyboard. Telegram automatic account builder : Create telegram account with STAT format, for all of API software. Our Site tgMember.com tgMemberOfficial@gmail.com +989216973112 whatsapp & skype free test befor payment

George
03.01.2019
06:06:05
Господа, например asterisk рекомендует все файлы и либы chown -R asterisk:asterisk. Есть ли в этом смысл если в докер пихать?
Есть смысл все сервисы запускать в докере не от рута (пользователь 0), а от пользователя, например, 1000

Дополнительная изоляция, все дела. В этом случае скорее всего стопудово придется поменять права на конфиги

Igor
03.01.2019
06:10:45
Дополнительная изоляция, все дела. В этом случае скорее всего стопудово придется поменять права на конфиги
У тебя по идее должно сгенерироваться новое окружение после рестарта демона

А старое все будет недоступно

Google
George
03.01.2019
06:13:33
А старое все будет недоступно
Не понял Вашу мысль и при чем тут это

Georgiy
03.01.2019
06:22:29
Alex
03.01.2019
11:17:09
Кто запускал тензор или куду в докере? Ошибки вылезают типа библиотеки не найдены

Fueta
03.01.2019
11:39:58
как ответить yes автоматом, типа echo '\y' | qbittorrent-nox ?

Fueta
03.01.2019
11:42:04
yes
нет, \n работает как ентер , а как нажать y ?

bama^boy
03.01.2019
11:42:36
Fueta
03.01.2019
11:43:09
bama^boy
03.01.2019
11:43:42

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