Acessando o Semaphore UI
Abrir no browser: http://<SERVER_IP>
Entrar:
- Nome de usuário:
admin - Senha: armazenada em
/root/semaphore/docker-compose.yml(SEMAPHORE_ADMIN_PASSWORD)
Recuperar senha:
grep SEMAPHORE_ADMIN_PASSWORD /root/semaphore/docker-compose.yml
Ficheiros e diretórios importantes
- Caminho de instalação:
/root/semaphore - Arquivo Compose:
/root/semaphore/docker-compose.yml - Configuração do Caddy:
/etc/caddy/Caddyfile - Volume Postgres:
semaphore_postgres - Volume de dados:
semaphore_data - Volume de configuração:
semaphore_config - Volume temporário:
semaphore_tmp
Domínio e HTTPS (Caddy)
0. HTTPS NÃO funciona com endereços IP.
1. Apontar um domínio (por exemplo, example.com) para o endereço IP do seu servidor.
2. Atualizar /etc/caddy/Caddyfile:
example.com {
reverse_proxy 127.0.0.1:3000 {
header_up X-Real-IP {client_ip}
}
}
3. Reinicie o Caddy:
systemctl restart caddy
4. Caddy emitirá e renovará certificados SSL automaticamente.
Gerenciando o Stack
cd /root/semaphore
Verificar o status:
docker compose ps
Ver registos:
docker compose logs -f
Reiniciar os serviços:
docker compose restart
Parar pilha:
docker compose down
Pilha inicial:
docker compose up -d
Notas
- O PostgreSQL é implantado como contêiner (
semaphore_db) - A interface é exposta apenas via Caddy (sem exposição direta de portas)