
- Главная
- Каталог
- Интернет технологии
- Библиотека devops’а
Библиотека devops’а
Полезные материалы по всему, что может быть интересно девопсу.
Статистика канала
HEALTHCHECK позволяет Docker периодически проверять состояние и выставлять статус healthy или unhealthy.
Самый простой вариант это дергать внутренний эндпоинт и падать по ненулевому коду, если ответ плохой. Docker поддерживает параметры interval, timeout и retries, чтобы настроить частоту и порог ошибок.
Пример:
HEALTHCHECK --interval=30s --timeout=5s --retries=3 \
CMD curl -f http://localhost:8080/health || exit 1{}
Команда может быть любой, главное чтобы успешный результат был exit 0, а неуспешный exit 1.
📍 Навигация: Вакансии • Задачи • Собесы
RUN chown можно сразу копировать файлы с нужным владельцем через COPY с флагом chown.
Простой пример для приложения, которое запускается от appuser:
FROM alpine:3.20
RUN addgroup -S app && adduser -S -G app appuser
WORKDIR /app
COPY --chown=appuser:app . /app
USER appuser
CMD ["./app"]{}
Если в образе нет /etc/passwd или /etc/group, и указать имя пользователя или группы, сборка может упасть, поэтому для минимальных образов иногда проще использовать числовые UID и GID.
📍 Навигация: Вакансии • Задачи • Собесы
systemd-cgls{}
Вы увидите дерево, разделённое на слайсы:
• system.slice — системные службы
• user.slice — пользовательские сессии
• machine.slice — виртуальные машины и контейнеры
Показать только конкретный юнит:
systemd-cgls /system.slice/nginx.service{}
Показать процессы определённого пользователя:
systemd-cgls /user.slice/user-1000.slice{}
📍 Навигация: Вакансии • Задачи • Собесы
map для tags или labels и этот map должен применяться ко всем ресурсам, которые это поддерживают. Идея простая. В модуле есть базовые поля вроде окружения и владельца, а сверху можно передать дополнительные теги и объединить их через мерж.
Пример:
variable "environment" {
type = string
}
variable "owner" {
type = string
}
variable "tags" {
type = map(string)
description = "Общие теги для всех ресурсов"
default = {}
}
locals {
common_tags = merge(
{
env = var.environment
owner = var.owner
terraform = "true"
},
var.tags
)
}
resource "proglib_bucket" "this" {
bucket = var.owner
tags = local.common_tags
}{}
Последний шаг это запрет на ресурсы без обязательных тегов. Это можно сделать через policy as code и проверки, чтобы не разгребать мусор уже в проде.
📍 Навигация: Вакансии • Задачи • Собесы
YAML-конфиги, но и умение автоматизировать процессы с помощью Python и понимание архитектуры систем. Рынок требует всё больше компетенций в ИИ.
Успейте забрать обучение в Proglib Academy по ценам 2025 года:
— Разработка ИИ-агентов
— Математика для разработки AI-моделей
— ML для старта в Data Science
— Математика для Data Science
— Специалист по ИИ
— Алгоритмы и структуры данных
— Программирование на Python
— Основы IT для непрограммистов
— Архитектуры и шаблоны проектирования
Выбрать направление
⚠️ Стоимость изменится 19 января
psql -qf pqr.sql -v payload='Hello, World!'{}
И на выходе нас ждёт QR-код.
docker history показывает секреты, любой pull видит их в inspect.
Фикс и лучшие практики
Передавайте через --env-file только на runtime. Для build ARG без дефолтов и --build-arg снаружи. Multi-stage сборка сбрасывает промежуточные слои с данными.
touch как «создать пустой файл». Но это лишь верхушка айсберга.
Что на самом деле делает touch:
Обновляет временные метки файла (access time, modification time). Создание файла — побочный эффект, если файл не существует.
Базовое использование:
# Создать пустой файл
touch app.log
# Обновить время изменения существующего файла
touch config.yaml
# Создать несколько файлов
touch file1.txt file2.txt file3.txt{}
Продвинутые флаги:
# Установить конкретное время
touch -t 202501150830.00 file.txt
# Формат: [[CC]YY]MMDDhhmm[.ss]
# Установить время как у другого файла
touch -r reference.txt target.txt
# Изменить только access time
touch -a file.txt
# Изменить только modification time
touch -m file.txt
# Не создавать файл, если не существует
touch -c file.txt{}
Полезные комбинации:
# Создать структуру директорий с файлами
mkdir -p app/{config,logs,data}
touch app/config/.gitkeep app/logs/.gitkeep
# Найти файлы старше 30 дней и "омолодить"
find /tmp -type f -mtime +30 -exec touch {} \;
# Обновить timestamp только если файл существует
[ -f config.json ] && touch config.json
# Создать файл с правами в одну команду
(umask 077 && touch secret.key){}
touch — это швейцарский нож для работы с временными метками и файловыми операциями.
📍 Навигация: Вакансии • Задачи • Собесы
Отзывы канала
всего 8 отзывов
- Добавлен: Сначала новые
- Добавлен: Сначала старые
- Оценка: По убыванию
- Оценка: По возрастанию
Каталог Телеграм-каналов для нативных размещений
Библиотека devops’а — это Telegam канал в категории «Интернет технологии», который предлагает эффективные форматы для размещения рекламных постов в Телеграмме. Количество подписчиков канала в 10.3K и качественный контент помогают брендам привлекать внимание аудитории и увеличивать охват. Рейтинг канала составляет 19.3, количество отзывов – 8, со средней оценкой 5.0.
Вы можете запустить рекламную кампанию через сервис Telega.in, выбрав удобный формат размещения. Платформа обеспечивает прозрачные условия сотрудничества и предоставляет детальную аналитику. Стоимость размещения составляет 20559.42 ₽, а за 34 выполненных заявок канал зарекомендовал себя как надежный партнер для рекламы в TG. Размещайте интеграции уже сегодня и привлекайте новых клиентов вместе с Telega.in!
Вы снова сможете добавить каналы в корзину из каталога
Комментарий