Docker в Python проектах

Docker в Python проектах

Для кого этот курс

Курс предназначен для начинающих программистов и тех, кто имеет хорошие знания языка Python и желает их углубить, будущих DevOps-инженеров и Full-stack разработчиков.

Предварительные требования

• компьютер, на котором вы сможете установить нужные программы (Windows, macOS или Linux);
• базовые знания Linux будут плюсом (но не обязательны);
• уверенные знания языка Python;
• хорошие знания БД;
• уверенное владение СУБД PostgreSQL (очень желательно).

Docker в Python проектах

Продолжительность:
12 ч.
Количество уроков:
6 занятий
Стоимость обучения:
84 USD

Форма обучения

Очное обучение
Корпоративное

Описание курса
Docker в Python проектах

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

Docker может быть полезным в следующих случаях:
• упаковка вашего приложения и компонентов, используемых с docker-контейнерами;
• раздача и доставка этих контейнеров вашим командам для разработки и тестирования;
• деплой этих контейнеров на продакшн, как в Data центры, так и в Cloud.

Данный курс готовит к дальнейшему освоению сложных тем, связанных с многосервисной архитектурой проектов. Является необходимым для овладения инструментами современной разработки и может быть полезным при создании собственного проекта и его развертывании.

На курсе будет создан телеграм-бот на базе фреймворка aiogram, который будет построен как многосервисное приложение с развертыванием каждого сервиса в отдельном контейнере и настройкой взаимодействия этих сервисов. В качестве СУБД & PostgreSQL.

Программа курса
  • 1
    Создание базового проекта и установка необходимых сервисов.
    1. Общая постановка задачи на проект.
    2. Регистрация бота в Telegram и создание файла .env
    3. Формирование общей структуры проекта и понимание составных частей.
    4. Создание файла настроек и знакомство с модулем python-dotenv.
    5. Написание кода эхо-бота и знакомство с модулем aiogram.
    6. Запуск первого варианта бота и тестирование его работы.
    7. Установка платформы Docker и проверка корректности установки.
  • 2
    Знакомство с платформой Docker.
    1. Виртуализация и контейнеризация.
    2. Docker: общее понимание и архитектура.
    3. Знакомство с составными частями платформы Docker.
    4. Создание docker-образа. Dockerfile: структура и основные инструкции.
    5. Работа с основными командами CLI Docker.
  • 3
    Работа с несколькими контейнерами в одном проекте.
    1. Ошибки при работе с CLI Docker.
    2. Работа «внутри контейнера»: хранение секретной и конфиденциальной информации, добавление работы с СУБД PostgreSQL, модуль psycopg2.
    3. Аспекты совместной работы нескольких контейнеров в Docker; сопоставление портов ports, томов и создание постоянных томов для хранения данных, volumes.
    4. Docker networking: общение контейнеров, Bridge\Host\None\собственные сети и DNS.
    5. DockerHub.
    6. Основы Docker Compose. CLI docker-compose.
    7. Файл docker-compose.yaml: понимание, общая структура, основные инструкции и создание.
  • 4
    Дополнительные инструменты.
    1. Ошибки при работе с CLI docker-compose и при создании docker-compose.yaml файла.
    2. Построение многоконтейнерного проекта. Основные действия: сбор, запуск, остановка, удаление; развертывание СУБД PostgreSQL в контейнере.
    3. Планирование целей проекта: создание БД, создание таблиц, подключение к БД из основного приложения; создание БД, практическая работа с CLI docker-compose.
    4. Написание кода для работы с БД.
    5. Развертывание в дополнительном контейнере инструментального ПО – pgAdmin: подключение к БД, базовые возможности.
    6. Модификация docker-compose.yaml для создания дополнительного контейнера.
    7. Понимание профилей запуска и создание dev-профиля.
  • 5
    Работа с БД.
    1. Планирование структуры данных под сформулированные ранее задачи для проекта. Структуризация кода для работы с БД.
    2. Создание соединения с БД и создание таблицы необходимой структуры.
    3. Работа с CLI docker-compose для запуска скриптов и создания таблиц. Использование pgAdmin для контроля состояния базы данных.
    4. Модификация кода бота для работы с БД.
    5. Работа с CLI docker-compose для преобразования образов, запуска контейнеров, работы с логами контейнеров, остановки/старта сервисов, удаления контейнеров, образов, томов данных.
    6. Запуск созданного приложения, тестирование его работы и подведение итогов.
  • 6
    Построение простого CI-CD на основе GitHub Actions
    1. Общее понимание концепции CI-CD.
    2. Развертывание бота на VPS.
    3. GitHub Actions как инструмент для автоматизации сборки, тестирования и доставки кода.
    4. GitHub Secrets и готовые actions.
    5. Разбор примера описания рабочего процесса тестирования и доставки кода.
    6. Где и как смотреть результаты выполнения рабочих процессов.

