Регистрация  |  Вход

Docker

А используете ли вы Docker

Понимаю что нашему брату эта тема далека, но все же мало ли какие случаи вас подстерегали и подталкивали использовать эту тулзу.

Я долго был сильным поклонником vagrant + virtual box для создания изолированного дев окружения для своих экспериментов. Но честно надоело костылить со ssh тунелями и прочими недостатками поддержки уделенного подключения в разных инструментах. А как выяснилось основная необходимость заключалась в запуске различных баз данных и прочих фоновых инструментов дабы не засерать основную машины. Но каждая машина вызывала целую попоболь при развертывании, хотя я и набил руку и можно сказать все это дело автоматизировал наполовину.

И долго сопротивлялось мое тело новому. А вот и зря. Наконец решил попробовать Docker благо они наконец-то выпустили вменяемые клиенты под MacOS и вроде под Win. Попробовал и радости моей не было предела. Короче все задача сводится к тому чтобы найти нужный контейнер в библиотеке и поднять его используя хитрую команду пробросив порты на основную машину из контейнера. ВСЕ!

docker ps -a вот вам список поднятых контейнеров
docker start/stop <name> запуск остановка контейнера
Это то что я использую постоянно, но там просто космические возможности по управлению контейнерами.

Контейнеры стартуют и останавливаются в течении пары секунд, в отличии от полноценной виртуальной машины. Не надо ничего устанавливать - контейнеры самодостаточные единицы.

И это я еще коснулся вершины айсберга - сами контейнеры можно самому создавать и конфигурировать. Короче пределу нет совершенства. Но даже минимальные возможности помогают решить мне многие проблемы с созданием изолированных окружений для разработки.

