@spbpython

Страница 304 из 785
Andrey
01.03.2017
14:51:52
давай ты скажешь сразу к чему ты клонишь =)

Danil
01.03.2017
14:54:23
дробить можно повсякому интересен же именно твой случай, если одно приложение которое для разработки запускается в одну-две команды, то докер только для разработки будет избыточен. а так 1) docker-engine это простой способ описать как запустить проект 2) docker-compose описывает какие зависимости и на какие сервисы у проекта есть

Andrey
01.03.2017
14:54:59
не я знаю зачем всё это нужно

я просто не понимаю зачем именно докер для разработки, не запуска

Google
Nikolay
01.03.2017
14:55:57
вообще докер ни для того, ни для того не нужен

Serge
01.03.2017
14:56:19
я просто не понимаю зачем именно докер для разработки, не запуска
с докером всё очень просто. всё всегда запускается в одном и том же контейнере. идемпотентность же.

Nikolay
01.03.2017
14:56:24
есть виртуалки, в случае питона есть virtualenv

Serge
01.03.2017
14:56:48
вообще докер ни для того, ни для того не нужен
коллега, у вас asyncio стандарт. ваше мнение очень важно для нас:)

Andrey
01.03.2017
14:57:05
толсто

Nikolay
01.03.2017
14:57:09
коллега, у вас asyncio стандарт. ваше мнение очень важно для нас:)
разумеется, стандарт :) спасибо, приятно знать

так вот, докер - это заметание мусора под ковер

Danil
01.03.2017
14:57:31
есть виртуалки, в случае питона есть virtualenv
поднимать приложение vagrant будет?

Serge
01.03.2017
14:57:47
поднимать приложение vagrant будет?
ansible провиженинг же оно умеет

Nikolay
01.03.2017
14:57:53
поднимать приложение vagrant будет?
можно через vagrant, можно виртуалку заспавнить в облаке, зависит от инфраструктуры

Andrey
01.03.2017
14:58:12
> с докером всё очень просто. всё всегда запускается в одном и том же контейнере. идемпотентность же. куда девается идемпотентность когда на проде и деве разные версии зависимостей. т.к. они могут различаться в requirements.txt и dev-requirements.txt, например? =)

Danil
01.03.2017
14:58:24
Nikolay
01.03.2017
14:58:44
ок, спасибо, мне с докером в этом плане удобнее
если на питоне писать - то редко не хватает virtualenv

Google
Nikolay
01.03.2017
14:58:49
с докером возни больше гораздо

Danil
01.03.2017
14:59:36
если на питоне писать - то редко не хватает virtualenv
ок, уточню еще раз, если у вас один замкнутый в вакуме проект, то да если для нормальной разработки надо еще пару тройку приложений/микросервисов/сервисов вот здесь и помогает докер*

Serge
01.03.2017
14:59:56
а причем тут докер?
при том, что зависимости - это еще и состояние системы, все установленные пакеты, версия ядра.

Nikolay
01.03.2017
15:00:03
Nikolay
01.03.2017
15:00:30
при том, что зависимости - это еще и состояние системы, все установленные пакеты, версия ядра.
это должно быть крайне специфичное приложение, если оно от этого зависит

в этих конкретных виртуаленвах на этой конкретной машине
как вариант, да. А потом можно всегда собрать пакеты

Nikolay
01.03.2017
15:01:34
Danil
01.03.2017
15:01:35
Nikolay
01.03.2017
15:01:49
Andrey
01.03.2017
15:01:54
> каким образом? одна и та же версия приложения на одних и тех же зависимостях везде это так фантазии. Просто припоминаю как пару месяцев назад ты описывал свой кейс с несколькими файлами зависимостей, для прода, дева и т.д.

Danil
01.03.2017
15:02:55
согласен, но, опять же, причем тут докер?
с помомощью docker-compose как раз и удобно описать это окружение и сделать это легко повторяемым на всех машинах разработчиков

Nikolay
01.03.2017
15:03:22
с помомощью docker-compose как раз и удобно описать это окружение и сделать это легко повторяемым на всех машинах разработчиков
если заменить docker на ansible или vagrant - ничего не изменится, а головной боли станет меньше

