
Anton
11.12.2017
14:03:43
Или "нужно ещё вчера".

Даниил
11.12.2017
14:03:59
ну это совсем дичь тогда
)

Anton
11.12.2017
14:04:45
Не имеет значения всё это. В данный момент имеет значение то, что ты просто ляпнул "отключить SELinux", не имея никаких вводных.

Google

Даниил
11.12.2017
14:04:53
ок)

Maksim
11.12.2017
14:06:15
Докер я тыкал палочкой, шевелилось, не пахло, строгал компоузер, тоже норм
сейчас думаю расти дальше, смотрю в сторону k8s, кому то нравится rancheros, кому то убунта и центос, к последний я спокоен, а к первому как то с настороженностью


Vadim
11.12.2017
15:06:35
Всем привет!
Возникли вопросы при использовании docker-compose в продакшен с django.
Общий кейс:
Есть django-приложение, в котором помимо него и базы (Postgres), крутятся также celery worker, celery beat, nginx, elasticsearch и kibana. Всем этим делом управляю через docker-compose. Сейчас оно все деплоится без docker-a на vscale через fabric-скрипты.
Возникают вопросы:
1) Как это дело деплоить без особых сложностей?
Вариантов, как я понял, очень и очень много, я рассматривал такие:
- делаем образ -> пушим в репозиторий -> идем на удаленный сервер с docker-compose.prod.yml и другими необходимыми файлами -> docker-compose up -d
- Делаем локально docker-machine с --driver=generic и ip нашего удаленного сервера и с помощью stack (или того же `docker-compose up -d`) запускаем на машине
- swarm
2) Как правильно должен выглядеть docker-compose.prod.yml? Насколько я понял, основная идея в том, что мы убираем (если присутствуют) подвязки на локальный код приложения и вмсето этого забираем все из образа? (если кому-то интересно, весь docker-compose файл тут - https://github.com/vforvad/Interview360Server/blob/docker-config/docker-compose.yml)
3) Сейчас для работы `nginx`-а используется очень и очень простой конфиг - https://github.com/vforvad/Interview360Server/blob/docker-config/deploy/nginx/dev.conf. Можно ли его переиспользовать в production-окружении?
Заранее благодарю!


Subb98
11.12.2017
15:27:46
ERROR: Version in "./docker-compose.yml" is unsupported. You might be seeing this error because you're using the wrong Compose file version. Either specify a version of "2" (or "2.0") and place your service definitions under the `services` key, or omit the `version` key and place your service definitions at the root of the file to use version 1.
For more on the Compose file format versions, see https://docs.docker.com/compose/compose-file/
$ docker --version
Docker version 17.09.1-ce, build 19e2cf6
$ docker-compose --version
docker-compose version 1.8.0, build unknown
Какую бы версию не указал, >= 3, то начинаются такие ошибки. С чем это может быть связано?
При указании версии 2 всё ОК.

Aleksandr
11.12.2017
15:29:18
ну, чего не ясно? старый композ
не может старый композ поддерживать новые версии которые появились позже релиза

Artem
11.12.2017
15:30:11
поставь хотя бы вторую, должно быть достаточно для твоих нужд, по крайней мере у меня и на втором нетворк норм работал

Aleksandr
11.12.2017
15:30:34
композ 1.8 вышел полтора года назад.

Artem
11.12.2017
15:30:49
а так компоуз да, не мешало бы обновить

Фёдор
11.12.2017
15:30:51
Бтв композ разве в продакшене ок юзать?

Artem
11.12.2017
15:31:03
кто говорит о продакшене?
он в деве юзает

Google

Subb98
11.12.2017
15:31:10
А, всё, понял. Я думал, там версии докера перечислены.
И сижу не понимаю, в чём дело.

Фёдор
11.12.2017
15:31:40
"Использовании docker compose с джанго в продакшн"

Artem
11.12.2017
15:32:41
у них аватары даже разные, совсем под вечер глаза не видят?)
если ты ему отвечаешь, то хоть бы на пост отвечал

Subb98
11.12.2017
15:33:18
Не сочтите за труд, посмотрите, пожалуйста, верно ли я написал docker-compose.yml?
https://hastebin.com/eyuyikilab.rb

Фёдор
11.12.2017
15:34:07

Mikhail
11.12.2017
15:37:21
Привет!
Никто не сталкивался с проблемой, что докер не может достучаться до интернета без
--net=host
опции ? Проблема не в DNS ( не работает и пинг ), система RHEL

Aleksandr
11.12.2017
15:38:06

Mikhail
11.12.2017
15:38:18
Не блочит

Artem
11.12.2017
15:38:31
отключать пробовал?

Aleksandr
11.12.2017
15:38:31

Mikhail
11.12.2017
15:40:42
Смотрел логи фв, из контейнера пакеты уходят, на хост приходят, а в контейнер не доходят

Aleksandr
11.12.2017
15:43:18
в общем в докере наружняя сеть по умолчанию видна. если у тебя обратное, значит файрвол.

