Você quer rodar um site estático no seu CasaOS usando NGINX com Docker Compose, mesmo que sua operadora bloqueie o IP público? Neste tutorial simples e direto, você vai aprender a fazer isso usando a porta 8280 e, se quiser, com Cloudflare Tunnel.

🚀 O que vamos fazer
- Usar a imagem oficial
nginx:alpine(leve e rápida) - Criar uma pasta local com seus arquivos HTML
- Rodar tudo com Docker Compose
- Acessar via
http://<seu-ip>:8280
🧱 Estrutura de Pastas
Crie a pasta onde ficará seu projeto:
mkdir -p /DATA/AppData/nginx-alpine
cd /DATA/AppData/nginx-alpine
Crie seu index.html (ou copie seu site para lá) assim:
<!DOCTYPE html>
<html>
<head>
<title>Welcome to nginx!</title>
<style>
body {
width: 35em;
margin: 0 auto;
font-family: Tahoma, Verdana, Arial, sans-serif;
}
</style>
</head>
<body>
<h1>Welcome to nginx!</h1>
<img src="https://br.hobbytestlab.com/wp-content/uploads/2025/08/img_entrada_nginx_alpine.webp" />
<p>If you see this page, the nginx web server is successfully installed and working. Further configuration is required.</p>
<p>For online documentation and support please refer to
<a href="http://nginx.org/">nginx.org</a>.<br/>
Commercial support is available at
<a href="http://nginx.com/">nginx.com</a>.</p>
<p><em>Thank you for using nginx.</em></p>
</body>
</html>⚙️ docker-compose.yml completo
Salve esse conteúdo dentro da pasta como docker-compose.yml:
version: "3.8"
services:
nginx:
image: nginx:alpine
container_name: nginx-alpine
ports:
- "8280:80"
volumes:
- /DATA/AppData/nginx-alpine:/usr/share/nginx/html:ro
restart: unless-stopped
Esse compose:
- Expõe a porta 8280 no seu IP local
- Serve tudo da pasta
/DATA/AppData/nginx-alpine - Reinicia automaticamente em caso de reboot
▶️ Iniciando o container
Execute no terminal:
cd /DATA/AppData/nginx-alpine
docker compose up -d
🌐 Acessando o site
Agora é só abrir no navegador:
http://<SEU_IP>:8280
Substitua <SEU_IP> pelo IP do seu dispositivo com CasaOS.
🔒 Integração com Cloudflare Tunnel (opcional)
Se a sua operadora bloqueia o IP público, você pode usar Cloudflare Tunnel para tornar seu site acessível via domínio, mesmo sem IP liberado.
Exemplo de config.yml do cloudflared:
tunnel: meu-tunel
credentials-file: /root/.cloudflared/meu-tunel.json
ingress:
- hostname: meusite.com
service: http://localhost:8280
- service: http_status:404

❓ FAQ
O que é nginx:alpine?
Uma versão super leve da imagem oficial do NGINX (~5MB), baseada em Alpine Linux. Ideal para servidores locais ou embedded.
Posso usar SSL com Cloudflare?
Sim! Cloudflare entrega HTTPS automaticamente, mesmo que o NGINX esteja servindo via HTTP.
Preciso expor a porta 80?
Não. No exemplo acima usamos a porta 8280, ideal para evitar conflitos com outros apps do CasaOS.
Funciona no Orange Pi ou Raspberry Pi?
Sim! Desde que o sistema suporte Docker (como Debian/Armbian), tudo funciona perfeitamente.
✅ Conclusão
Você agora tem um servidor web leve, rápido e confiável usando NGINX com Docker Compose no CasaOS. Ideal para sites estáticos, painéis locais ou servir arquivos pela rede — e totalmente compatível com Cloudflare Tunnel, mesmo se sua operadora bloquear seu IP!
💬 Gostou? Compartilhe!
Se esse tutorial te ajudou, compartilhe com outros usuários de CasaOS ou Orange Pi! E para mais dicas sobre automação, servidores e projetos DIY, continue acompanhando nosso site.








![Principais Comandos Docker para Iniciantes e Desenvolvedores [Guia Rápido 2025]](https://br.hobbytestlab.com/wp-content/uploads/2025/05/Comandos-Docker1.webp)
