Procédure
O template Docker CE instala Docker CE, Docker Compose e Buildx no seu VPS KVM LWS, sem necessidade de adicionar pacotes manualmente. Este guia mostra como reinstalar o seu servidor com este template e, em seguida, utilizá-lo no dia a dia com o Docker Compose. Você verá como lançar um site, acompanhar os seus registos, conservar os seus dados, atualizá-lo e expô-lo na Internet.
Inicie sessão no seu espaço de cliente LWS e abra o separador Servidores. Localize o seu VPS e clique em Gerir para abrir a respetiva interface.
No menu lateral esquerdo, clique em Reinstalação. O catálogo de sistemas e aplicações é apresentado.
Na secção das aplicações, sob a categoria Docker, escolha por exemplo Docker CE ubuntu-24-04.
Em Chaves SSH a instalar (opcional), assinale a sua chave SSH. Em seguida, clique em Reinstalar o servidor no canto inferior direito.
Na janela de aviso, introduza o nome exato do seu servidor e clique no botão vermelho Reinstalação.
O sistema cria o seu ambiente com Docker CE, Docker Compose e Buildx. A operação demora geralmente entre 3 e 5 minutos.
Quando o servidor voltar a ficar em ON com a menção Docker CE, anote o seu endereço IPv4 no bloco IPs do servidor. Abra um terminal no seu computador e ligue-se como root, substituindo o IP de exemplo pelo seu.
ssh root@203.0.113.10
Mostre as versões do Docker e do Docker Compose. Em seguida, execute o contentor de teste hello-world: ele apresenta uma mensagem e depois para.
docker --version
docker compose version
docker run --rm hello-worldHello from Docker!
This message shows that your installation appears to be working correctly.Um ficheiro compose.yaml descreve os seus contentores. Crie uma pasta de projeto com uma subpasta para as páginas do site e uma página inicial. Depois, crie o ficheiro compose.yaml: ele inicia o Nginx, publica a porta 8080 do servidor para a porta 80 do contentor, monta a pasta local em modo só de leitura e reinicia o contentor exceto em caso de paragem manual.
mkdir -p /root/mon-site/html
cd /root/mon-site
echo 'Bonjour depuis Docker
' > html/index.html
nano compose.yamlservices:
web:
image: nginx:stable
ports:
- "8080:80"
volumes:
- ./html:/usr/share/nginx/html:ro
restart: unless-stoppedA partir da pasta do projeto, inicie os serviços em segundo plano. O Docker descarrega a imagem da primeira vez e depois cria o contentor. Em seguida, teste a resposta do site a partir do servidor.
cd /root/mon-site
docker compose up -d
curl http://localhost:8080Bonjour depuis Docker
Liste os contentores do projeto para verificar o respetivo estado. Depois, siga os seus registos em direto para detetar um erro ou ver os pedidos recebidos. Saia do acompanhamento com Ctrl+C: os contentores continuam a correr.
docker compose ps
docker compose logs -fO conteúdo de um contentor desaparece quando este é eliminado. Para conservar dados, coloque-os num volume. No exemplo, a pasta html é montada no contentor: as suas páginas permanecem no servidor. Para uma base de dados, utilize antes um volume nomeado, declarado no ficheiro compose.yaml. Os comandos abaixo listam os volumes e mostram a localização de um deles.
docker volume ls
docker volume inspect nom_du_volumePara passar para uma versão mais recente da imagem, descarregue-a e recrie o contentor. O Docker substitui apenas os serviços cuja imagem mudou. Os seus volumes são conservados.
cd /root/mon-site
docker compose pull
docker compose up -dCom restart: unless-stopped no ficheiro compose.yaml, o contentor reinicia após um reinício do servidor. Fica parado se o tiver interrompido manualmente. O serviço Docker inicia sozinho com o sistema: verifique-o com o comando abaixo.
systemctl is-enabled dockerenabledO primeiro comando para e remove os contentores do projeto, mas mantém os seus ficheiros e volumes. O segundo elimina os contentores parados, as redes não utilizadas e as imagens órfãs (sem etiqueta). O Docker pede confirmação antes de o executar.
docker compose down
docker system pruneA linha ports do ficheiro compose.yaml publica uma porta do servidor. Com 8080:80, o site responde na porta 8080 do IP do servidor, por exemplo http://203.0.113.10:8080. Se a firewall estiver ativa no seu VPS, abra esta porta no menu Firewall do painel KVM. Para utilizar um nome de domínio como exemplo.com, aponte-o para o IP do servidor junto do seu gestor de DNS.
curl http://203.0.113.10:8080Bonjour depuis Docker
Não. O template Docker CE integra o motor Docker CE, bem como as extensões Docker Compose e Docker Buildx. Eles podem ser utilizados logo após o fim da reinstalação.
As chaves SSH são injetadas na conta root apenas durante a instalação do sistema. Se adicionar uma chave mais tarde, adicione-a você mesmo no ficheiro ~/.ssh/authorized_keys.
Publique a porta com a secção ports do ficheiro compose.yaml, por exemplo 8080:80. Se a firewall estiver ativa, abra também esta porta no menu Firewall do painel KVM.
Para um volume nomeado, o Docker coloca-os no disco do servidor, em /var/lib/docker/volumes. O comando docker volume inspect indica a localização exata. Para uma pasta montada como ./html, os dados permanecem na sua pasta de projeto.
A partir da pasta do projeto, execute docker compose ps -a para ver o estado de cada serviço e depois docker compose logs nom_du_service para ler as suas mensagens de erro. Um erro de indentação no ficheiro compose.yaml é uma causa frequente.
Adicione restart: unless-stopped ao serviço no ficheiro compose.yaml e depois volte a executar docker compose up -d. O serviço Docker inicia com o sistema e relança então os seus contentores.
Uma imagem é um modelo fixo que contém o código e as respetivas dependências. O contentor é a instância em execução criada a partir dessa imagem.
Não. A reinstalação sobrescreve o disco local e elimina definitivamente os dados e os snapshots existentes.
Coloque-a à equipa LWS e à comunidade. A resposta é publicada após moderação.