Build
All checks were successful
Docker Deploy / build-and-push (push) Successful in 2m29s

This commit is contained in:
Atridad Lahiji 2025-01-26 14:40:30 -06:00
parent 508a42aa3e
commit 75efaf98c0
Signed by: atridad
SSH key fingerprint: SHA256:LGomp8Opq0jz+7kbwNcdfTcuaLRb5Nh0k5AchDDb438
3 changed files with 61 additions and 0 deletions

35
.github/workflows/deploy.yml vendored Normal file
View file

@ -0,0 +1,35 @@
name: Docker Deploy
on:
push:
branches: [main]
pull_request:
branches: [main]
jobs:
build-and-push:
runs-on: ubuntu-latest
permissions:
contents: read
packages: write
steps:
- name: Checkout code
uses: actions/checkout@v3
- name: Set up Docker Buildx
uses: docker/setup-buildx-action@v2
- name: Login to Container Registry
uses: docker/login-action@v2
with:
registry: ${{ secrets.REPO_HOST }}
username: ${{ github.repository_owner }}
password: ${{ secrets.DEPLOY_TOKEN }}
- name: Build and push
uses: docker/build-push-action@v4
with:
context: .
platforms: linux/amd64
push: true
tags: |
${{ secrets.REPO_HOST }}/${{ github.repository_owner }}/${{ github.event.repository.name }}:${{ github.sha }}
${{ secrets.REPO_HOST }}/${{ github.repository_owner }}/${{ github.event.repository.name }}:latest

18
Dockerfile Normal file
View file

@ -0,0 +1,18 @@
FROM node:lts AS runtime
WORKDIR /app
# Copy files
COPY . .
# Install pnpm
RUN npm i -g pnpm
# Install dependencies and build
RUN pnpm install
RUN pnpm run build
ENV HOST=0.0.0.0
ENV PORT=4321
EXPOSE 4321
CMD ["node", "./dist/server/entry.mjs"]

8
docker-compose.yml Normal file
View file

@ -0,0 +1,8 @@
services:
app:
image: ${IMAGE}
ports:
- "${APP_PORT}:4321"
environment:
NODE_ENV: production
restart: unless-stopped