add docker deploy
This commit is contained in:
parent
e45fd58232
commit
aba3763294
|
|
@ -24,3 +24,17 @@ jobs:
|
||||||
timeout 20 npm run start:prod || [ $? -eq 124 ]
|
timeout 20 npm run start:prod || [ $? -eq 124 ]
|
||||||
env:
|
env:
|
||||||
PORT: 4000
|
PORT: 4000
|
||||||
|
|
||||||
|
deploy:
|
||||||
|
needs: build-and-start
|
||||||
|
runs-on: [ubuntu-latest, docker]
|
||||||
|
container:
|
||||||
|
image: docker:24
|
||||||
|
steps:
|
||||||
|
- name: Checkout
|
||||||
|
uses: actions/checkout@v4
|
||||||
|
- name: Deploy with docker-compose
|
||||||
|
run: docker compose -p docker-stack up -d --build backend
|
||||||
|
env:
|
||||||
|
DATABASE_URL: ${{ secrets.DATABASE_URL }}
|
||||||
|
UPLOADS_PATH: ${{ secrets.UPLOADS_PATH }}
|
||||||
|
|
|
||||||
|
|
@ -1,50 +1,18 @@
|
||||||
services:
|
services:
|
||||||
postgres:
|
|
||||||
image: postgres:16-alpine
|
|
||||||
restart: always
|
|
||||||
environment:
|
|
||||||
POSTGRES_DB: travelmarinedb
|
|
||||||
POSTGRES_USER: yacht
|
|
||||||
POSTGRES_PASSWORD: ${POSTGRES_PASSWORD:-change_me}
|
|
||||||
volumes:
|
|
||||||
- pg-data:/var/lib/postgresql/data
|
|
||||||
ports:
|
|
||||||
- '127.0.0.1:5432:5432'
|
|
||||||
|
|
||||||
backend:
|
backend:
|
||||||
build: .
|
build: .
|
||||||
|
restart: always
|
||||||
environment:
|
environment:
|
||||||
NODE_ENV: production
|
NODE_ENV: production
|
||||||
PORT: 4000
|
PORT: 4000
|
||||||
DATABASE_URL: postgresql://yacht:${POSTGRES_PASSWORD:-change_me}@postgres:5432/travelmarinedb
|
DATABASE_URL: ${DATABASE_URL}
|
||||||
UPLOAD_PATH: ./uploads
|
UPLOAD_PATH: /app/uploads
|
||||||
APP_URL: http://localhost:4000
|
APP_URL: ${APP_URL:-https://api.travelmarine.ru}
|
||||||
volumes:
|
volumes:
|
||||||
- ./uploads:/app/uploads
|
- ${UPLOADS_PATH:-./uploads}:/app/uploads
|
||||||
depends_on:
|
networks:
|
||||||
- postgres
|
- app-network
|
||||||
ports:
|
|
||||||
- '127.0.0.1:4000:4000'
|
|
||||||
restart: always
|
|
||||||
|
|
||||||
pgbackup:
|
networks:
|
||||||
image: prodrigestivill/postgres-backup-local:16
|
app-network:
|
||||||
restart: always
|
external: true
|
||||||
depends_on:
|
|
||||||
- postgres
|
|
||||||
environment:
|
|
||||||
POSTGRES_HOST: postgres
|
|
||||||
POSTGRES_DB: yachtbooking
|
|
||||||
POSTGRES_USER: yacht
|
|
||||||
POSTGRES_PASSWORD: ${POSTGRES_PASSWORD:-change_me}
|
|
||||||
SCHEDULE: '0 3 * * *'
|
|
||||||
BACKUP_KEEP_DAYS: 7
|
|
||||||
BACKUP_KEEP_WEEKS: 4
|
|
||||||
BACKUP_KEEP_MONTHS: 3
|
|
||||||
BACKUP_DIR: /backups
|
|
||||||
volumes:
|
|
||||||
- pg-backups:/backups
|
|
||||||
|
|
||||||
volumes:
|
|
||||||
pg-data:
|
|
||||||
pg-backups:
|
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue