main Initial commit
This commit is contained in:
commit
ac7df91600
65 changed files with 8957 additions and 0 deletions
72
docker-compose.yml
Normal file
72
docker-compose.yml
Normal file
|
|
@ -0,0 +1,72 @@
|
|||
version: '3.8'
|
||||
|
||||
services:
|
||||
nginx-proxy-manager:
|
||||
build: .
|
||||
container_name: nginx-proxy-manager
|
||||
restart: unless-stopped
|
||||
ports:
|
||||
- "80:80" # HTTP
|
||||
- "443:443" # HTTPS
|
||||
- "3000:3000" # API (can be removed in production)
|
||||
volumes:
|
||||
# Persistent data
|
||||
- ./data:/app/data
|
||||
- ./logs:/app/logs
|
||||
- ./certs:/app/certs
|
||||
# NGINX configurations
|
||||
- nginx_configs:/etc/nginx/conf.d
|
||||
# Let's Encrypt certificates
|
||||
- acme_data:/root/.acme.sh
|
||||
environment:
|
||||
- NODE_ENV=production
|
||||
- PORT=3000
|
||||
- DATABASE_PATH=/app/data/proxy_manager.db
|
||||
- JWT_SECRET=your-production-jwt-secret-change-this
|
||||
- JWT_EXPIRES_IN=24h
|
||||
- ADMIN_USERNAME=admin
|
||||
- ADMIN_PASSWORD=admin123
|
||||
- NGINX_CONFIG_PATH=/etc/nginx/conf.d
|
||||
- NGINX_BINARY_PATH=/usr/sbin/nginx
|
||||
- SSL_METHOD=acme.sh
|
||||
- ACME_SH_PATH=/root/.acme.sh
|
||||
- CERTBOT_PATH=/usr/bin/certbot
|
||||
- CUSTOM_CERTS_PATH=/app/certs
|
||||
- LOG_LEVEL=info
|
||||
- LOG_FILE=/app/logs/app.log
|
||||
- CORS_ORIGIN=*
|
||||
networks:
|
||||
- proxy-network
|
||||
healthcheck:
|
||||
test: ["CMD", "curl", "-f", "http://localhost:3000/api/health"]
|
||||
interval: 30s
|
||||
timeout: 10s
|
||||
retries: 3
|
||||
start_period: 40s
|
||||
|
||||
# Optional: Database backup service
|
||||
backup:
|
||||
image: alpine:latest
|
||||
container_name: nginx-proxy-manager-backup
|
||||
restart: unless-stopped
|
||||
volumes:
|
||||
- ./data:/data
|
||||
- ./backups:/backups
|
||||
command: >
|
||||
sh -c "
|
||||
while true; do
|
||||
sleep 86400;
|
||||
tar -czf /backups/backup-$(date +%Y%m%d-%H%M%S).tar.gz /data;
|
||||
find /backups -name '*.tar.gz' -mtime +7 -delete;
|
||||
done
|
||||
"
|
||||
networks:
|
||||
- proxy-network
|
||||
|
||||
volumes:
|
||||
nginx_configs:
|
||||
acme_data:
|
||||
|
||||
networks:
|
||||
proxy-network:
|
||||
driver: bridge
|
||||
Loading…
Add table
Add a link
Reference in a new issue