Serge
01.03.2017
15:03:44
> каким образом? одна и та же версия приложения на одних и тех же зависимостях везде это так фантазии. Просто припоминаю как пару месяцев назад ты описывал свой кейс с несколькими файлами зависимостей, для прода, дева и т.д.
это был не я. точнее ты меня не понял;) есть файл абстрактных зависимостей и файл замороженных. грубо говоря, перед пушем разработчик убеждается в актуальность замороженного и именно он был у него последним в локальном контейнере и именно из него соберется в докере раз и навсегда образ этой версии на CI

Google
Serge
01.03.2017
15:04:04
Nikolay
01.03.2017
15:04:51
вкусовщина же
да нет же, я не хочу пересобирать контейнер каждый раз, когда мне нужно открыть порт, или поднимать падающий контейнер под убунтой, когда он собран под центосью с другими модулями ядра

Nikolay
01.03.2017
15:05:13
их нельзя заменить. они все три для разного;)
ну, мы же про организацию рабочего окружения? они все помогают, так или иначе

Serge
01.03.2017
15:05:13
их нельзя заменить. они все три для разного;)
ansible - провиженинг vagrant - управление состоянием вирталки docker (у многих из под вагранта запускаетя) - обеспечение окружения для конкретного приложения

Andrey
01.03.2017
15:05:37
больше технологий для бога технологий

Nikolay
01.03.2017
15:05:46
провиженинг - это cobbler, например

Serge
01.03.2017
15:05:48
Nikolay
01.03.2017
15:06:22
вот видишь, ты сам всё знаешь:)
именно :) так и зачем мне докер при разработке или деплое?

я так и не понимаю

Serge
01.03.2017
15:06:46
я так и не понимаю
это нормально. не нужен, не используй.

Nikolay
01.03.2017
15:07:19
ну, я пытаюсь понять логику людей :) всем он так нравится, а я не особо хорошо отношусь к этому поделию

может, не замечаю чего-то важного

Serge
01.03.2017
15:07:47
может, не замечаю чего-то важного
это очевидно. тебе про это важное уже минут 20 в чате пишут же:)

Serge
01.03.2017
15:08:04
например?
перечитай.

Nikolay
01.03.2017
15:08:08
покажи мне задачу, для которой он необходим

так я и перечитал, нет такого :)

Serge
01.03.2017
15:08:17
Google
Nikolay
01.03.2017
15:08:20
без него проще

Serge
01.03.2017
15:08:41
более того, нет задачи для которой необходим venv или asyncio

Nikolay
01.03.2017
15:08:58
более того, нет задачи для которой необходим venv или asyncio
это просто варианты решения, разумеется

Serge
01.03.2017
15:09:03
есть гарантии, которые докер даёт.

Nikolay
01.03.2017
15:09:07
но хайп-то есть

Serge
01.03.2017
15:09:36
идемпотентность. повторяемость. изоляция.

понятно, что с оговорками, но с гораздо меньшими, чем vagrant или ansible

Nikolay
01.03.2017
15:10:13
идемпотентность. повторяемость. изоляция.
я лично видел, как контейнер, собранный под центосью, отказывался работать в убунте

Admin
ERROR: S client not available

Andrey
01.03.2017
15:10:16
> из докера в IDE не видно пакетов. хотя, а можно же замапить volume... вобщем моё недоумение вызывает только вот это. Просто про потенциальную возможность _запуска_ приложений можете не лечить, тут всё очевидно итак. Вопрос для меня только в разработке в докере.

Nikolay
01.03.2017
15:10:50
понятно, что с оговорками, но с гораздо меньшими, чем vagrant или ansible
ты сейчас шутишь? как может быть костыль в ядре для процессов давать больше гарантий, чем аппаратная виртуализация?

Andrey
01.03.2017
15:10:56
видел как контейнер собраный в убунте, отказывался работать в убунте, правда на разных версиях докера =))

Nikolay
01.03.2017
15:10:59
там тогда были всякие терки насчет aufs/overlayfs еще

