diff --git a/.github/workflows/docker-build.yml b/.github/workflows/docker-build.yml index a5b9af4..1ba8d40 100644 --- a/.github/workflows/docker-build.yml +++ b/.github/workflows/docker-build.yml @@ -5,19 +5,26 @@ on: branches: [ "master" ] jobs: - build: + build-and-push: runs-on: ubuntu-latest - steps: - name: Checkout code uses: actions/checkout@v4 + - name: Setup Node.js + uses: actions/setup-node@v4 + with: + node-version: 'lts/*' + cache: 'npm' + + - name: Install and Build + run: | + npm ci + npm run build + - name: Set up Docker Buildx uses: docker/setup-buildx-action@v3 - with: - driver-opts: network=host - buildkitd-flags: '--allow-insecure-entitlement network.host' - + - name: Login to Private Registry uses: docker/login-action@v3 with: @@ -30,8 +37,6 @@ jobs: with: context: . push: true - network: host - allow: network.host tags: | docker.illegalesachen.download/repository/astro-homepage:latest docker.illegalesachen.download/repository/astro-homepage:${{ github.sha }} diff --git a/Dockerfile b/Dockerfile index e51651a..89d824b 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,18 +1,10 @@ -FROM node:lts-alpine AS builder -WORKDIR /app - -COPY package*.json ./ -RUN npm ci - -COPY . . -RUN npm run build - FROM nginx:stable-alpine RUN rm -rf /usr/share/nginx/html/* -COPY --from=builder /app/dist /usr/share/nginx/html +COPY ./dist /usr/share/nginx/html +# If you have a custom nginx config for Astro (SPAs/Routing), uncomment this: # COPY nginx.conf /etc/nginx/conf.d/default.conf EXPOSE 80