Библиотека девопса | DevOps, SRE, Sysadmin
10.3K subscribers
1.38K photos
70 videos
4 files
2.57K links
Все самое полезное для девопсера в одном канале.

По рекламе: @proglib_adv

Учиться у нас: https://proglib.io/w/25874ec4

Для обратной связи: @proglibrary_feeedback_bot

РКН: https://gosuslugi.ru/snet/6798b4e4509aba565
Download Telegram
🛠🔥 Как ускорить CI/CD пайплайн в 5 раз: опыт оптимизации

CI/CD-пайплайн — ключевая часть разработки. Его медлительность снижает продуктивность команды и замедляет релизы. В статьe автор делится опытом, как он сократил время выполнения пайплайна с 45 минут до 10.

Что сделано:
1️⃣ Разделение задач на параллельные процессы
Ранее этапы выполнялись последовательно. Теперь тесты, сборка и другие задачи запускаются параллельно, что экономит общее время.

2️⃣ Использование кэширования зависимостей
Зависимости (например, npm-модули) теперь не переустанавливаются заново для каждого запуска. Это снизило время установки на 80%.

3️⃣ Оптимизация тестирования
Тесты разделены на группы для выполнения в несколько потоков.
Реализован механизм пропуска тестов для файлов, которые не изменились.

4️⃣ Улучшение Docker-сборки
Пайплайн использует многоэтапные сборки Docker-образов. Это уменьшило их размер и время создания.

5️⃣ Переход на облачные раннеры
Использование облачных серверов позволило масштабировать ресурсы и избежать узких мест на локальных машинах.

Результаты:
Время выполнения пайплайна сократилось с 45 до 10 минут.
Тестирование ускорилось на 70%, сборка Docker-образов — на 50%.
Команда начала получать обратную связь от системы почти мгновенно, что улучшило процесс разработки.
Please open Telegram to view this post
VIEW IN TELEGRAM
4
👻 Ghostty — новый терминал для современных разработчиков и DevOps

Друзья, знакомьтесь! Ghostty — это новый эмулятор терминала, который создан для работы на macOS и Linux. Его автор — Митчелл Хашимото, известный разработчик таких инструментов, как Vagrant и Terraform.

🔥 Почему Ghostty — это must-have:
Работает быстрее, чем многие популярные терминалы. Вы точно заметите разницу!
На macOS использует родные технологии для создания гладкого и удобного интерфейса. На Linux — поддержка GTK
Ghostty разрабатывается как проект с открытым исходным кодом.

Кому будет полезен?
Разработчикам: ускоряет работу с кодом и делает терминал удобным для современных инструментов.
Админам и DevOps: высокая производительность для CI/CD, контейнеров и мониторинга.
Исследователям данных: поддержка графики помогает визуализировать данные прямо в терминале.

💻 Хотите попробовать?

#новость
Please open Telegram to view this post
VIEW IN TELEGRAM
🔴 Интеграция Playwright и GitHub Actions: Оптимизация CI/CD

Современные веб-приложения требуют высокой скорости разработки и надежного тестирования. Одной из лучших практик является использование непрерывной интеграции и доставки (CI/CD), где автоматическое тестирование играет ключевую роль. В статье автор подробно рассматривает, как связать мощь Playwright с гибкостью GitHub Actions для создания эффективного процесса CI/CD. В этой публикации я расскажу об основных идеях и их преимуществах.

▶️ Playwright: Универсальный инструмент для тестирования
Playwright, разработанный Microsoft, позволяет создавать автоматические тесты для популярных браузеров, таких как Chromium, Firefox и WebKit. Его главные преимущества:
Поддержка различных языков программирования: JavaScript, Python, Java и C#.
Кросс-браузерное тестирование.
Простая настройка и интеграция с CI/CD.

GitHub Actions: Автоматизация на каждый день
GitHub Actions позволяет автоматизировать запуск тестов, сборку и развертывание приложений. Эта платформа интегрирована прямо в GitHub и идеально подходит для разработчиков, использующих эту экосистему.

Вместе с Playwright GitHub Actions позволяет:
Настроить автоматический запуск тестов при каждом изменении в коде.
Ускорить выявление ошибок.
Упростить доставку новых функций.

👨‍💻 Как это работает?
В статье подробно описывается процесс настройки рабочего процесса. Вот пример:
1️⃣ Создайте файл .github/workflows/playwright.yml;
2️⃣ Настройте шаги для проверки кода, установки зависимостей и запуска тестов;
3️⃣ Используйте Playwright CLI для выполнения тестов в автоматическом режиме.

Пример файла:
name: CI with Playwright

on:
push:
branches:
- main
pull_request:

jobs:
tests:
runs-on: ubuntu-latest

steps:
- name: Checkout repository
uses: actions/checkout@v3

- name: Setup Node.js
uses: actions/setup-node@v3
with:
node-version: '16'

- name: Install dependencies
run: npm install

