Docker простыми словами
6.31K subscribers
255 photos
30 videos
3 files
156 links
Сообщество по докеру.

Рассказываем про docker и его применение в программировании и тестировании.

Открыты к критике и ждем вашего фидбека.
@viktorreh @anothertechrock
Download Telegram
Docker for Developers

Автор: Richard Bullington-McGuire
Год издания: 2020

#docker #en #книга

Скачать книгу
🤔1
В чем разница между docker stop и docker pause?

В том, что они разные сигналы посылают

🔹 docker pause — использует SIGSTOP(19), что приостанавливает процессы в контейнере
🔹 docker stop — применяет sigterm и sigkill к главному процессу контейнера


Наш Docker чатик 🐬
3
☁️☁️ Почему облако идеально для CI/CD?

Масштабируемость
Облачные платформы предоставляют ресурсы по запросу, позволяя обрабатывать высокие нагрузки в моменты пиковой активности (например, при запуске массового тестирования).
Услуги, такие как AWS Elastic Compute Cloud (EC2) или Google Cloud Run, автоматически подстраиваются под нужды вашего конвейера.

Готовая инфраструктура.
В облаке не нужно настраивать физические сервера или управлять сложной инфраструктурой. Это упрощает развёртывание CI/CD систем и снижает затраты на их обслуживание.
Используйте преднастроенные инструменты, например Azure Pipelines или AWS CodeBuild, которые уже интегрированы с популярными платформами разработки.

Гибкость развёртывания
Облако поддерживает множество моделей развёртывания:
⚙️ Public Cloud: Удобно для тестирования и небольших проектов.
⚙️ Private Cloud: Идеально для обеспечения безопасности корпоративных данных.
⚙️ Hybrid Cloud: Подходит для проектов с частично локальной инфраструктурой.

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

⚙️☁️ Советы для успешного CI/CD в облаке

Используйте облачные API:
Интеграция с API облачных провайдеров ускоряет автоматизацию задач.
Пример: Сборка Docker-образов и их публикация в облачном репозитории.

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

Автоматическое тестирование безопасности:
Интегрируйте сканеры безопасности в конвейер CI/CD (например, Snyk, Checkmarx).

Мониторинг и логирование:
Включите такие инструменты, как AWS CloudWatch, Azure Monitor, Google Operations Suite, для анализа производительности CI/CD конвейеров.
👎1
Docker на практике

Автор: Ian Mill
Год издания: 2020

#docker #ru #книга

Скачать книгу
👍21
🔥 Если на собесе спрашивают про Docker, жди вопрос про разницу между виртуализацией и контейнеризацией!

По-хорошему их сравнивать нельзя, т. к. у них разное предназначение. Смотрите сами 👇

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

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

Контейнеры — это абстракция прикладного уровня. Каждый контейнер — отдельное приложение.

🟣 В виртуализации гипервизоры предоставляют пользователю целую виртуальную машину, включая ядро.

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

#вопросы_с_собесов #ease
Please open Telegram to view this post
VIEW IN TELEGRAM
👍6
gRPC: запуск и эксплуатация
облачных приложений

Автор: Kasun Indrasiri
Год издания: 2021

#docker #ru #книга

Скачать книгу
👍3
Сведения о том, как собирать образ Docker, записаны в файле…
Anonymous Quiz
6%
dockerimage
1%
Jenkinsfile
81%
Dockerfile
11%
docker-compose
4💩2
🚩Pattern Gury. Шаблоны проектирования - канал, который поможет прокачать архитектурное мышление.

Простым языком разбираем:
🟠 Как работает Singleton и где его лучше не трогать
🟠 Зачем нужен Decorator, и как его написать самому
🟠 Что такое шаблоны проектирования и как они делают код чище
🟠 Что скрывается за терминами "Best Practices", SOLID, KISS и DRY

Канал поможет:
🟣 Уверенно проходить собеседования
🟣 Понимать архитектуру, а не просто копировать код

🗂 Подписывайся: @highloadmicro
Please open Telegram to view this post
VIEW IN TELEGRAM
💩21
🚀 13 Docker‑трюков с примерами и пояснениями

1\\. Multi\\-stage builds

FROM golang:1.22 AS builder
WORKDIR /app
COPY . .
RUN go build -o myapp .
FROM alpine:3.20
COPY --from=builder /app/myapp /usr/local/bin/
ENTRYPOINT ["myapp"]

Минимизирует размер и зависимости контейнера.

2\\. Squash layers

docker build --squash -t myapp:latest .

Сжимает слои в один.

3\\. BuildKit secrets

RUN --mount=type=secret,id=token git clone git@github.com:corp/private.git

Безопасное использование ключей.

4\\. .dockerignore

node_modules
*.md

Ускоряет сборку.

5\\. HEALTHCHECK

HEALTHCHECK CMD curl -f http://localhost/healthz || exit 1

Контейнер сам сообщает, что он еще жив.

6\\. CLI --format

docker ps --format '{{.Names}}\t{{.Status}}'

Удобный вывод для скриптов.

7\\. Оптимизация Dockerfile

COPY requirements.txt .
RUN pip install -r requirements.txt
COPY . .

Стабильные шаги выше — быстрее кеш.

8\\. Лимиты ресурсов

docker run --cpus=1 --memory=512m app

Ограничивает потребление ресурсов.

9\\. docker events

docker events --filter type=container --filter event=start

Реагируйте на события демона.

10\\. Read-only

docker run --read-only --tmpfs /tmp app

Файловая система только для чтения.

11\\. docker system prune

docker system prune -a --volumes

Удаляет всё ненужное.

12\\. ENTRYPOINT override

docker run --entrypoint /bin/sh -it app

Отладка падающих контейнеров.

13\\. Docker contexts

docker context create prod --docker "host=ssh://user@host"
docker context use prod

Быстрое переключение между окружениями.

📌 Подробнее

@Docker
🫡9🤡31🔥1🍾1