Основы Docker
Что такое Docker
Docker запускает приложения в изолированных контейнерах. Каждый контейнер содержит приложение и всё, что ему нужно для работы: код, зависимости и системные библиотеки. Благодаря этому приложение одинаково работает на любой машине, где установлен Docker.
Образы (images) — это готовые шаблоны, из которых создаются контейнеры.
Образы берутся из реестра (например, Docker Hub) или собираются локально
по инструкции из Dockerfile.
Установка
На Ubuntu или Debian официальный установщик ставится одной командой:
curl -fsSL https://get.docker.com | sh
После установки добавьте пользователя в группу docker, чтобы
запускать команды без sudo:
sudo usermod -aG docker $USER
Для применения изменений нужно перелогиниться.
Основные команды
Скачать образ из реестра:
docker pull nginx
Запустить контейнер. Флаг -d — в фоне, -p — проброс порта, --name — имя:
docker run -d -p 8080:80 --name web nginx
Посмотреть запущенные контейнеры:
docker ps
Все контейнеры, включая остановленные:
docker ps -a
Зайти в контейнер и выполнить команду внутри:
docker exec -it web bash
Посмотреть логи контейнера:
docker logs -f web
Остановить, запустить и перезапустить контейнер:
docker stop web
docker start web
docker restart web
Удалить контейнер и образ:
docker rm web
docker rmi nginx
Dockerfile
Чтобы собрать собственный образ, нужно описать его в файле
Dockerfile. Минимальный пример для простого веб-приложения:
FROM node:20-alpine
WORKDIR /app
COPY package*.json ./
RUN npm install
COPY . .
EXPOSE 3000
CMD ["node", "index.js"]
Собрать образ из текущей директории:
docker build -t my-app .
И запустить его:
docker run -d -p 3000:3000 my-app
Полезные мелочи
docker images— список локальных образов.docker system prune— очистить неиспользуемые данные.docker inspect web— подробная информация о контейнере.