Subb98
11.12.2017
16:15:23
Точно ли compose старый?

Artem
11.12.2017
16:17:22
[root@w4084 deploy]# docker-compose -v
docker-compose version 1.16.1, build 6d1ac219
мой наверное из будущего

Google

Subb98
11.12.2017
16:17:40
Нет, мой свежее.
И всё равно не заводится.

Artem
11.12.2017
16:18:04
1.8 свежее?)

Subb98
11.12.2017
16:18:15
Что больше, 8 или 16?

Artem
11.12.2017
16:18:48
?

Artem
11.12.2017
16:18:49
у тебя видимо своя логика версионности?)

Subb98
11.12.2017
16:19:11
Эм, видимо, да. )
Сейчас снесу и попробую ещё раз поставить.
Если использовать тру-сортировку, то 8 будет больше )
А если человеко-понятную, то 16 идёт сперва

Artem
11.12.2017
16:20:23
https://github.com/docker/compose/releases
Г - лоГГика ?

Anton
11.12.2017
16:20:33

Artem
11.12.2017
16:20:51

Subb98
11.12.2017
16:39:30
Господа, огромное спасибо всем, кто помогал. Всё заработало. =)

Elefant
11.12.2017
17:29:07
привет, народ!
кто нибудь сталкивался с тем, что внутри контейнера не пашет apt-get update?

Ivan
11.12.2017
17:30:53
А что именно не пашет?
Что пишет при попытке обновиться? Какая ОС в контейнере?

Elefant
11.12.2017
17:31:26
вот есть докерфайл, в нем строка run apt-get update и далее установка всякого
—-> Running in a5e10703b4a0
Err http://deb.debian.org jessie InRelease
Err http://security.debian.org jessie/updates InRelease
Err http://deb.debian.org jessie-updates InRelease
Err http://security.debian.org jessie/updates Release.gpg
Temporary failure resolving 'security.debian.org'

Google

Ivan
11.12.2017
17:32:19
Он похоже не может подключиться к сети

Elefant
11.12.2017
17:32:34
FROM python:3
пинг внутри контейнера работает
а все остальное нет)

Ivan
11.12.2017
17:33:05
apt update попробуйте

Admin
ERROR: S client not available

Elefant
11.12.2017
17:33:16
в контейнере?

Ivan
11.12.2017
17:33:33
Да
Попробуйте контейнер с Python на базе Debian

Elefant
11.12.2017
17:35:00
13 packages can be upgraded. Run 'apt list —upgradable' to see them.

Ivan
11.12.2017
17:35:27
FROM python:3.4-jessie
Он говорит, что можно обновить 13 пакетов

Elefant
11.12.2017
17:36:02
ну значит сеть внутри контейнера
сеть
есть
:)
пробую с FROM python:3.4-jessie то же самое

Ivan
11.12.2017
17:41:29
Вы это всё с Docker Compose запускаете?

Google

Aleksandr
11.12.2017
17:42:37

Elefant
11.12.2017
17:42:41
командой ./up.sh

Ivan
11.12.2017
17:42:49

Elefant
11.12.2017
17:43:04
это сборка готовая по идее для разваорачивания 3х контейнеров
и проверенная на других компьютерах

Ivan
11.12.2017
17:43:43
Покажите содержимое up.sh

Elefant
11.12.2017
17:43:53
#!/bin/sh
. ./.env
#macos
#sudo ifconfig lo0 alias ${LOCAL_HOST}
#linux
#sudo ifconfig lo ${LOCAL_HOST} up
./down.sh
docker-compose -f docker-compose.yml -f docker-compose.${ENV_NAME}.yml pull
#docker-compose -f docker-compose.yml -f docker-compose.${ENV_NAME}.yml build —no-cache
docker-compose -f docker-compose.yml -f docker-compose.${ENV_NAME}.yml up —build

Ivan
11.12.2017
17:44:12
Вот
А что у Вас в docker-compose.yml ?

Elefant
11.12.2017
17:44:29
. ./.env
./down.sh
docker-compose -f docker-compose.yml -f docker-compose.${ENV_NAME}.yml pull
docker-compose -f docker-compose.yml -f docker-compose.${ENV_NAME}.yml up —build
вот без комментариев
version: '3.3'
services:
django:
build: django
entrypoint:
- /entrypoint.sh
volumes:
- ./app:/app
links:
- postgres
depends_on:
- postgres
environment: &django_env
ENV_NAME: ${ENV_NAME}
PRODUCT_NAME: ${PRODUCT_NAME}
POSTGRES_DB: ${POSTGRES_DB}
POSTGRES_USER: ${POSTGRES_USER}
POSTGRES_PASSWORD: ${POSTGRES_PASSWORD}
restart: always
далее другие сервисы, но он на этом уже выгружается с ошибкой

Ivan
11.12.2017
17:46:54
services:
django:
images: python:3.4-jessie
build: django
entrypoint:
- /entrypoint.sh