- docker-1.log внесено краткое описание отличий контейнера от образа
- Создана VM с docker в GCP с использованием docker-machine
- Выполнены базовые взаимодействия с удаленным docker engine
- Разница вывода с --pid host заключается в наличии процессов хостовой машины, так как подключается pid namespace основного хоста
- Написан Dockerfile, устанавливающий приложение reddit в контейнер, загрузили его в docker hub
- Добавлена конфигурация для создания инстанса через terraform, куда с помощью ansible устанавливается docker и приложение; так же добавлен шаблон packer для создания образа с docker внутри.
#creating bucket and instance
cd docker-monolith/infra/terraform/ && terraform init && terraform apply
cd stage && terraform init && terraform apply
#installing docker and app
cd ../../ansible && ansible-playbook ./playbooks/main.yml
#backing image
cd ../packer && packer build -var-file=./variables.json docker.json
- Созданы docker-образы микросервисов приложения Reddit
- Внесены небольшие правки в dockerfile comment и post сервисов в рамках best practiсes.
- Проведена оптимизация сборки docker-образа UI
- Изучены принципы работы сетевых драйверов none, host, bridge
- Проведены эксперименты с работой контейнеров приложения в разных сетях
- Создан docker-compose файл, выполнена его параметризация
- Создан файл docker-compose.override.yml для работы с кодом приложения без необходимости пересборки образа
- Установлены и настроены Gitlab, gitlab runner
- Создан базовый пайплайн, добавлены тесты
- Создан dockerfile для образа, включащего в себя возможность автоматического разворачивания и регистрации gitlab runner
- Добавлен incoming webhook для уведомления из gitlab в персональный канал devops otus slack
- Пайплайн расширен dev,stage,prod окружениями
- Настроено динамическое окружение для ревью бранчей (кроме мастера)
- Добавлена сборка образа приложения и деплой его в отдельное окружение на GCP VM + удаление VM кнопкой
- Установлен Prometheus
- Собраны образы компонентов приложения reddit, node-exporter, prometheus
- Протестирован мониторинг состояния приложения, виртуальной машины
- Собран образ mongodb-exporter, добавлен мониторинг MongoDB
- В стек мониторинга добавлены Grafana и Alertmanager
- Изучены базовые возможности создания графиков в Grafana, созданы тестовые дашборды с ментриками приложения
- Добавлен алертинг в персональный slack-канал
- https://hub.docker.com/u/vstaf
- Запустили EFK-стек для централизованного сбора логов приложений
- Протестировали парсинг логов с помощью регулярок и grok-паттернов
- Изучили базовые возможности трассировки приложения с помощью zipkin
- Созданы манифесты для сервисов ui, post, comment и mongo
- Пройден kubernetes the hard way tutorial
- Модифицированы файлы манифестов (post, ui, comment, mongo), добавлены манифесты сервисов и создания неймспейса
- Развернуто приложение в локальном kubernetes-кластере и в GKE
- Cозданы/модифицированы файлы манифестов Service (NodePort, LB), ingress, mongo-deployment, cетевых политик, дисковых хранилищ
- Протестировано на практике в рамках приложения reddit
- Добавлен манифест для создания Secret.
- Установлен helm + tiller
- Созданы Helm-чарты для установки компонентов приложения и приложения целиком
- Развернут Gitlab CI, настроены пайплайны для сборки и деплоя приложения
- Установлен prometheus + grafana
- Настроен сбор метрик Kubernetes и компонентов приложения
- Шаблонизированы дашборды графиков приложения для просмотра информации по разным неймспейсам
- Установлен EFK-кластер для сбора логов k8s + приложения
- Создан helm-чарт для установки EFK