Docker пакетира приложение и всичко, от което се нуждае, в контейнер, който работи еднакво навсякъде — най-чистият начин да хостваш услуги на VPS. Единствената уловка на Ubuntu и Debian е, че версията в собственото repository на distro-то често е стара и идва без модерния Compose plugin. Инсталирай от официалното repository на Docker вместо това. Ето целия процес.
1. Настрой официалното repository на Docker (Ubuntu)
sudo apt update
sudo apt install -y ca-certificates curl
sudo install -m 0755 -d /etc/apt/keyrings
sudo curl -fsSL https://download.docker.com/linux/ubuntu/gpg -o /etc/apt/keyrings/docker.asc
sudo chmod a+r /etc/apt/keyrings/docker.asc
echo \
"deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.asc] \
https://download.docker.com/linux/ubuntu $(. /etc/os-release && echo "$VERSION_CODENAME") stable" | \
sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
2. Инсталирай Docker Engine и Compose
sudo apt update
sudo apt install -y docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
3. Потвърди, че работи и е включен при boot
sudo systemctl enable --now docker
sudo docker run --rm hello-world
Контейнерът hello-world се сваля, отпечатва съобщение за успех и излиза — доказателство, че engine-ът работи.
4. (Опционално) Пускай Docker без sudo
sudo usermod -aG docker $USER
# log out and back in for the group to take effect
Прави това само за потребител, на когото се доверяваш — docker-group достъп е ефективно root на хоста.
Бърз реален контейнер
docker run -d --restart unless-stopped -p 8080:80 --name web nginx
# visit http://YOUR.SERVER.IP:8080
--restart unless-stopped е това, което кара контейнера да се върне след рестарт.
Честни предупреждения
- Използвай официалното repo за текуща версия;
docker.ioпакетът на distro-то изостава и няма Compose plugin-а. - Отваряй само портовете, които публикуваш.
-p 8080:80на контейнер излага 8080 — съчетай Docker с UFW firewall. - Оразмери машината към контейнерите, не към самия Docker, който е лек.
Следващи стъпки
С инсталиран Docker можеш да хостваш почти всичко. Виж хостване на няколко услуги зад един IP, или конкретни Docker build-ове като RustDesk сървър за отдалечен работен плот и Uptime Kuma мониторинг. За да сложиш домейн и HTTPS отпред, виж как да настроиш nginx reverse proxy.
Коментари
Още няма коментари. Бъди първият.