Что вы получите на курсе

Онлайн уроки з ментором у Zoom

Практические занятия и проверка дз

Бесплатный видеокурс

Онлайн тестирование и сертификация

Как проходит обучение

Online занятия в Zoom

Online занятия в Zoom

Занятия группы проходят онлайн в Zoom. Это эффективное живое общение. Все уроки записываются и доступны для просмотра.

Выполнение домашних заданий

Выполнение домашних заданий

К каждому уроку есть практические задачи, которые надо выполнять и сдавать в специальной LMS системе.

Проверка ДЗ, фидбек

Проверка ДЗ, фидбек

Все работы студентов проверяются и по каждой задаче даётся фидбек с оценкой и рекомендациями.

Общение и поддержка

Общение и поддержка

В телеграм-чате группы студенты всегда могут получить помощь и ответы на вопросы от ментора, ассистента и одногруппников.

Тестирование и сертификаты

Тестирование и сертификаты

После каждого модуля программы студенты проходят тест и получают сертификаты, подтверждающие уровень знаний.

Курсовые проекты

Курсовые проекты

Студенты выполняют несколько курсовых проектов, а одному из них – финальному, уделяется особое внимание в конце.

Стажировка

Стажировка

Первый коммерческий опыт путем стажировки в CyberBionic Systematics

Трудоустройство

Трудоустройство

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

По завершению курса Вы будете уметь
  • Понимать основы Docker и основные компоненты Docker: Клиент, Сервер, Docker Hub, Образы и Контейнеры, а также то, как они взаимодействуют друг с другом.
  • Загружать образы с Docker Hub и создавать на их основе контейнеры.
  • Публиковать порты для контейнеров и подключать тома.
  • Создавать Dockerfile с описанием шагов при построении собственных образов для запуска приложений в контейнерах с инструкциями FROM, RUN, COPY, CMD.
  • Использовать Docker Compose для запуска нескольких сервисов одновременно и настраивать запуск реального веб-приложения.
  • Осуществлять разработку и деплой проектов из Docker и Docker Compose.
  • Создавать реальные проекты с помощью Docker с нуля.
  • Использовать Docker в реальном процессе разработки.
Сертификат

по прохождению курса

Наличие сертификата Учебного Центра CyberBionic Systematics свидетельствует о Вашем владении новыми знаниями и навыками, а значит, позволяет выгодно выделиться на фоне других кандидатов и увеличивает шансы на успешное трудоустройство или продвижение по карьерной лестнице. Для получения сертификата после окончания обучения, необходимо успeшно пройти тестирование по соответствующему курсу на Testprovider.com