- name: Run Playwright tests
run: npx playwright test
Please open Telegram to view this post
VIEW IN TELEGRAM
✉️ Давно хотели свой почтовый сервер? Вдохновляемся OpenBSD!

Мечтали о собственном почтовом сервере, но не знали, с чего начать? Статья от Николя Карпи — это отличный гид для тех, кто хочет создать простой и надежный почтовый сервер с использованием OpenBSD.

Что особенного в OpenBSD?
👍 Безопасность по умолчанию: OpenBSD — один из самых безопасных операционных систем благодаря строгим политикам и минималистичному подходу.
👍 Простота настройки: всё, что нужно для работы сервера, уже есть в базовой системе — никаких лишних пакетов.
👍 Идеально для почты: OpenBSD включает smtpd, который подходит для небольших или средних почтовых серверов.

Основные шаги
1️⃣ Настройка DNS-записей:
Создайте MX-записи для вашего домена.
Добавьте SPF, DKIM и DMARC для безопасности.
2️⃣ Установка OpenSMTPD:
Простое решение для работы с почтой.
Поддерживает шифрование и авторизацию.
3️⃣ Доставка почты:
Настройте пересылку писем на локальных или удалённых пользователей.
4️⃣Фильтрация и антиспам:
Использование spamd и других инструментов OpenBSD для блокировки спама.

Почему это стоит попробовать?
Никто больше не управляет вашей почтой, кроме вас.
Вы поймете, как работает интернет и электронная почта.
Настраивайте сервер под свои задачи.ц
Please open Telegram to view this post
VIEW IN TELEGRAM
👍3🥰2😁1
This media is not supported in your browser
VIEW IN TELEGRAM
🤩 Resizer2: Управляй окнами на Windows как профессионал

Resizer2 — это утилита для Windows, позволяющая управлять окнами с помощью комбинации клавиши Win и мыши, подобно функционалу в KDE или i3.

Основные возможности:

Перемещение окон: удерживайте Win и левую кнопку мыши для перемещения окна; если окно полноэкранное или максимизировано, оно переместится между мониторами.
Изменение размера: удерживайте Win и правую кнопку мыши для изменения размера окна от ближайшего угла.
Прозрачность: используйте Win и прокрутку мыши для изменения прозрачности окна.
Свертывание: нажмите Win и среднюю кнопку мыши для сворачивания окна.
Максимизация/восстановление: двойной клик левой кнопкой мыши с удержанием Win для максимизации или восстановления окна.

Установка:
1️⃣Скачайте последнюю версию установщика с GitHub.
2️⃣Запустите установщик и следуйте инструкциям.

❗️Примечание: доступна портативная версия (.exe), не требующая установки, однако автозапуск настраивается только через установщик.
Please open Telegram to view this post
VIEW IN TELEGRAM
4
💻📈 Итоги года Proglib: 2024 год в цифрах и достижениях

Привет, DevOps-инженеры! Этот год вы снова доказали, что именно вы — невидимые герои, стоящие за стабильностью и масштабируемостью цифрового мира. Вместе с вами мы следили за трендами, автоматизировали процессы и исследовали новые подходы к работе.

Теперь пришло время подвести итоги: 2024 год был насыщен событиями и достижениями для всех нас, и Proglib делится своими ключевыми успехами, которые стали возможны благодаря нашему сообществу.

Добро пожаловать в обзор года!
👍4
🎨 Какими навыками должен владеть фронтендер

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

Знания и навыки, необходимые фронтендеру:
▪️ Уметь работать с HTML и CSS
▪️ Выучить язык программирования JavaScript
▪️ Овладеть одним из фреймворков на базе этого языка (React, Angular, Vue)
▪️ Уметь работать с Git
▪️ Понимать, что такое веб-страницы, протоколы HTTP/HTTPS, браузеры, домены и хостинг
▪️ Разбираться в REST API
▪️ Работать с Figma
▪️ Иметь базовые навыки проверки своего кода

➡️ Забирайте курс Frontend со скидкой 35%, он поможет со всем этим разобраться – https://proglib.io/w/eeccf187
Please open Telegram to view this post
VIEW IN TELEGRAM
🎉1
Google в машине времени

Как давно вы пользуетесь Google? А задумывались, каким он был в самом начале? Для тех, кто помнит, это путешествие в прошлое, а для тех, кто не застал первые дни интернета, — уникальная возможность увидеть, с чего всё начиналось. Сайт, который переносит нас в эпоху простоты и минимализма, напомнит, как выглядел старый добрый Google.

Загляните и ощутите дух зарождения интернета — независимо от того, сколько лет вы в сети!

#новость
С наступающим, девопсы! Или уже наступившим!🎆🎆

Уже придумали чем заняться в новом году? 😉
Если нет, то предлагаем вам подборку фильмов к просмотру:

🔠 Игра в имитацию (2014)
🅰️ Стив Джобс (2015)
🔠 Revolution OS (2001)
©️ Железный человек (2008)
🔠 Кто я (2014)
Please open Telegram to view this post
VIEW IN TELEGRAM
👍5
🧑‍💻 Статьи для IT: как объяснять и распространять значимые идеи

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

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

