OffshoreVps
Tutoriais12 out. 20267 min de leituraPor a equipe da OffshoreVps

Como instalar Docker e Docker Compose em um VPS Ubuntu

Instale o Docker Engine pelo repositório oficial, execute-o sem sudo, inicie um primeiro serviço do Compose e evite a armadilha do firewall que expõe portas.

O Docker permite executar bancos de dados, aplicativos web e ferramentas em contêineres isolados, então instalar algo novo nunca bagunça o resto do seu servidor. Este guia instala o Docker Engine e o Docker Compose no Ubuntu e executa um primeiro serviço de verdade.

Janela de terminal em um VPS mostrando os comandos usados para instalar o Docker em um VPS Ubuntu, começando com “sudo apt update”
O tipo de comandos que você executará no servidor neste guia.

1. Instale a partir do repositório do Docker

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

sudo apt update
sudo apt install -y docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin

Verifique a instalação com sudo docker run hello-world.

2. Execute o Docker sem sudo

sudo usermod -aG docker $USER
newgrp docker

Membros do grupo docker têm, na prática, poder de root na máquina, então adicione apenas usuários em quem você confia.

3. Seu primeiro arquivo Compose

Crie uma pasta e um compose.yaml que execute a ferramenta de monitoramento Uptime Kuma:

mkdir -p ~/kuma && cd ~/kuma
cat > compose.yaml <<'EOF'
services:
  kuma:
    image: louislam/uptime-kuma:1
    restart: unless-stopped
    ports:
      - "127.0.0.1:3001:3001"
    volumes:
      - ./data:/app/data
EOF
docker compose up -d

Vincular a 127.0.0.1 mantém a porta fora da internet pública. Coloque um proxy reverso como Nginx ou Caddy na frente quando quiser acessá-lo de fora.

Os passos deste guia em ordem: 1. 1. Instale a partir do repositório do Docker; 2. 2. Execute o Docker sem sudo; 3. 3. Seu primeiro arquivo Compose; 4. Comandos do dia a dia; 5. Um aviso de segurança sobre firewalls; 6. O que executar em seguida
Os passos deste guia, em ordem.

Comandos do dia a dia

  • docker ps lista os contêineres em execução.
  • docker compose logs -f acompanha os logs.
  • docker compose pull && docker compose up -d atualiza para imagens mais novas.
  • docker system prune remove imagens não utilizadas e contêineres parados.

Um aviso de segurança sobre firewalls

O Docker grava suas próprias regras de iptables. Uma porta publicada como "8080:80" pode ficar acessível pela internet mesmo que o UFW diga que está bloqueada. Publique apenas o que precisa ser público, vincule serviços privados a 127.0.0.1 e teste de fora com um scanner de portas.

O que executar em seguida

Aplicativos auto-hospedados populares incluem Nextcloud, Vaultwarden, Gitea, Plausible, n8n e Jellyfin. Veja nosso guia sobre como hospedar o Nextcloud por conta própria para um exemplo completo.