и оно тупо не работало

Serge
01.03.2017
15:12:39
ты сейчас шутишь? как может быть костыль в ядре для процессов давать больше гарантий, чем аппаратная виртуализация?
при чем тут виртуализация? как ты, кроме образа, гарантируешь повторяемость сборки виртуалки? в докере можно повторить сборку образа гораздо проще, чем с виртуалкой ну и виртуалка тупо тяжелее. в большинстве случаев docker дает почти такую же повторяемость при гораздо меньших затратах памяти и места на диске

Google
Serge
01.03.2017
15:13:05
Nikolay
01.03.2017
15:14:20
я не знаю, что они там сейчас починили, но не забывай, что все это - просто чуточку кода, накрученного поверх cgroups в ядре

если твоему приложению нужно хоть минимальное security - в докере его деплоить плохо, потому что из контейнера гораздо легче вылезти, чем из виртуалки

Serge
01.03.2017
15:15:19
чексумму считать у файла? В чем проблема? докер тоже жрет много ресурсов и в нем есть куча багов, которых в аппаратной изоляции просто не может быть по определению
ну у всего есть trade-off. но докер удобнее виртуалок для запуска нескольких изолированных сервисов, тут не может быть вопросов. docker-compose на 20 строк за 10 минут поднимает мне проект на древенем питоне с древними версиями пакетов вместе с древней монгой 2.6. и всё работает.

Danil
01.03.2017
15:15:50
по ходу беседы подменили изначальный. "Зачем использовать докер" на "зачем мне использовать докер если у меня есть готовое решение для поднятия окружения и разработки"

Nikolay
01.03.2017
15:16:44
ну у всего есть trade-off. но докер удобнее виртуалок для запуска нескольких изолированных сервисов, тут не может быть вопросов. docker-compose на 20 строк за 10 минут поднимает мне проект на древенем питоне с древними версиями пакетов вместе с древней монгой 2.6. и всё работает.
про изолированные сервисы на одном хосте согласен, но до сих пор не понимаю, зачем его где-то использовать, если тебе не надо на рабочем компе разворачивать аццкое окружение. И да, ansible мне тоже поднимет что угодно где угодно, если потребуется

Nikolay
01.03.2017
15:17:51
если вопрос только в том, чтобы одно и то же окружение поднять и на рабочем компе, и на продакшен-сервере - то для этого как раз и существуют системы управления конфигурациями

Serge
01.03.2017
15:17:52
докер? на голом железе? что?
имелас в виду операционка на голом железе, не придирайся;) понятно же:)

Nikolay
01.03.2017
15:18:22
в 95% случаев нужно ацкое окружение. более того, штук 4-5 на горячем переключении обычно
откуда цифра такая? мне в моей работе в 95% случаев даже близко ничего такого не надо было

Serge
01.03.2017
15:19:19
если вопрос только в том, чтобы одно и то же окружение поднять и на рабочем компе, и на продакшен-сервере - то для этого как раз и существуют системы управления конфигурациями
это громоздко и не нужно. я имел счастье перевести проект с vagrant+ansible на docker+docker-compose и ansible для конфигурации этого на проде - небо и земля

эээ. окей. тоже интересна статистика, но ладно
я уже и не помню, когда посдледний раз трогал ось не в какой-нибудь виртуализации, кроме десктопа и ноута

Danil
01.03.2017
15:20:59
@Enchantner, ты используешь ансибл для настройки окружения прямо на машине разработчика или в виртуалках?

Nikolay
01.03.2017
15:21:10
это громоздко и не нужно. я имел счастье перевести проект с vagrant+ansible на docker+docker-compose и ansible для конфигурации этого на проде - небо и земля
это абсолютно не громоздко и очень явно и гибко. Если, например, разворачивать сайт развесистый - надо всего лишь определенные версии, например постгри, питона, редиса и эластика

я уже и не помню, когда посдледний раз трогал ось не в какой-нибудь виртуализации, кроме десктопа и ноута
у нас в конторе есть и то и то :) нам надо, у нас датасаенс, он на виртуалках хуже себя ведет

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

Страница 304 из 785