DevOps | Вопросы собесов
5.06K subscribers
27 photos
1 video
677 links
Cайт easyoffer.ru
Реклама @easyoffer_adv
ВП @easyoffer_vp

Тесты t.me/+2P7cpjeyfDVlZjcy
Вакансии t.me/+i5KFWEWJ21hhYWEy
Download Telegram
🤔 Как в Docker Compose вместо YAML-файла использовать JSON-файл?

Docker Compose принимает на вход YAML-файл по умолчанию, но JSON тоже поддерживается, так как JSON является допустимым подмножеством YAML. Для этого нужно просто создать файл с расширением .json, содержащий валидную структуру, аналогичную docker-compose.yml, и передать его явно: docker-compose -f docker-compose.json up.

Ставь 👍 если знал ответ, 🔥 если нет
Забирай 📚 Базу знаний
Please open Telegram to view this post
VIEW IN TELEGRAM
🤔 Как сделать донастройку контейнера?

Донастройка контейнера может понадобиться, если:
Нужно изменить файлы конфигурации.
Установить дополнительные пакеты.
Задать переменные среды.
Подключить тома или сети.

Варианты донастройки: через Dockerfile, docker-compose, exec, тома и Entrypoint/CMD.

🟠Донастройка через Dockerfile (Лучший способ)
Если контейнер нужно модифицировать перед запуском, создаем свой Dockerfile на основе существующего образа.
FROM nginx:latest
COPY my-nginx.conf /etc/nginx/nginx.conf
CMD ["nginx", "-g", "daemon off;"]


Собираем новый образ
docker build -t my-nginx .
docker run -d -p 80:80 my-nginx


🟠Донастройка через `docker-compose` (Гибкость)
Можно задать окружение, тома, команды.
version: '3'
services:
db:
image: postgres:15
environment:
POSTGRES_USER: admin
POSTGRES_PASSWORD: secret
POSTGRES_DB: mydb
volumes:
- ./custom-postgres.conf:/etc/postgresql/postgresql.conf
command: postgres -c config_file=/etc/postgresql/postgresql.conf


Запуск
docker-compose up -d


🟠Донастройка запущенного контейнера (`docker exec`)
Если контейнер уже работает, можно внести изменения прямо в него.
docker exec -it my-container bash
apt update && apt install -y vim


🟠Донастройка через тома (Volumes)
Если нужно изменять файлы без пересборки образа, подключаем тома.
docker run -d -p 80:80 -v $(pwd)/nginx.conf:/etc/nginx/nginx.conf nginx


🟠Использование `ENTRYPOINT` или `CMD`
Можно задать скрипт донастройки, который выполнится при старте контейнера.
FROM postgres:15
COPY setup.sh /docker-entrypoint-initdb.d/setup.sh
RUN chmod +x /docker-entrypoint-initdb.d/setup.sh


В setup.sh:
#!/bin/bash
psql -U postgres -d mydb -c "CREATE TABLE test (id SERIAL PRIMARY KEY);"


Ставь 👍 и забирай 📚 Базу знаний
Please open Telegram to view this post
VIEW IN TELEGRAM
📺 Уникальная база IT собеседований

456+
реальных собеседований на программиста, тестировщика, аналитика и прочие IT профы.

Есть собесы от ведущих компаний: Сбер, Яндекс, ВТБ, Тинькофф, Озон, Wildberries и т.д.

🎯 Переходи по ссылке и присоединяйся к базе, чтобы прокачать свои шансы на успешное трудоустройство!
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM