Some checks are pending
Deploy DummyBot / Build & Deploy to ${{ env.DEPLOY_HOST }} (push) Waiting to run
Gitea 1.22.6 no soporta Actions completo. Solución: - WebhookController valida HMAC-SHA256, dispara script en background - /usr/local/bin/dummybot-deploy.sh hace git pull + composer + npm + migrate + up - Webhook en Gitea → POST http://157.180.77.232:18080/webhook/deploy - Secreto DEPLOY_WEBHOOK_SECRET en .env, validado por X-Hub-Signature-256 - Mount del script y log dir al container dummybot_app
73 lines
2.0 KiB
YAML
73 lines
2.0 KiB
YAML
version: "3.8"
|
|
|
|
services:
|
|
app:
|
|
build:
|
|
context: .
|
|
dockerfile: Dockerfile
|
|
container_name: dummybot_app
|
|
restart: unless-stopped
|
|
working_dir: /var/www
|
|
volumes:
|
|
- .:/var/www
|
|
- /usr/local/bin/dummybot-deploy.sh:/usr/local/bin/dummybot-deploy.sh:ro
|
|
- /var/log/dummybot-deploy:/var/log/dummybot-deploy
|
|
environment:
|
|
- AUTO_MIGRATE=${AUTO_MIGRATE:-0}
|
|
- DEPLOY_WEBHOOK_SECRET=${DEPLOY_WEBHOOK_SECRET:-}
|
|
networks:
|
|
- laravel
|
|
|
|
webserver:
|
|
image: nginx:alpine
|
|
container_name: dummybot_web
|
|
restart: unless-stopped
|
|
expose:
|
|
- 80
|
|
volumes:
|
|
- .:/var/www
|
|
- ./nginx.conf:/etc/nginx/conf.d/default.conf
|
|
networks:
|
|
- laravel
|
|
- proxy
|
|
depends_on:
|
|
- app
|
|
|
|
db:
|
|
image: mysql:8.0
|
|
container_name: dummybot_db
|
|
restart: unless-stopped
|
|
environment:
|
|
MYSQL_DATABASE: ${DB_DATABASE:-dummybot}
|
|
MYSQL_USER: ${DB_USERNAME:-dummybot}
|
|
MYSQL_PASSWORD: ${DB_PASSWORD:-dummybot}
|
|
MYSQL_ROOT_PASSWORD: ${DB_ROOT_PASSWORD:-root}
|
|
volumes:
|
|
- dbdata:/var/lib/mysql
|
|
networks:
|
|
- laravel
|
|
|
|
# ─────────────────────────────────────────────────────────────
|
|
# Túnel socat para exponer el backend en :18080 sin TLS.
|
|
# Útil mientras el proxy-manager no tiene host para dummybot.
|
|
# Si ya tienes HTTPS, este contenedor es opcional.
|
|
# ─────────────────────────────────────────────────────────────
|
|
expose:
|
|
image: alpine/socat
|
|
container_name: dummybot_expose
|
|
restart: unless-stopped
|
|
ports:
|
|
- "18080:80"
|
|
command: TCP-LISTEN:80,fork,reuseaddr TCP:dummybot_web:80
|
|
networks:
|
|
- proxy
|
|
depends_on:
|
|
- webserver
|
|
|
|
volumes:
|
|
dbdata:
|
|
|
|
networks:
|
|
laravel:
|
|
proxy:
|
|
external: true |