diff --git a/.github/workflows/digitalocean-deploy.yml b/.github/workflows/digitalocean-deploy.yml new file mode 100644 index 00000000..69f819cd --- /dev/null +++ b/.github/workflows/digitalocean-deploy.yml @@ -0,0 +1,21 @@ +name: Deploy Latest Version on DigitalOcean + +on: + workflow_run: + workflows: + - Build and Push Docker Image + types: + - completed + +jobs: + deploy: + runs-on: ubuntu-latest + + steps: + - name: Install DigitalOcean CLI + uses: digitalocean/action-doctl@v2.1.0 + with: + token: ${{ secrets.DIGITALOCEAN_TOKEN }} + + - name: Create Deployment with Latest Version + run: doctl apps create-deployment ${{ secrets.DIGITALOCEAN_APP_ID }} --wait --force-rebuild diff --git a/.github/workflows/docker-build-push.yml b/.github/workflows/docker-build-push.yml index 2409ccbf..4a602a95 100644 --- a/.github/workflows/docker-build-push.yml +++ b/.github/workflows/docker-build-push.yml @@ -3,7 +3,7 @@ name: Build and Push Docker Image on: push: branches: - - 'v3' + - v3 jobs: docker_client: diff --git a/docker-compose.prod.yml b/docker-compose.prod.yml index 66b07cf0..5e7bb25b 100644 --- a/docker-compose.prod.yml +++ b/docker-compose.prod.yml @@ -1,10 +1,22 @@ version: '3' services: + postgres: + image: postgres + container_name: postgres + ports: + - 5432:5432 + env_file: .env + volumes: + - ./scripts/database/initialize.sql:/docker-entrypoint-initdb.d/initialize.sql + - pgdata:/var/lib/postgresql/data + server: image: amruthpillai/reactive-resume:server-latest container_name: server env_file: .env + environment: + - POSTGRES_HOST=postgres ports: - 3100:3100 @@ -16,3 +28,6 @@ services: - 3000:3000 depends_on: - server + +volumes: + pgdata: diff --git a/docker-compose.yml b/docker-compose.yml index 0e2c8e0c..0cf66734 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -11,29 +11,29 @@ services: - ./scripts/database/initialize.sql:/docker-entrypoint-initdb.d/initialize.sql - pgdata:/var/lib/postgresql/data - # server: - # build: - # context: . - # dockerfile: server/Dockerfile - # container_name: server - # env_file: .env - # environment: - # - POSTGRES_HOST=postgres - # ports: - # - 3100:3100 - # depends_on: - # - postgres + server: + build: + context: . + dockerfile: server/Dockerfile + container_name: server + env_file: .env + environment: + - POSTGRES_HOST=postgres + ports: + - 3100:3100 + depends_on: + - postgres - # client: - # build: - # context: . - # dockerfile: client/Dockerfile - # container_name: client - # env_file: .env - # ports: - # - 3000:3000 - # depends_on: - # - server + client: + build: + context: . + dockerfile: client/Dockerfile + container_name: client + env_file: .env + ports: + - 3000:3000 + depends_on: + - server volumes: pgdata: