10 най-полезни Docker трика, които всеки разработчик трябва да знае

Docker се превърна в незаменим инструмент за модерните разработчици. Независимо дали сте начинаещ или опитен професионалист, тези трикове ще ви помогнат да работите по-ефективно.
1. Преглед на използваното дисково пространство
С времето Docker може да заеме много място. Използвайте тази команда за преглед:
docker system df
За по-подробна информация добавете флага -v
:
docker system df -v
docker system prune
.2. Използване на .dockerignore файл
Подобно на .gitignore, този файл предотвратява копирането на ненужни файлове в образа:
node_modules
.git
*.log
.env
Това намалява размера на образите и ускорява build процеса.
3. Разделяне на слоеве за по-бърз builds
Docker кешира слоеве. Подредете командите в Dockerfile от най-малко променящите се към най-често променящите се:
FROM node:14
WORKDIR /app
COPY package*.json ./
RUN npm install
COPY . .
CMD ["npm", "start"]
4. Използване на multi-stage builds
Създавайте компактни крайни образи, като използвате междинни етапи:
FROM node:14 AS build
WORKDIR /app
COPY . .
RUN npm install && npm run build
FROM nginx:alpine
COPY --from=build /app/dist /usr/share/nginx/html
5. Персонализирани мрежи за по-добра изолация
Създайте отделна мрежа за вашите контейнери:
docker network create my-network
Свържете контейнери към нея с --network my-network
.
6. Bind mounts за бърза разработка
Монтирайте локални директории за моментални промени без rebuild:
docker run -v $(pwd):/app -p 3000:3000 my-app
7. Health checks за по-надеждни приложения
Добавете проверки за здравословно състояние във вашия Dockerfile:
HEALTHCHECK --interval=30s --timeout=3s \
CMD curl -f http://localhost/ || exit 1
8. Използване на Docker Compose за сложни среди
Управлявайте множество услуги с един файл:
version: '3'
services:
web:
build: .
ports:
- "5000:5000"
redis:
image: "redis:alpine"
9. Локален Docker регистър за тестване
Стартирайте локален регистър за тестване на образи:
docker run -d -p 5000:5000 --name registry registry:2
Качете и изтеглете образи от него:
docker tag my-image localhost:5000/my-image
docker push localhost:5000/my-image
10. Интерактивна дебъг сесия в работещ контейнер
Влезте в работещ контейнер за дебъгване:
docker exec -it container-name /bin/bash
За алтернативни шелове използвайте /bin/sh
или други.
Заключение
Тези Docker трикове ще ви помогнат да работите по-ефективно и професионално. Запомнете, че Docker е мощен инструмент – използвайте го разумно!
Имате ли любим Docker трик, който не споменахме? Споделете го в коментарите!
Благодарим ви за прочитането на статията! Ако намерихте информацията за полезна, можете да дарите посредством бутоните по-долу:
Donate ☕️ Дарете с PayPalDonate 💳 Дарете с Revolut