Для кого: для авторов, копирайтеров и просто программистов, которые хотят научиться интересно рассказывать о своих проектах.

👉Материалы регулярно дополняются, обновляются и корректируются. А еще мы отвечаем на все учебные вопросы в комментариях курса.
👍1
⚙️ Подпишись на нашу еженедельную email-рассылку, чтобы быть в курсе последних открытий и тенденций в мире бэкенда.

В еженедельных письмах ты найдешь:
● Языки программирования и фреймворки для бэкенда
● Архитектура и проектирование серверных приложений
● Базы данных и управление данными
● Безопасность и защита данных
● Облачные технологии и DevOps
● API и интеграции
● Тестирование и отладка
● Инструменты и утилиты для бэкенд-разработчиков
● Лучшие практики и паттерны проектирования

👉Подписаться👈
👍1🎉1
Давайте признавайтесь в комментариях — что вам подарили? 👇
#интерактив
👍3
This media is not supported in your browser
VIEW IN TELEGRAM
Вот и новый год! 🎆 Давайте погадаем что там нас ждёт?
Делайте скриншот и присылайте в комментарии!⬇️

#интерактив
Please open Telegram to view this post
VIEW IN TELEGRAM
🥰3👍1
💻⚙️ 3 полезные фичи PowerToys

Microsoft PowerToys — это бесплатный набор утилит для Windows, созданный для повышения продуктивности и удобства работы. Эти инструменты добавляют полезные функции, которые упрощают выполнение повседневных задач.

1️⃣ Always On Top
Закрепите важные окна, такие как терминал, мониторинг или дашборды, с помощью Always On Top. Нажмите Win + Ctrl + T, и окно останется поверх остальных. Это спасение, когда нужно держать всё под контролем во время деплоя или отладки. 🖥

2️⃣ Keyboard Manager
Создайте кастомные горячие клавиши или переназначьте неудобные комбинации для автоматизации рутинных задач. С Keyboard Manager вы можете оптимизировать работу в терминале, IDE или браузере, ускоряя взаимодействие с вашими инструментами. ⌨️

3️⃣ Shortcut Guide
Нажмите Win + Shift + / или зажмите Win (зависит от версии и конифгурации) и получите визуальную подсказку всех доступных горячих клавиш. ⚡️
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥3
Запуск Visual Studio Code в Докере: зачем и как?

Docker — это мощный инструмент для создания изолированных окружений, а запуск Visual Studio Code в контейнере может существенно улучшить ваш рабочий процесс. Давайте разберём, зачем это нужно и как настроить VS Code для работы через Docker.

Зачем запускать VS Code в Docker?
Контейнер с VS Code можно перенести на другой компьютер или сервер. Это особенно полезно, если вы работаете на разных машинах или хотите поделиться настроенным окружением с командой.

Как настроить Visual Studio Code в Docker?
Для настройки можно использовать гайд из статьи. Вот краткое руководство:

1️⃣ Создание Dockerfile
Создайте файл Dockerfile со следующим содержимым:
FROM ubuntu:latest

# Install prerequisites
RUN apt-get update && apt-get install -y \
curl \
wget \
sudo \
build-essential

# Install Code-Server (VS Code in the browser)
RUN curl -fsSL https://code-server.dev/install.sh | sh

# Expose port for Code-Server
EXPOSE 8080

# Start Code-Server on container launch
CMD ["code-server", "--bind-addr", "0.0.0.0:8080", "--auth", "none"]


2️⃣ Запуск контейнера
Запустите контейнер и откройте порт 8080 для доступа

3️⃣ Доступ к VS Code
Откройте браузер и перейдите по адресу https://localhost:8080. Здесь вы сможете работать в Visual Studio Code.

4️⃣ Сохранение данных (опционально) - чтобы изменения сохранялись, подключите локальную папку

А вы уже пробовали запускать VS Code в Docker? Делитесь своим опытом и задавайте вопросы в комментариях!
Please open Telegram to view this post
VIEW IN TELEGRAM
👍96🔥3
⚙️🛠️ WinGet — вместо тысячи кликов

WinGet — это пакетный менеджер для Windows, который значительно упрощает процесс установки, обновления и удаления программ через командную строку. С его помощью пользователи могут избежать необходимости скачивания установочных файлов из интернета и прохождения через мастера установки.

Основные возможности WinGet:

Поиск приложений: команда winget search позволяет находить программы по названию или категории.
Установка приложений: с помощью команды winget install <имя_программы> можно быстро установить нужное приложение.
Обновление приложений: команда winget upgrade --all обновляет все установленные программы до актуальных версий.
Удаление приложений: для удаления используется команда winget uninstall <имя_программы>.

WinGet работает с проверенными репозиториями пакетов, что снижает риск загрузки вредоносного или нежелательного ПО. Для пользователей Windows 11 WinGet уже предустановлен, а владельцы Windows 10 могут бесплатно скачать его из Microsoft Store.
👍6👏2😁1🥱1