Como implantar uma aplicação em um Stack?
O Stack recém-instalado executa uma aplicação de exemplo. Implantar a sua é substituir o conteúdo de um diretório e reconstruir.
O único diretório que é seu
Seu código vai na pasta app/ dentro do Stack:
/root/stack/<lenguaje>/<stack>/app/
Por exemplo, /root/stack/python/flask-mysql/app/.
Você tem três formas de levar seu código até lá. Escolha uma: Git se seu projeto está em um repositório, SFTP se preferir arrastar arquivos do seu computador, ou o gerenciador de arquivos web se não quiser instalar nada.
Opção 1: via Git
É a recomendada: deixa o servidor em um estado que você pode reproduzir, e atualizar é um único comando.
Conecte-se por SSH e entre no diretório do Stack:
cd /root/stack/python/flask-mysql
O diretório app/ já traz a aplicação de exemplo, então não está vazio e git clone sobre ele falha. Esvazie app/ primeiro e clone seu repositório dentro:
rm -rf app
git clone https://github.com/tu-usuario/tu-repositorio.git app
Reconstrua e inicie:
docker compose up -d --build
Atualizar a aplicação mais tarde
cd /root/stack/python/flask-mysql/app
git pull
cd ..
docker compose up -d --build
Opção 2: via SFTP
Conecta com os mesmos dados que o SSH: mesmo host, mesmo usuário, mesma senha e mesma porta. Não é preciso habilitar nada.
No seu cliente SFTP:
| Campo | Valor |
|---|---|
| Protocolo | SFTP - SSH File Transfer Protocol |
| Servidor | o IP do seu cloud |
| Usuário | root |
| Senha | a senha root do seu cloud |
| Porta | a porta SSH que lhe enviamos |
Uma vez conectado, navegue até o diretório do seu Stack:
/root/stack/<lenguaje>/<stack>/app/
Apague os arquivos de exemplo que estiverem lá dentro e envie os da sua aplicação no lugar.
Depois, por SSH, reconstrua:
cd /root/stack/python/flask-mysql
docker compose up -d --build
Opção 3: pelo navegador
É a opção mais simples, e não requer instalar nenhum programa nem usar o terminal.
Seu serviço inclui Cloud Commander, um gerenciador de arquivos web que já vem funcionando. Acesse em:
https://cloudcmd.tudominio.com
Substitua tudominio.com pelo domínio do seu serviço.
Ao entrar você verá apenas duas pastas:
application— o código da sua aplicação. É a mesma pastaapp/que você vê por SSH ou por SFTP.backups— os backups automáticos do seu Stack, prontos para download.
Para implantar: apague o conteúdo de exemplo que houver em application, envie os arquivos da sua aplicação e aplique as mudanças.
Por que sempre --build
docker compose up -d --build
Alguns Stacks montam app/ dentro do contêiner, então uma alteração em um arquivo é vista instantaneamente. Outros compilam seu código dentro da imagem, e aí uma alteração só existe depois que a imagem é reconstruída. Além disso, as dependências — requirements.txt, package.json, composer.json, pom.xml — são instaladas durante a construção em todos os casos.
Reconstruir sempre funciona em qualquer Stack. É o comando seguro para memorizar.
Verificar se deu certo
docker compose ps # todos os serviços em estado "running"
docker compose logs -f app # os logs da sua aplicação, ao vivo
Depois abra o domínio do seu servidor no navegador.
Se algo falhar
| Sintoma | Onde olhar |
|---|---|
| A aplicação não sobe | docker compose logs app |
| Erro ao construir a imagem | A saída de docker compose up --build, sem -d |
| Responde 502 pelo navegador | Sua aplicação não está escutando na porta interna esperada |
| Não conecta com o banco de dados | docker compose ps — o banco demora alguns segundos para ficar pronto |
Para voltar a um estado limpo sem perder o banco de dados nem os backups:
docker compose down
docker compose up -d --build
Seus dados estão respaldados
O Stack faz backups automáticos do banco de dados e da sua aplicação uma vez por dia, e conserva os últimos sete. Você os encontra na pasta backups do Cloud Commander. Os intervalos e a retenção são alterados no arquivo .env.