Create deployment details
All checks were successful
Build and Push Docker Image / build (push) Successful in 1m19s

This commit is contained in:
Mathias Wagner 2025-02-16 18:34:44 +01:00
parent 36f1d03a53
commit e575e0f5cd
Signed by: Mathias
GPG Key ID: B8DC354B0A1F5B44
2 changed files with 66 additions and 0 deletions

View File

@ -0,0 +1,34 @@
name: Build and Push Docker Image
on:
push:
branches:
- main
jobs:
build:
runs-on: ubuntu-latest
steps:
- name: Checkout repository
uses: actions/checkout@v2
- name: Set up Docker Buildx
uses: docker/setup-buildx-action@v1
- name: Log in to Docker Hub
uses: docker/login-action@v1
with:
registry: git.gnm.dev
username: ${{ github.actor }}
password: ${{ secrets.GT_TOKEN }}
- name: Build and push Docker image
uses: docker/build-push-action@v2
with:
context: .
push: true
tags: git.gnm.dev/planspiele/landing-page:latest
- name: Image digest
run: echo ${{ steps.docker_build.outputs.digest }}

32
Dockerfile Normal file
View File

@ -0,0 +1,32 @@
# Stage 1: Build the Vite app
FROM node:20 AS build
# Install pnpm
RUN npm install -g pnpm
# Set working directory
WORKDIR /app
# Copy package.json and pnpm-lock.yaml
COPY package.json pnpm-lock.yaml ./
# Install dependencies
RUN pnpm install
# Copy the rest of the application code
COPY . .
# Build the application
RUN pnpm run build
# Stage 2: Serve the app with Nginx
FROM nginx:alpine
# Copy the build output to Nginx's html directory
COPY --from=build /app/dist /usr/share/nginx/html
# Expose port 80
EXPOSE 80
# Start Nginx server
CMD ["nginx", "-g", "daemon off;"]