БАЗА

Инструкция по курсу

Journal

Команды

ЛЕКЦИИ

Google Drive с лекционными презентациями

АНАЛИТИЧЕСКИЕ ЛАБЫ

Инструкция

AWS

Azure

DEVOPS ЛАБЫ

Лабораторные

Внутри каждой лабораторной работы есть две: обычная и со звёздочкой. Браться за лабораторную со звёздочкой можно только в случае, если готова обычная лаба (то есть во 2 работе не надо поднимать кубер, не написав Dockerfile)

Лабораторная 1

Пользуясь терминалом на компьютере А перенести файл с компьютера Б на компьютер С, находящиеся в одной локальной сети. (Подсказка: вам понадобится ssh).

Просьба использовать MacOS/Linux/WSL.

Лабораторная 1 со звёздочкой

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

Лабораторная 2

Написать два Dockerfile – плохой и хороший. Плохой должен запускаться и работать корректно, но в нём должно быть не менее 3 “bad practices”. В хорошем Dockerfile они должны быть исправлены. В Readme описать все плохие практики из кода Dockerfile и почему они плохие, как они были исправлены в хорошем  Dockerfile, а также две плохие практики по использованию этого контейнера.

Лабораторная 2 со звёздочкой

Запустить Kubernetes кластер (подойдёт minikube или kind). Запустить ваши контейнеры внутри этого кластера, при этом всё должно быть описано кодом. В минимальном варианте должен быть deployment и service. Приложение, работающее внутри контейнера внутри кластера должно открываться локально у вас в браузере.

Лабораторная 3

Сделать, чтобы после пуша в ваш репозиторий автоматически собирался докер образ и результат его сборки сохранялся куда-нибудь. (например, если результат - текстовый файлик, он должен автоматически сохраниться на локальную машину, в ваш репозиторий или на ваш сервер).

Лабораторная 3 со звёздочкой

Сделать красиво работу с секретами. Например, поднять Hashicorp Vault и сделать так, чтобы ci/cd пайплайн ходил туда, брал секрет, использовал его не светя в логах. Можно развернуть всё на локальной машине.

ЭКЗАМЕН / ТЕОРЕТИЧЕСКОЕ ЗАДАНИЯ

Теоретическое Задание 1.

Теоретическое Задание 2.