Closed7

fly.ioにNestアプリをデプロイしてみる

shuntakashuntaka

https://zenn.dev/shuntaka/scraps/2961292d925bf1

の続き

Herokuは便利だったが、やはりリージョンがusとeuなのは厳しいってことでFly.ioを試すことにした
あとGitHubのフル権限要求してくるのもアレやね。セキュリティ事故あったのに。

要件

  • コンテナはできればSaas側に置きたくない
shuntakashuntaka

FLY_API_TOKENを入れてfly cliでデプロイって感じかなぁ

shuntakashuntaka

work_flow_dispatchで手動実行にした。--local-onlyでpullしてデプロイする形式にしている

name: deploy to Fly.io

on:
  workflow_dispatch:
    inputs:
      tag:
        description: 'container tag'
        required: true

env:
  FLY_API_TOKEN: ${{ secrets.FLY_API_TOKEN }}
  REGISTORY_NAME: ghcr.io/shuntaka9576
  IMAGE_NAME: backend
  CACHE_PATH: /tmp/.buildx-cache-backend

permissions:
  id-token: write
  contents: read
  actions: read
  packages: read

jobs:
  deploy:
    name: Deploy app
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v2
      - uses: superfly/flyctl-actions/setup-flyctl@master
      - name: Login to GitHub Container Registry
        uses: docker/login-action@v2
        with:
          registry: ghcr.io
          username: ${{ github.actor }}
          password: ${{ secrets.GITHUB_TOKEN }}
      - run: |
          docker pull ${{ env.REGISTORY_NAME }}/${{ env.IMAGE_NAME }}:${{ inputs.tag }}
          flyctl deploy --local-only --image ${{ env.REGISTORY_NAME }}/${{ env.IMAGE_NAME }}:${{ inputs.tag }}

このスクラップは2023/02/25にクローズされました