Дмитрий
06.06.2018
10:35:27
Ребят, вопрос по образу Mtproto (прокси от телеги), при запуске не может скачать конфигурацию с серверов телеги, ибо вдска в России, если даже через прокси удастся удачно стартануть контейнер, он будет работать без прокси? Есть у кого опыт использования?
Sergey
06.06.2018
10:36:31
вы должны его пускать где то в DO в европе
зачем прокси который стоит в рф чтобы обойти блокировку в рф, где логика
Google
Дмитрий
06.06.2018
10:38:00
Понял! Вы правы, я сглупил :D
Sergey
06.06.2018
10:38:12
да нез;)
Yuryi
06.06.2018
10:51:30
гайз, сорян за тупые вопросы. Задача: склонить прилагу, сделать war-ку через maven на хостовой машине, развернуть контейнер с томкатом и прокинуть в него созданную варку. Я совсем ноль в докере, и возникает вопрос- все эти операции (не докеровские) можно описать в Dockerfile ? или надо отдельный сш скрипт, который всё готовит, а потом уже в докерфайле только подъём приложения ?
Sergey
06.06.2018
10:57:35
Yuryi
06.06.2018
11:00:30
Sergey
06.06.2018
11:05:12
Den
06.06.2018
11:34:09
Ilya
06.06.2018
11:35:28
Den
06.06.2018
11:35:46
Я бы на вашем месте посмотрел на настройти хоста
И iptables/firewalld
Ilya
06.06.2018
11:37:11
В iptables только то, что сам докер запихал.
Левых правил нет
А ещё что посмотреть? Я голову сломал уже )
Google
Den
06.06.2018
11:38:55
А ДРУГИЕ хосты в этой сети пингуються ?
Ну условно шлюз
Из контейнеров имею виду
А вижу. Что да достигают
Тогда точно смотреть опции для sysctl
Это смотрели ?
https://stackoverflow.com/questions/39216830/how-could-i-ping-my-docker-container-from-my-host
Artem
06.06.2018
12:33:22
что я запутался, вот мне надо в докер-композе собиратся поразному для дев и прод, как это провернуть правильней, подскажите плиз?
Olga
06.06.2018
12:34:01
Artem
06.06.2018
12:34:10
так понял можно создать .env и оттуда переменные в *compose.yml юзать
ну а как переключать переменные для дева и прод
Olga
06.06.2018
12:34:50
docker-compose -f docker-compose.yml -f production.yml up
Прям из статьи что я скинула
Artem
06.06.2018
12:35:12
о как)
Olga
06.06.2018
12:35:33
В production.yml изменения которые актуальны для прода
Artem
06.06.2018
12:35:39
а в .env типа хранить все нужные переменные для compose.yml и compose-prod.yml ?
мне просто еще хорошие практики интересует, я в devops не особо опытен)
Olga
06.06.2018
12:36:21
Ну можно в первом yml подгружать один .env, а во втором другой
Artem
06.06.2018
12:36:53
кстати, у меня в композе для дева user: '1000'
а как подтягивать актуальный id юзера?
Google
Artem
06.06.2018
12:37:48
ну в плане чел, скачает а него на хост машине другой айди у юзера и вся задумка шаринга создаваемых файлов в контейнере у меня рушится)
через sh скрипт я так понимаю можно, достать оттуда id юзера и потом пробросить его в старт композа, ну как то всё усложняется через чур
Евгений
06.06.2018
12:41:22
При монтирование тома.
-v ~/HOST-DIR:/CONTAINER-DIR/
Докер делает владельцам всех данных в HOST-DIR — systemd-timesync
И группу меняет на systemd-journal.
Как можно исправить? Спасибо.
Alexandra
06.06.2018
12:58:03
а как подтягивать актуальный id юзера?
У нас костыли. Подключается файл через volumes, а в entrypoiny скрипте читается его uid и gid и создается пользователь с этими параметрами, который и работает дальше внутри контейнера.
https://medium.com/@mccode/understanding-how-uid-and-gid-work-in-docker-containers-c37a01d01cf
вот неплохая статья о uid
Pavel
06.06.2018
13:13:12
Artem
06.06.2018
13:31:09
Alexandra
06.06.2018
13:34:57
есть скрипт который на хостовой системе так:
"touch shared_file
docker-compose ..."
уже внутри контейнера entrypoint
' export HEUID=stat -c "%u" /shared_file
export HEGID=stat -c "%g" /shared_file
useradd --uid ${HEUID} --gid ${HEGID} .... user
....
su user'
и дальше уже идет код который этот юзер должен исполнять в контейнере
Artem
06.06.2018
13:37:40
а понял, ну я тоже так подумал, дополнительно скрипт запускать поверху
Ilya
06.06.2018
13:41:28
Это смотрели ?
да, ip_forward в сисктл проверил первым делом.
в общем магия какая-то.
щас я пока решил проблему тем, что избавился от локальных адресов в контейнерной сети на докер хостах, и сетевуху сделал чистым бриджем.
получается что хост контейнера может достичь только через роутер )
в целом пофиг, там только хелсчеки номада и ходят.
но вообще оень странное поведение.
Анатолий
06.06.2018
13:52:07
чисто ради интереса - с контейнера как резолвится хост? + ping, trace и т.д всё идет?
Yuryi
06.06.2018
14:11:59
на хост-машине я его не наблюдаю
Alexandra
06.06.2018
14:18:41
cp ./data?
у тебя compose подключает /data
А копирует в */target/data как минимум
Pavel
06.06.2018
14:19:36
точку мхо не надо в начале
ты ж от корня пляшешь
Google
Pavel
06.06.2018
14:20:00
хорошо, если ты это всё запускаешь находясь в корне диска
Alexandra
06.06.2018
14:20:12
явно не в корне
там перед этим команда cd /target-четотам
Yuryi
06.06.2018
14:20:28
ща пробну, минуту
Pavel
06.06.2018
14:20:34
тада точки убирай
в двух местах
Ilya
06.06.2018
14:24:27
недостаток только в том, что с внешним dhcp оно работать не обучено. приходится выделять диапазоны на хост. но эт не так страшно.
Pavel
06.06.2018
14:28:05
а копируешь потом непойми куда
это отсюда
Богдан
06.06.2018
14:32:15
Господа, не подскажите че за хрень, до сегоднешнего дня все работало, а теперь ошибка почему-то при монтировании файла
Yuryi
06.06.2018
14:32:52
Alexandra
06.06.2018
14:33:21
mkdir /data
Yuryi
06.06.2018
14:34:43
mkdir /data
т.е. сначала выполняется скрипт в докерфайле где я создаю папку, а уже потом маунтиться папка (созданная в скрипте data) ? я просто думал что всё наоборот
и я чёт не понимаю почему тогда cp проходит без ошибки\
Alexandra
06.06.2018
14:35:37
а пардон. перепутала немного
Google
Alexandra
06.06.2018
14:36:02
не ту ошибку глянула
Богдан
06.06.2018
14:39:42
Чето оно файл монтирует как директорию
Yuryi
06.06.2018
14:41:10
воу, без слеша же это файл. спс, ща пробну
Mike
06.06.2018
14:54:20
йо парни, есть вопрос. не уверен, что в кассу, правда.
запустил в докере кассандру, доккер компоуз такой:
version: '2'
services:
cassandra:
image: library/cassandra
ports:
- "9042:9042"
поставил в хосте клиент кассандровский, достучалась только с уточнением версии:
cqlsh --cql_version=3.4.4
по умолчанию версия 3.3.1, типа пошел я на хуй. ну да ладно
из шарпов пытаюсь достучаться по 127.0.0.1 — говорит хер там на 9042 чет есть
пошел в докер, посмотрел его адрес — 172.18.0.6, вбил его в шарпы вместо 127.0.0.1 — завелось.
может подскажете, куда копать, что я не так делаю, почему у меня в днк ошибки?
Даниил
06.06.2018
14:54:38
гайз, подскажите плз.
можно ли взять смонтировать один и тот же каталог с файлами, допустим, в 50 разных контейнеров и дергать оттуда код?
гоняться будут js, unit, selenium тесты, а делается это дабы не клонить по 100000+ раз одну и ту же репу
и будет ли там работать git, в каталоге этом внутри контейнера
Pavel
06.06.2018
14:55:14
в теории да
Даниил
06.06.2018
14:55:39
поскольку репа весом около 1гб
Jentry
06.06.2018
14:57:08
для уверенности я бы монтировал на чтение, иначе куда-нибудь да попадаешь в гонку
Даниил
06.06.2018
15:00:04
а что касательно dind можете сказать? или это уже не шибко актуально в 2018?)
а то мне нужно будет еще базы поселить рядом и дергать єто все добро через плагин дженкинса
Artem
06.06.2018
15:17:31
build:
context: .
dockerfile: ./docker/dockerfiles/prod Подскажите куда .dockerignore помеситить, ложил в docker/dockerfiles/ не помогло, ложил в корень где docker-compose.yml тоже без результатно
вот так копирую
WORKDIR /app
COPY app ./
в папке app есть node_modules, пытаюсь его запретить копирование в .dockeringonre