Перейти к основному содержанию
Docker запускает программы в изолированных контейнерах: внутри программа и всё, что ей нужно, так что библиотеки и версии подбирать не надо. Готовый образ запускается одной-двумя командами, а удалённый контейнер не оставляет мусора в системе.

Установка

Подключись по SSH под root: Подключение.
  1. Установка – официальный скрипт сам определит Ubuntu или Debian и поставит свежий Docker:
    Если нужен контроль над источником пакетов, ставь Docker из официального репозитория по инструкции на docs.docker.com: способ длиннее. Там же сверяй команды, синтаксис иногда меняется.
  2. Проверка – Docker скачает и запустит тестовый образ, должно появиться Hello from Docker!:

Команды

  • docker run -d -p 8080:80 nginx – запустить контейнер:
    • -d – в фоне.
    • -p 8080:80 – наружный порт 8080 ведёт на порт 80 внутри контейнера.
    • nginx – имя образа.
  • docker ps – запущенные контейнеры.
  • docker logs ИМЯ_КОНТЕЙНЕРА – логи контейнера, имя или ID бери из docker ps.
  • docker stop ИМЯ_КОНТЕЙНЕРА – остановить контейнер.
  • docker rm ИМЯ_КОНТЕЙНЕРА – удалить контейнер.
  • docker images – скачанные образы.

Docker Compose

Несколько контейнеров, например приложение и базу, или длинную команду запуска удобнее описать в файле compose.yaml и поднимать одной командой. Compose встроен в Docker как плагин: команда docker compose без дефиса, старой утилиты docker-compose в новых установках нет. Пример compose.yaml, веб-сервер на порту 8080:
Положи файл в отдельную папку и запускай команды из неё:
  • docker compose up -d – поднять всё из файла в фоне.
  • docker compose down – остановить и удалить всё, что описано в файле.

Порты

Порт из -p или блока ports открыт из интернета. Docker прописывает свои правила iptables в обход ufw, поэтому правила файрвола такой порт не закроют. Не публикуй порты, которые не нужны снаружи. Сервис за nginx на этом же сервере публикуй только на 127.0.0.1: -p 127.0.0.1:8080:80. Панели управления закрывай паролем. Софт настраиваешь сам, Lumi отвечает за сервер и сеть. Если не работает сеть или порт, пиши в @lumisup_robot. Дальше: n8n, Своя LLM.