Записаться на курс

  • Ukraine (Україна)+380
  • Poland (Polska)+48
  • Kazakhstan (Казахстан)+7
  • Azerbaijan (Azərbaycan)+994
  • Afghanistan (‫افغانستان‬‎)+93
  • Albania (Shqipëri)+355
  • Algeria (‫الجزائر‬‎)+213
  • American Samoa+1
  • Andorra+376
  • Angola+244
  • Anguilla+1
  • Antigua and Barbuda+1
  • Argentina+54
  • Armenia (Հայաստան)+374
  • Aruba+297
  • Australia+61
  • Austria (Österreich)+43
  • Azerbaijan (Azərbaycan)+994
  • Bahamas+1
  • Bahrain (‫البحرين‬‎)+973
  • Bangladesh (বাংলাদেশ)+880
  • Barbados+1
  • Belarus (Беларусь)+375
  • Belgium (België)+32
  • Belize+501
  • Benin (Bénin)+229
  • Bermuda+1
  • Bhutan (འབྲུག)+975
  • Bolivia+591
  • Bosnia and Herzegovina (Босна и Херцеговина)+387
  • Botswana+267
  • Brazil (Brasil)+55
  • British Indian Ocean Territory+246
  • British Virgin Islands+1
  • Brunei+673
  • Bulgaria (България)+359
  • Burkina Faso+226
  • Burundi (Uburundi)+257
  • Cambodia (កម្ពុជា)+855
  • Cameroon (Cameroun)+237
  • Canada+1
  • Cape Verde (Kabu Verdi)+238
  • Caribbean Netherlands+599
  • Cayman Islands+1
  • Central African Republic (République centrafricaine)+236
  • Chad (Tchad)+235
  • Chile+56
  • China (中国)+86
  • Christmas Island+61
  • Cocos (Keeling) Islands+61
  • Colombia+57
  • Comoros (‫جزر القمر‬‎)+269
  • Congo (DRC) (Jamhuri ya Kidemokrasia ya Kongo)+243
  • Congo (Republic) (Congo-Brazzaville)+242
  • Cook Islands+682
  • Costa Rica+506
  • Côte d’Ivoire+225
  • Croatia (Hrvatska)+385
  • Cuba+53
  • Curaçao+599
  • Cyprus (Κύπρος)+357
  • Czech Republic (Česká republika)+420
  • Denmark (Danmark)+45
  • Djibouti+253
  • Dominica+1
  • Dominican Republic (República Dominicana)+1
  • Ecuador+593
  • Egypt (‫مصر‬‎)+20
  • El Salvador+503
  • Equatorial Guinea (Guinea Ecuatorial)+240
  • Eritrea+291
  • Estonia (Eesti)+372
  • Ethiopia+251
  • Falkland Islands (Islas Malvinas)+500
  • Faroe Islands (Føroyar)+298
  • Fiji+679
  • Finland (Suomi)+358
  • France+33
  • French Guiana (Guyane française)+594
  • French Polynesia (Polynésie française)+689
  • Gabon+241
  • Gambia+220
  • Georgia (საქართველო)+995
  • Germany (Deutschland)+49
  • Ghana (Gaana)+233
  • Gibraltar+350
  • Greece (Ελλάδα)+30
  • Greenland (Kalaallit Nunaat)+299
  • Grenada+1
  • Guadeloupe+590
  • Guam+1
  • Guatemala+502
  • Guernsey+44
  • Guinea (Guinée)+224
  • Guinea-Bissau (Guiné Bissau)+245
  • Guyana+592
  • Haiti+509
  • Honduras+504
  • Hong Kong (香港)+852
  • Hungary (Magyarország)+36
  • Iceland (Ísland)+354
  • India (भारत)+91
  • Indonesia+62
  • Iran (‫ایران‬‎)+98
  • Iraq (‫العراق‬‎)+964
  • Ireland+353
  • Isle of Man+44
  • Israel (‫ישראל‬‎)+972
  • Italy (Italia)+39
  • Jamaica+1
  • Japan (日本)+81
  • Jersey+44
  • Jordan (‫الأردن‬‎)+962
  • Kazakhstan (Казахстан)+7
  • Kenya+254
  • Kiribati+686
  • Kosovo+383
  • Kuwait (‫الكويت‬‎)+965
  • Kyrgyzstan (Кыргызстан)+996
  • Laos (ລາວ)+856
  • Latvia (Latvija)+371
  • Lebanon (‫لبنان‬‎)+961
  • Lesotho+266
  • Liberia+231
  • Libya (‫ليبيا‬‎)+218
  • Liechtenstein+423
  • Lithuania (Lietuva)+370
  • Luxembourg+352
  • Macau (澳門)+853
  • Macedonia (FYROM) (Македонија)+389
  • Madagascar (Madagasikara)+261
  • Malawi+265
  • Malaysia+60
  • Maldives+960
  • Mali+223
  • Malta+356
  • Marshall Islands+692
  • Martinique+596
  • Mauritania (‫موريتانيا‬‎)+222
  • Mauritius (Moris)+230
  • Mayotte+262
  • Mexico (México)+52
  • Micronesia+691
  • Moldova (Republica Moldova)+373
  • Monaco+377
  • Mongolia (Монгол)+976
  • Montenegro (Crna Gora)+382
  • Montserrat+1
  • Morocco (‫المغرب‬‎)+212
  • Mozambique (Moçambique)+258
  • Myanmar (Burma) (မြန်မာ)+95
  • Namibia (Namibië)+264
  • Nauru+674
  • Nepal (नेपाल)+977
  • Netherlands (Nederland)+31
  • New Caledonia (Nouvelle-Calédonie)+687
  • New Zealand+64
  • Nicaragua+505
  • Niger (Nijar)+227
  • Nigeria+234
  • Niue+683
  • Norfolk Island+672
  • North Korea (조선 민주주의 인민 공화국)+850
  • Northern Mariana Islands+1
  • Norway (Norge)+47
  • Oman (‫عُمان‬‎)+968
  • Pakistan (‫پاکستان‬‎)+92
  • Palau+680
  • Palestine (‫فلسطين‬‎)+970
  • Panama (Panamá)+507
  • Papua New Guinea+675
  • Paraguay+595
  • Peru (Perú)+51
  • Philippines+63
  • Poland (Polska)+48
  • Portugal+351
  • Puerto Rico+1
  • Qatar (‫قطر‬‎)+974
  • Réunion (La Réunion)+262
  • Romania (România)+40
  • Russia (Россия)+7
  • Rwanda+250
  • Saint Barthélemy+590
  • Saint Helena+290
  • Saint Kitts and Nevis+1
  • Saint Lucia+1
  • Saint Martin (Saint-Martin (partie française))+590
  • Saint Pierre and Miquelon (Saint-Pierre-et-Miquelon)+508
  • Saint Vincent and the Grenadines+1
  • Samoa+685
  • San Marino+378
  • São Tomé and Príncipe (São Tomé e Príncipe)+239
  • Saudi Arabia (‫المملكة العربية السعودية‬‎)+966
  • Senegal (Sénégal)+221
  • Serbia (Србија)+381
  • Seychelles+248
  • Sierra Leone+232
  • Singapore+65
  • Sint Maarten+1
  • Slovakia (Slovensko)+421
  • Slovenia (Slovenija)+386
  • Solomon Islands+677
  • Somalia (Soomaaliya)+252
  • South Africa+27
  • South Korea (대한민국)+82
  • South Sudan (‫جنوب السودان‬‎)+211
  • Spain (España)+34
  • Sri Lanka (ශ්‍රී ලංකාව)+94
  • Sudan (‫السودان‬‎)+249
  • Suriname+597
  • Svalbard and Jan Mayen+47
  • Swaziland+268
  • Sweden (Sverige)+46
  • Switzerland (Schweiz)+41
  • Syria (‫سوريا‬‎)+963
  • Taiwan (台灣)+886
  • Tajikistan+992
  • Tanzania+255
  • Thailand (ไทย)+66
  • Timor-Leste+670
  • Togo+228
  • Tokelau+690
  • Tonga+676
  • Trinidad and Tobago+1
  • Tunisia (‫تونس‬‎)+216
  • Turkey (Türkiye)+90
  • Turkmenistan+993
  • Turks and Caicos Islands+1
  • Tuvalu+688
  • U.S. Virgin Islands+1
  • Uganda+256
  • Ukraine (Україна)+380
  • United Arab Emirates (‫الإمارات العربية المتحدة‬‎)+971
  • United Kingdom+44
  • United States+1
  • Uruguay+598
  • Uzbekistan (Oʻzbekiston)+998
  • Vanuatu+678
  • Vatican City (Città del Vaticano)+39
  • Venezuela+58
  • Vietnam (Việt Nam)+84
  • Wallis and Futuna (Wallis-et-Futuna)+681
  • Western Sahara (‫الصحراء الغربية‬‎)+212
  • Yemen (‫اليمن‬‎)+967
  • Zambia+260
  • Zimbabwe+263
  • Åland Islands+358

Записатися
на пробний урок
Пожалуйста, подождите...
Ваша заявка принята! Менеджер учебного центра свяжется с Вами в ближайшее время.
Мессенджер:
Виртуальная АТС
Виртуальная АТС
Хотите, перезвоним Вам
за 30 секунд?
КНОПКА
СВЯЗИ