
George
13.01.2019
11:48:24
давайте вернемся к изначальному вопросу

LEXASOFT
13.01.2019
12:24:11

Subb98
13.01.2019
12:25:52

George
13.01.2019
12:48:54

Google

George
13.01.2019
12:49:06
но готовы ли вы тащить исполняемый файл х3, х4, х10 размера
и да, это не работает МЕЖДУ операционками
т.к формат бинарей разный

Ahmed
13.01.2019
14:22:13
Добрый день, в контейнере поднимаю постгрю версией 9.6, прокинул волюмсы на продакшене, хочу сделать ежедневный бэкап данных, но не понимаю где лежит папка с данными
db:
container_name: astro-db
image: postgres:9.6
volumes:
- pg_data:/var/lib/postgresql/data
- pg_backups:/pg_backups
- ./compose/postgres/init.sql:/docker-entrypoint-initdb.d/init.sql
Как и где найти папку с данными на хосте?

George
13.01.2019
14:28:29
Бекап чем делать будете ?

Ahmed
13.01.2019
14:29:23
Ну думал примитивным методом через крону или есть лучше варианты?

George
13.01.2019
14:29:28
init.sql рекомендую "запечь" в образ и версионировать его

Ahmed
13.01.2019
14:30:54

Vadim
13.01.2019
16:22:07
Привет. Решаем, собирать ли софт в отдельной среде и потом добавлять собранное в образ, или прямо в докерфайле написать make install. Что про это можно почитать?

George
13.01.2019
16:27:30

Google

George
13.01.2019
16:28:22
1. Собираем все пакеты из исходников и далее checkinstall , т.е. результатом make install является deb пакет
2. Далее на вторую стадию передаём deb и устанавливаем
Профит в том, что в итоговом образе нет всего лишнего для компиляции и сборки. А ещё deb по идее можно установить и без докера

Vadim
13.01.2019
16:30:56
Разумно. Но не лучше ли тогда этот deb собрать отдельно и положить в репозиторий? (У нас есть свой deb-репозиторий.)

George
13.01.2019
16:31:05
Это идеальный вариант, но иногда бывает overkill'ом и пайплайн становится сложнек

Vadim
13.01.2019
16:33:09
И усложняет локальную сборку, да. Спасибо, будем думать, про multi-stage я и забыл.

LEXASOFT
13.01.2019
18:17:55
У flant про dapp есть видео

Siergiej
13.01.2019
19:20:19
failed to register layer: rename /var/lib/docker/image/overlay2/layerdb/tmp/write-set-190460853 /var/lib/docker/image/overlay2/layerdb/sha256/7bff100f35cb359a368537bb07829b055fe8e0b1cb01085a3a628ae9c187c7b8: file exists
Как бороть такую проблему, вылетает когда делаю пул с library/docker

George
13.01.2019
19:35:16

Siergiej
13.01.2019
19:36:59

Stefan
13.01.2019
20:44:04
не, Стасикам я не доверяю

George
13.01.2019
21:08:44

Stefan
13.01.2019
21:09:54

Felix
13.01.2019
21:10:03

Anton
13.01.2019
21:18:18
Ребята, хэлп! Не могу разобраться. Есть docker-compose.yml, первый контейнер создается на базе моего образа и скачивается с Docker Hub, в нем лежит конфиг Nginx который я хочу скопировать в контейнер с Nginx. Можно ли это сделать?

George
13.01.2019
21:19:57

Anton
13.01.2019
21:20:35

George
13.01.2019
21:20:39
И я ещё могу сказать почему этот докер компоуз плохой

Google

George
13.01.2019
21:21:28
Как вариант - пошарьте вольюм между несколькими контейнерами
Первый стартует и его заполняет, второй просто читает как конфиг

Anton
13.01.2019
21:22:54

George
13.01.2019
21:24:16
1. Используйте версию файла 2.*
2. Нет хелсчеков.
3. Приложуха стартует сразу, как стартовал постгрес. Пофиг живой он или нет. См. П.2. добавьте хелсчек на постгрес и флаг на старт первого контейнера, когда постгрес хелзи, а не started
4. Вопросы по конфигу nginx. Точно достаточно одного конфига? Про заполнение конфига я высказался
И есть ещё классный совет на

Anton
13.01.2019
21:25:18

George
13.01.2019
21:25:19
https://hub.docker.com/_/nginx
If you wish to adapt the default configuration, use something like the following to copy it from a running nginx container:
$ docker run --name tmp-nginx-container -d nginx $ docker cp tmp-nginx-container:/etc/nginx/nginx.conf /host/path/nginx.conf $ docker rm -f tmp-nginx-container
This can also be accomplished more cleanly using a simple Dockerfile (in /host/path/):
FROM nginx COPY nginx.conf /etc/nginx/nginx.conf
5. Конфигурации - лучше через переменные окружения передавать

Anton
13.01.2019
21:26:33

George
13.01.2019
21:26:40
6. nginx стартует ТОЛЬКО, если поднялся сервисный контейнер. Это как бы совсем не круто.

George
13.01.2019
21:27:50
Т.к. вы даже ошибку не увидите, если сервис сдох. Лучше, чтобы nginx молотил всегда, но есть нюанс. Пока контейнер с Вашим сервисом не стартанет, его днс имя не существует. А раз так, то nginx не пройдет проверку конфигурации. Ну, поняли надеюсь, что это все не очень для прода
Для локальной разработки = ок

Anton
13.01.2019
21:28:24

George
13.01.2019
21:28:44
Возвращаясь к конфигурации - пошарить вольюмом между обоими контейнерами ?
Или воспользоваться советом с временным контейнером из документации nginx, но адаптировать под свой кейс ?
И вообще откуда задача заполнения конфигурации из существующего докер образа взялась ?!

Anton
13.01.2019
21:29:44

Admin
ERROR: S client not available

Google

George
13.01.2019
21:30:09

Anton
13.01.2019
21:32:15

George
13.01.2019
21:32:56
Если nginx отдельным контейнером ?

Anton
13.01.2019
21:34:27

George
13.01.2019
21:35:35
Это удобно для продакшн. Но для разработки часто возникает задача подтюнить конфигурации на лету, без пересборки образов. И тут удобны вольюмы
Через них можно переопределить целые каталоги, которые уже есть внутри образа контейнера и подсунуть свои версии файлов

Anton
13.01.2019
21:41:29

George
13.01.2019
21:42:10

Anton
13.01.2019
21:42:48

Nikita
13.01.2019
21:45:30
Единственно верное решение засовывать конфиг на этапе сборки, все :)

George
13.01.2019
21:46:29

Anton
13.01.2019
21:47:31

Georgiy
13.01.2019
21:50:05

Google

George
13.01.2019
21:52:16

Nikita
13.01.2019
21:53:14

George
13.01.2019
21:54:10

Nikita
13.01.2019
21:54:57

George
13.01.2019
21:57:19

Anton
13.01.2019
21:57:32