This commit is contained in:
@@ -0,0 +1,20 @@
|
|||||||
|
name: Deploy Portfolio
|
||||||
|
on:
|
||||||
|
push:
|
||||||
|
branches: [ "master" ]
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
deploy:
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
container:
|
||||||
|
image: catthehacker/ubuntu:act-latest
|
||||||
|
steps:
|
||||||
|
- name: Checkout
|
||||||
|
uses: actions/checkout@v4
|
||||||
|
|
||||||
|
- name: Build and Deploy
|
||||||
|
run: |
|
||||||
|
docker build -t portfolio:latest .
|
||||||
|
docker stop portfolio 2>/dev/null || true
|
||||||
|
docker rm portfolio 2>/dev/null || true
|
||||||
|
docker run -d --name portfolio -p 8081:80 portfolio:latest
|
||||||
+13
@@ -0,0 +1,13 @@
|
|||||||
|
FROM node:22-alpine AS build
|
||||||
|
WORKDIR /app
|
||||||
|
COPY pnpm-lock.yaml pnpm-workspace.yaml package.json .npmrc ./
|
||||||
|
COPY apps/web/package.json apps/web/
|
||||||
|
RUN npm install -g pnpm && pnpm install --no-frozen-lockfile
|
||||||
|
COPY apps/web/ apps/web/
|
||||||
|
WORKDIR /app/apps/web
|
||||||
|
RUN pnpm run build
|
||||||
|
|
||||||
|
FROM nginx:stable-alpine
|
||||||
|
COPY --from=build /app/apps/web/dist /usr/share/nginx/html
|
||||||
|
EXPOSE 80
|
||||||
|
CMD ["nginx", "-g", "daemon off;"]
|
||||||
Reference in New Issue
Block a user