Запустил Docker на локалке - все летает. Залил на сервер - посыпались ошибки.
Знакомая картина: у тебя на ноуте контейнер стартует, приложение работает, порты открываются.
⁉️А на сервере:
— контейнер падает с непонятной ошибкой
— файлы не подмонтировались
— права доступа вылезают там, где их не ждали
И ты сидишь, гуглишь и не понимаешь, что пошло не так.
Спойлер: дело не в Docker, а в окружении. Разные версии, переменные, пути. Docker просто честно показывает, что они отличаются.
❇️ Ребята из Merion Academy (того самого YouTube-канала про IT) на бесплатных вводных уроках разбирают Docker с нуля и дают пошаговый роадмап по профессии DevOps инженера - что нужно изучить, чтобы не метаться между сотней инструментов.
➡️ Запишись на бесплатные вводные уроки
Чтобы код работал одинаково везде - не только на твоем ноуте, но и на сервере, и в проде.
Знакомая картина: у тебя на ноуте контейнер стартует, приложение работает, порты открываются.
⁉️А на сервере:
— контейнер падает с непонятной ошибкой
— файлы не подмонтировались
— права доступа вылезают там, где их не ждали
И ты сидишь, гуглишь и не понимаешь, что пошло не так.
Спойлер: дело не в Docker, а в окружении. Разные версии, переменные, пути. Docker просто честно показывает, что они отличаются.
❇️ Ребята из Merion Academy (того самого YouTube-канала про IT) на бесплатных вводных уроках разбирают Docker с нуля и дают пошаговый роадмап по профессии DevOps инженера - что нужно изучить, чтобы не метаться между сотней инструментов.
➡️ Запишись на бесплатные вводные уроки
Чтобы код работал одинаково везде - не только на твоем ноуте, но и на сервере, и в проде.
Merion Academy
DevOps-инженер с нуля
Стань DevOps-инженером с нуля и научись использовать инструменты и методы DevOps
🔥5⚡3👍3❤2🏆2
TCP: трехфазное рукопожатие
Установка соединения
Клиент → Сервер
1. Клиент отправляет
2. Сервер получает
3. Клиент получает
4. Сервер получает
✅ Соединение установлено
Завершение соединения
Клиент → Сервер
1. Клиент отправляет
2. Сервер получает
3. Клиент получает
4. Сервер получает
❌ Соединение закрыто
@sysadmin1
Установка соединения
Клиент → Сервер
1. Клиент отправляет
SYN2. Сервер получает
SYN → отправляет SYN + ACK3. Клиент получает
SYN + ACK → отправляет ACK4. Сервер получает
ACKЗавершение соединения
Клиент → Сервер
1. Клиент отправляет
FIN2. Сервер получает
FIN → отправляет FIN + ACK3. Клиент получает
FIN + ACK → отправляет ACK4. Сервер получает
ACK@sysadmin1
Please open Telegram to view this post
VIEW IN TELEGRAM
⚡4🔥2🏆2🆒2🎉1
This media is not supported in your browser
VIEW IN TELEGRAM
Быстрый совет по Linux
Нужен безопасный и уникальный временный файл или каталог в скрипте? Используй:
Эта команда создаст временный файл с уникальным именем в каталоге /tmp.
Хочешь временный каталог — добавь флаг
@sysadmin1
Нужен безопасный и уникальный временный файл или каталог в скрипте? Используй:
$ mktemp
Эта команда создаст временный файл с уникальным именем в каталоге /tmp.
Хочешь временный каталог — добавь флаг
-d:$ mktemp -d
@sysadmin1
👍6🔥4💯2✍1❤1
1. Протоколы маршрутизации
Используются на маршрутизаторах (например, Cisco ISR 4321):
1. RIP — Routing Information Protocol
2. OSPF — Open Shortest Path First
3. EIGRP — Enhanced Interior Gateway Routing Protocol
4. BGP — Border Gateway Protocol
5. IS-IS — Intermediate System to Intermediate System
2. Протоколы коммутации
Используются на коммутаторах уровня L2/L3 (например, Cisco L3 Switch):
1. STP — Spanning Tree Protocol
2. RSTP — Rapid Spanning Tree Protocol
3. Протоколы межсетевого экранирования
Используются на устройствах безопасности (например, Fortinet):
1. NAT — Network Address Translation
2. ACL — Access Control List
3. DPI — Deep Packet Inspection
4. ZBF — Zone-Based Firewall
5. HTTPS Inspection — проверка зашифрованного HTTPS-трафика
@sysadmin1
Используются на маршрутизаторах (например, Cisco ISR 4321):
1. RIP — Routing Information Protocol
2. OSPF — Open Shortest Path First
3. EIGRP — Enhanced Interior Gateway Routing Protocol
4. BGP — Border Gateway Protocol
5. IS-IS — Intermediate System to Intermediate System
2. Протоколы коммутации
Используются на коммутаторах уровня L2/L3 (например, Cisco L3 Switch):
1. STP — Spanning Tree Protocol
2. RSTP — Rapid Spanning Tree Protocol
3. Протоколы межсетевого экранирования
Используются на устройствах безопасности (например, Fortinet):
1. NAT — Network Address Translation
2. ACL — Access Control List
3. DPI — Deep Packet Inspection
4. ZBF — Zone-Based Firewall
5. HTTPS Inspection — проверка зашифрованного HTTPS-трафика
@sysadmin1
🔥7✍3❤2🆒2👍1
Быстрый совет для Linux
Задай значение по умолчанию для переменной, если она не задана или пуста:
Если переменная
@sysadmin1
Задай значение по умолчанию для переменной, если она не задана или пуста:
echo "Username: ${USERNAME:-Guest}"Если переменная
USERNAME не определена, будет выведено Guest@sysadmin1
⚡3🔥3🏆3❤2👍2
Когда вы думали, что перезагрузка удаленного сервера займет 10 минут, а прошло уже 15 минут.
@sysadmin1
@sysadmin1
😁19🤣11👍4🤯4👻3
Как работают цифровые подписи
Сторона отправителя🥷
1. Отправитель готовит документ
Просто любой файл или текст, который надо подписать.
2. Хеш-функция (SHA-256)
Генерируется уникальный отпечаток документа — hash. Это как цифровой "отпечаток пальца", который нельзя обратно расшифровать. Изменишь хоть точку — хеш будет другой.
3. Шифрование хеша приватным ключом
Полученный хеш шифруется личным (private) ключом отправителя. Это и есть цифровая подпись — она уникальна для этого документа и конкретного отправителя.
4. Склейка
К документу прикрепляется подпись. Всё вместе отправляется по сети.
Сторона получателя🎩
5. Получение документа с подписью
Документ приходит вместе с зашифрованным хешем (подписью).
6. Хеширование полученного документа
Получатель сам считает хеш документа через ту же SHA-256.
7. Расшифровка подписи
С помощью публичного ключа отправителя расшифровывается оригинальный хеш (тот, что был у отправителя).
8. Сравнение двух хешей
Если совпадают: документ не изменён, отправитель подлинный.
Если нет: что-то изменилось или ключ не тот.
@sysadmin1
Сторона отправителя
1. Отправитель готовит документ
Просто любой файл или текст, который надо подписать.
2. Хеш-функция (SHA-256)
Генерируется уникальный отпечаток документа — hash. Это как цифровой "отпечаток пальца", который нельзя обратно расшифровать. Изменишь хоть точку — хеш будет другой.
3. Шифрование хеша приватным ключом
Полученный хеш шифруется личным (private) ключом отправителя. Это и есть цифровая подпись — она уникальна для этого документа и конкретного отправителя.
4. Склейка
К документу прикрепляется подпись. Всё вместе отправляется по сети.
Сторона получателя
5. Получение документа с подписью
Документ приходит вместе с зашифрованным хешем (подписью).
6. Хеширование полученного документа
Получатель сам считает хеш документа через ту же SHA-256.
7. Расшифровка подписи
С помощью публичного ключа отправителя расшифровывается оригинальный хеш (тот, что был у отправителя).
8. Сравнение двух хешей
Если совпадают: документ не изменён, отправитель подлинный.
Если нет: что-то изменилось или ключ не тот.
@sysadmin1
Please open Telegram to view this post
VIEW IN TELEGRAM
❤6🔥3💯3⚡2🏆2
Практический курс по SQL для начинающих
- #1 Введение в PostgreSQL
- #2 Базовые SELECT запросы
- #3 Соединения (JOIN)
- #4 Подзапросы в SQL
- #5 DDL: создание БД, таблиц и их модификация
- #6 Проектирование и нормализация Базы Данных (БД)
- #7 Представления в SQL
- #8 Логика с CASE и COALESCE в SQL
- #9 Функции SQL
- #10 Функции pl/pgSQL
- #11 Ошибки их обработка в SQL (исключения)
- #12 Индексы в PostgreSQL
- #13 Индексы в PostgreSQL # Виды индексов SQL # EXPLAIN, ANALYZE
- #14 Индексы в PostgreSQL # Создание индексов на практике # EXPLAIN, ANALYZE # GIN
@sysadmin1
- #1 Введение в PostgreSQL
- #2 Базовые SELECT запросы
- #3 Соединения (JOIN)
- #4 Подзапросы в SQL
- #5 DDL: создание БД, таблиц и их модификация
- #6 Проектирование и нормализация Базы Данных (БД)
- #7 Представления в SQL
- #8 Логика с CASE и COALESCE в SQL
- #9 Функции SQL
- #10 Функции pl/pgSQL
- #11 Ошибки их обработка в SQL (исключения)
- #12 Индексы в PostgreSQL
- #13 Индексы в PostgreSQL # Виды индексов SQL # EXPLAIN, ANALYZE
- #14 Индексы в PostgreSQL # Создание индексов на практике # EXPLAIN, ANALYZE # GIN
@sysadmin1
👍3⚡1🔥1🎉1🏆1
📌 Сортировка данных в консоли
🔹Основные команды сортировки
1️⃣ sort – основная утилита для сортировки строк в файле или потоке вывода.
🔹Сортирует строки в алфавитном порядке.
2️⃣ sort -r – сортировка в обратном порядке.
3️⃣ sort -n – сортировка чисел.
🔹Работает корректно с числами, учитывает их величину.
4️⃣ sort -h – сортировка с учётом суффиксов (K, M, G).
🔹Полезно для файловых размеров: 10K, 2M, 5G.
5️⃣ sort -k – сортировка по колонке.
🔹Здесь сортировка идёт по 2-й колонке (числовая).
6️⃣ sort | uniq – удаление дубликатов после сортировки.
🔹Показывает только уникальные строки.
🔥 Полезный трюк: сортировка процессов по использованию памяти
🔹 Выводит топ-10 процессов по потреблению памяти.
Используйте эти команды для эффективной работы в консоли! 🚀
👉@sysadmin1
🔹Основные команды сортировки
1️⃣ sort – основная утилита для сортировки строк в файле или потоке вывода.
sort файл.txt
🔹Сортирует строки в алфавитном порядке.
2️⃣ sort -r – сортировка в обратном порядке.
sort -r файл.txt
3️⃣ sort -n – сортировка чисел.
sort -n числа.txt
🔹Работает корректно с числами, учитывает их величину.
4️⃣ sort -h – сортировка с учётом суффиксов (K, M, G).
sort -h размер.txt
🔹Полезно для файловых размеров: 10K, 2M, 5G.
5️⃣ sort -k – сортировка по колонке.
sort -k2,2 -n данные.txt
🔹Здесь сортировка идёт по 2-й колонке (числовая).
6️⃣ sort | uniq – удаление дубликатов после сортировки.
sort файл.txt | uniq
🔹Показывает только уникальные строки.
🔥 Полезный трюк: сортировка процессов по использованию памяти
ps aux --sort=-%mem | head -10
🔹 Выводит топ-10 процессов по потреблению памяти.
Используйте эти команды для эффективной работы в консоли! 🚀
👉@sysadmin1
🔥3🎉3❤1👍1🏆1
This media is not supported in your browser
VIEW IN TELEGRAM
This media is not supported in your browser
VIEW IN TELEGRAM
Media is too big
VIEW IN TELEGRAM
Media is too big
VIEW IN TELEGRAM
This media is not supported in your browser
VIEW IN TELEGRAM
Media is too big
VIEW IN TELEGRAM
Media is too big
VIEW IN TELEGRAM
Media is too big
VIEW IN TELEGRAM
Media is too big
VIEW IN TELEGRAM
This media is not supported in your browser
VIEW IN TELEGRAM
Практический Bash – Всё, что нужно знать, чтобы уверенно работать в терминале!
1. Коды выхода Bash и связывание команд
2. Изучаем скрипты, функции, chmod и set -e
3. Подстановка команд: можно ли возвращать данные вместо кодов выхода в Bash?
4. Что такое stdout, stderr, /dev/null и перенаправление?
5. Передача данных в команды через конвейер и чтение из STDIN
6. grep: Всё, что нужно знать
7. sed: Легкая замена строк в файлах
8. Разбираемся с командой "tar": создание, извлечение и сжатие архивов
9. cURL – единственный HTTP-клиент, который вам понадобится | & Terminal
10. tr – Трансформация, замена и удаление определенных символов в строках
источник
👉@sysadmin1
Видео на Eng1. Коды выхода Bash и связывание команд
2. Изучаем скрипты, функции, chmod и set -e
3. Подстановка команд: можно ли возвращать данные вместо кодов выхода в Bash?
4. Что такое stdout, stderr, /dev/null и перенаправление?
5. Передача данных в команды через конвейер и чтение из STDIN
6. grep: Всё, что нужно знать
7. sed: Легкая замена строк в файлах
8. Разбираемся с командой "tar": создание, извлечение и сжатие архивов
9. cURL – единственный HTTP-клиент, который вам понадобится | & Terminal
10. tr – Трансформация, замена и удаление определенных символов в строках
источник
👉@sysadmin1
👍4🏆3❤🔥2⚡2💯2