А используете ли вы [url=https://www.docker.com/]Docker[/url]

Понимаю что нашему брату эта тема далека, но все же мало ли какие случаи вас подстерегали и подталкивали использовать эту тулзу.

Я долго был сильным поклонником vagrant + virtual box для создания изолированного дев окружения для своих экспериментов. Но честно надоело костылить со ssh тунелями и прочими недостатками поддержки уделенного подключения в разных инструментах. А как выяснилось основная необходимость заключалась в запуске различных баз данных и прочих фоновых инструментов дабы не засерать основную машины. Но каждая машина вызывала целую попоболь при развертывании, хотя я и набил руку и можно сказать все это дело автоматизировал наполовину.

И долго сопротивлялось мое тело новому. А вот и зря. Наконец решил попробовать Docker благо они наконец-то выпустили вменяемые клиенты под MacOS и вроде под Win. Попробовал и радости моей не было предела. Короче все задача сводится к тому чтобы найти нужный контейнер в библиотеке и поднять его используя хитрую команду пробросив порты на основную машину из контейнера. ВСЕ! 

docker ps -a вот вам список поднятых контейнеров
docker start/stop <name> запуск остановка контейнера
Это то что я использую постоянно, но там просто космические возможности по управлению контейнерами. 

Контейнеры стартуют и останавливаются в течении пары секунд, в отличии от полноценной виртуальной машины. Не надо ничего устанавливать - контейнеры самодостаточные единицы.

И это я еще коснулся вершины айсберга - сами контейнеры можно самому создавать и конфигурировать. Короче пределу нет совершенства. Но даже минимальные возможности помогают решить мне многие проблемы с созданием изолированных окружений для разработки.


Отличное видео с основами по теме Docker
https://www.youtube.com/watch?v=X2jlKUHbepY

Отличное видео с основами по теме Docker
https://www.youtube.com/watch?v=X2jlKUHbepY

[img]https://cdn.pbrd.co/images/GV6WiAS.png[/img]

[img]https://cdn.pbrd.co/images/GV6YyG9.png[/img]

[img]https://cdn.pbrd.co/images/GV6Z3HQ.png[/img]

Самый толковый доклад про Docker который я видел.

Илья Беда: "Мастер-класс по Docker для python разработчиков"

Самый толковый доклад про Docker который я видел.

[url=https://www.youtube.com/watch?v=5LuHkG3fiFY]Илья Беда: "Мастер-класс по Docker для python разработчиков"[/url]

Еще в копилку знаний

How to build solid CI-CD pipeline

Python
Docker
Ansible
GitLab
gitlab-ci-multi-runner

Еще в копилку знаний

[url=https://www.youtube.com/watch?v=YG8Zky0PL1I]How to build solid CI-CD pipeline[/url]

Python
Docker
Ansible
GitLab
gitlab-ci-multi-runner

Кому хочется попробовать, но влом ставить что-то локально

https://labs.play-with-docker.com/

Кому хочется попробовать, но влом ставить что-то локально

https://labs.play-with-docker.com/

Попробовал Docker на практике.

Впечатления исключительно положительные.

Теперь всю СЛОЖНУЮ инфраструктуру приложения можно описать в одном файле и запустить в течении пары секунд.

Раньше я использовал для этого Vagrant. Мне тоже нравилось, но с нуля поднять машину со всем необходимым занимало несколько часов. Плюс, если что-то пойдет не так (в крайних случаях), приходилось сносить машину и начинать ее построение с начала. Можно конечно было автоматизировать это дело с помощью например Ansible, но все равно уровень познаний в настройки linux должен быть выше среднего.

Контейнеры Docker же выглядят просто как приложения на локальной машине (хоть и я являются полноценными виртуальными машинами со своим линуксом на борту). Причет не важно что ты хочешь запустить - контейнеры запускаются и настраиваются одинаково и просто. Нужен python3 чтобы запустить свое приложение - запустил контейнер, пробросил туда папку с приложением, запустил. Нужна база данных - запустил контейнер, нужен mail dev сервер - запустил контейнер.

Контейнеры готовые есть на любой вкус - https://hub.docker.com/explore/
На любой случай! Вот к примеру мой любимый https://mailcatcher.me/
Я раньше его использовал когда работал с Ruby. Он работает на базе руби. Но сейчас заморачиваться с руби нет никакого желание. Да и не надо. Одна строчка в настройках - получи работающий mailcatcher. Я потом посмотрел - есть и альтернатива которую я тоже использовал под NodeJS - http://danfarrelly.nyc/MailDev/ только в оригинале надо иметь NodeJS и запускать отдельно из консоли. Но с Docker все становится проще - пару строк и проект со всем окружением поднимается одной командой.

Но вишенкой на торте стала поддержка Docker в Intelij IDEA !!! (PyCharm в моем случае). Немного поколдовав понял насколько это просто и круто работать с Docker в этой IDE.

ТЕПЕРЬ Я СЧАСТЛИВ! По ходу я на пути к своему идеальному инструменту разработки

Попробовал Docker на практике.

Впечатления исключительно положительные.

Теперь всю СЛОЖНУЮ инфраструктуру приложения можно описать в одном файле и запустить в течении пары секунд.

Раньше я использовал для этого Vagrant. Мне тоже нравилось, но с нуля поднять машину со всем необходимым занимало несколько часов. Плюс, если что-то пойдет не так (в крайних случаях), приходилось сносить машину и начинать ее построение с начала. Можно конечно было автоматизировать это дело с помощью например Ansible, но все равно уровень познаний в настройки linux должен быть выше среднего.

Контейнеры Docker же выглядят просто как приложения на локальной машине (хоть и я являются полноценными виртуальными машинами со своим линуксом на борту). Причет не важно что ты хочешь запустить - контейнеры запускаются и настраиваются одинаково и просто. Нужен python3 чтобы запустить свое приложение - запустил контейнер, пробросил туда папку с приложением, запустил. Нужна база данных - запустил контейнер, нужен mail dev сервер - запустил контейнер. 

Контейнеры готовые есть на любой вкус - https://hub.docker.com/explore/ 
На любой случай! Вот к примеру мой любимый https://mailcatcher.me/
Я раньше его использовал когда работал с Ruby. Он работает на базе руби. Но сейчас заморачиваться с руби нет никакого желание. Да и не надо. Одна строчка в настройках - получи работающий mailcatcher. Я потом посмотрел - есть и альтернатива которую я тоже использовал под NodeJS - http://danfarrelly.nyc/MailDev/ только в оригинале надо иметь NodeJS и запускать отдельно из консоли. Но с Docker все становится проще - пару строк и проект со всем окружением поднимается одной командой.

Но вишенкой на торте стала поддержка Docker в Intelij IDEA !!! (PyCharm в моем случае). Немного поколдовав понял насколько это просто и круто работать с Docker в этой IDE.

ТЕПЕРЬ Я СЧАСТЛИВ! По ходу я на пути к своему идеальному инструменту разработки :D 




Еще в копилку знаний

[url=https://www.youtube.com/watch?v=if6Ly9ik9pE]Докеризация веб приложения на Python, Антон Егоров, Ostrovok.ru[/url]