George
06.05.2019
13:27:30
BDSM?
Артур
06.05.2019
13:27:47
Со словами "а что сегодня у нас не будет работать?" начинаю рабочий день)
Vlad
06.05.2019
13:43:45
Всем приивет. Подскажите пожалуйста, кто настраивал gitlab ci\cd. У меня есть сервис postgres и django. Как реализовать deploy? У меня volume пробрасывается в сервисе postgres, и логи django. Использую shell runner. Нужно как то сохранять бд и логи при билде прода. Может у кого есть примеры какие то или статтьи ?
Google
ildar
06.05.2019
13:46:52
Alex
06.05.2019
13:55:00
Всем привет,
Есть возможность вот эту историю с логами
/var/lib/docker/containers/[container-id]/[container-id]-json.log
именовать не через container-id, а к примеру через tag?
George
06.05.2019
13:56:03
пиши логи в журналди и не люби мозг
Alex
06.05.2019
14:00:33
Спасибо.
Ilya
06.05.2019
14:57:04
Гайс, подскажите, а как проще всего можно запустить дамп постгреса на чистом image?
Грубо говоря, у меня есть дамп, я хочу его запустить либо просто в консоли на локалхосте, либо в докер-композе
George
06.05.2019
14:58:13
Не понял
https://habr.com/ru/post/445914/#first_unread
Ещё еда
Далее в консоли дампай, что тебе нужно
Google
George
06.05.2019
14:58:57
Если нужно подключиться к базе из соседнего контейнера:
Ilya
06.05.2019
14:59:26
Не, мне нужно просто запустить с дампом одной командой, без запуска консоли докера
George
06.05.2019
14:59:30
docker run -it --rm postgres psql -u user -H postgres_container name 'lalala'
Ilya
06.05.2019
14:59:37
Я хочу для интергационных тестов базу с дампа поднимать
George
06.05.2019
14:59:52
Можешь даже выхлоп на стдаут, а потом через пайп в файл, чтоб с вольюмами не насиловать мозг
Так
Если нужно подготовить образ с данными, то на живой базе делаешь пгдамп. Получаешь бинарь. Потом кладешь его в образ. В образ доьавляешь sh скрипт который делает pg restore
См доку на официальный образ постгрес
Ilya
06.05.2019
15:02:08
Спасибо, попробую так
George
06.05.2019
15:03:36
https://hub.docker.com/_/postgres
Раздел про Initialization scripts
Gennady
06.05.2019
17:41:41
Добрый вечер, господа.
Помогите ламеру разобраться.
Я не могу разобрать схему развертки приложения в Docker контейнере, в случае, если Host OS - это винда.
Есть :
Host OS -> Docker Engine,Client,Compose,Machine(???) -> Virtual OS -> Container -> SDK -> APP
Или же :
Host OS -> Docker Engine,Client,Compose,Machine(???) -> Container -> OS -> SDK -> APP
Я понимаю, что вопрос такой себе, но вдруг поможет кто, хотелось бы понять в какой именно момент создается "пространство" в котором общаются контейнеры между собой
George
06.05.2019
17:43:13
Добрый вечер, господа.
Помогите ламеру разобраться.
Я не могу разобрать схему развертки приложения в Docker контейнере, в случае, если Host OS - это винда.
Есть :
Host OS -> Docker Engine,Client,Compose,Machine(???) -> Virtual OS -> Container -> SDK -> APP
Или же :
Host OS -> Docker Engine,Client,Compose,Machine(???) -> Container -> OS -> SDK -> APP
Я понимаю, что вопрос такой себе, но вдруг поможет кто, хотелось бы понять в какой именно момент создается "пространство" в котором общаются контейнеры между собой
Вторая схема
Лучше было начать с линукса в качестве хост ос
Далее рассмотреть мак
Gennady
06.05.2019
17:43:55
понимаю, просто .NET разработчик, поэтому на винде.
George
06.05.2019
17:44:00
А потом уже винду
Gennady
06.05.2019
17:44:52
Если вторая схема.
Кто занимается "менеджем" всех контейнеров?
Если каждый контейнер поднимает свою OS , то как они обращаются друг к другу? о.о
Google
George
06.05.2019
17:45:52
В Винде все сложно. В ней есть прослойка для запуска нативного линукса
Gennady
06.05.2019
17:46:28
вот, докер енджин. понял.
да, уже вдуплил в эту тему
что есть прослойка
только что понял что это означало в схемах.
спасибо большое.
Phreeman
06.05.2019
20:28:19
Всем привет
кто-нибудь datadog в контейрах юзал?
Vadim
06.05.2019
20:39:49
Gennady
06.05.2019
20:40:16
Sergey❄️
06.05.2019
20:43:04
есть такой вольюм
image: postgres
volumes:
- "dbdata:/var/lib/postgresql/data"
volumes:
dbdata:
Лежит он в /var/lib/docker/volumes/blabla_dbdata
Хотелось бы положить его в другое место, директорию. Есть такая возможность, или лучше с нуля пересоздать в другом месте (пока есть такая возможность)?
Nikolay
06.05.2019
21:08:27
George
06.05.2019
21:13:46
Либо можно не останавливать, а дёрнуть лвм снапшотом
ildar
07.05.2019
03:47:46
George
07.05.2019
04:02:00
опять?
Не опять, а все ещё не утихают дебаты вокруг докера
ildar
07.05.2019
05:53:49
смена юзера в образе на базе scratch: Use the multi-stage Luke!
https://medium.com/@lizrice/non-privileged-containers-based-on-the-scratch-image-a80105d6d341
George
07.05.2019
06:09:05
ildar
07.05.2019
06:11:09
?
Google
George
07.05.2019
06:14:28
зачем так делать? в чем профит?
типа - вау! мы научились в фром скретч юзера засовывать?
ildar
07.05.2019
06:18:55
секурити, не? учила же мама - не запускай из под рута.
George
07.05.2019
06:19:28
так я ж не против
просто что в этом супер ноу хау?
потому что скретч?
ildar
07.05.2019
06:19:57
ну да
глянь, как дядя мучался, пока полароид не изобрели
https://stackoverflow.com/questions/26561555/how-to-run-my-go-webapp-in-docker-based-on-scratch-as-the-user-nobody
George
07.05.2019
06:29:38
ну, тогда туда нужно подкладывать не passwd из предыдущего шага
а тупо passwd.minimal ?
Николай
07.05.2019
06:30:37
Есть докер с Apache+PHP+MySQL+OpenSSL, нужно настроить докер таким образом что бы все подключения были через docker, а на сервере остались: БД и тело сайта, но сколько инструкций в интернете, не пойму, куда копать дальше, что уже сделано:
1. Настроен докер, висит на порту 80;
2. Установлен том, docker run -it -p 80:80 --net="host" --privileged -v mSQL:/var/lib/mysql/demo_ehealth apache2_ufw_mysql_php_iit_ulimit /bin/sh;
3. С помощью команды docker volume inspect mSQL выяснил место расположения каталога /var/snap/docker/common/var-lib-docker/volumes/mSQL/_data;
В _data скопировал тело сайта и базу данных.
Что дальше делать не знаю, буду благодарен уточняющим советам что делать дальше, я так понимаю нужно создавать виртуальный хост для Апач, но как узнать где в докере примонтирован этот каталог? И как прикрепить управление к БД, надеюсь что не нужно создавать IP, достаточно только будет указать порт MySQL, но как его узнать порт и IP?
George
07.05.2019
06:37:45
не надо через снап устанавливать докер
это самое первое
второе - задачу сформулируйте конкретнее
что значит на сервере остались бд и тело сайта ? в смысле - в файловой системе?
> В _data скопировал тело сайта и базу данных.
это ошибка
не нужно туда напрямую писать
либо делайте нормальный bind mount. Т.е. заводите каталог на хосте /blablabla/site В нем лежит корень сайта.
далее монтируете:
-v /blablabla/site:/var/www/ (вместо /var/www подставить каталог, который будет соответствовать корню вирт. хоста)
но как его узнать порт и IP? - локалхост. Порт стандартный 3306. или какой он там
Николай
07.05.2019
06:40:41
То есть на сервере должны быть файлы БД и сайта, а управление будет через Докер.
Google
George
07.05.2019
06:40:43
если есть сомнения - попробуйте внутри контейнера netstat -tlpn
Николай
07.05.2019
06:41:28
А это критично через snap?
George
07.05.2019
06:42:21
лучше не надо
Николай
07.05.2019
06:42:36
И можна тогда по соседству разместить папку с БД и сайтом?
George
07.05.2019
06:45:27
можно по соседству
типа /home/myproject/DB и /home/myproject/www
Максим
07.05.2019
06:53:12
Всем привет. Как мне в контейнер прокинуть физ. интерфейс хоста?
George
07.05.2019
06:54:39
эм.эм.эм. зачем?
Максим
07.05.2019
06:55:52
Чтоб сервис в контеинере работал с ним.
George
07.05.2019
06:58:02
я не понимаю зачем. поясните задачу
без контекста помочь ничем нельзя
пока похоже, что Вам нужен флаг privileged + network host mode
Максим
07.05.2019
07:00:45
я не понимаю зачем. поясните задачу
Крутится сервис в контейнере. я хочу дать этому сервису возможность принимать запросы из той подсети. Вижу два варианта или пробросить интерфейс в нуторь контейнера. или открыть нужный порт именно на этом интерфейсе.
George
07.05.2019
07:01:31
эм. Обычный HTTP? ничего необычного
1. проброс портов с помощью -p : docker run -p 80:80 image_name
2. запуск без изоляции сети (host network mode) : docker run --network host image_name
Максим
07.05.2019
07:03:02