Compare commits
4 Commits
8bc6658e57
...
main
| Author | SHA1 | Date | |
|---|---|---|---|
| d8d8154fda | |||
| 02ca6a3072 | |||
| 00ed4b0d1f | |||
| e35c52b97b |
@ -19,4 +19,4 @@ jobs:
|
||||
uses: dokku/github-action@master
|
||||
with:
|
||||
git_remote_url: 'ssh://dokku@192.168.1.2:22/$REPO_NAME'
|
||||
ssh_private_key: ${{ secrets.DOKKU_DEPLOY_KEY }}
|
||||
ssh_private_key: $${{ secrets.DOKKU_DEPLOY_KEY }}
|
||||
28
Dockerfile
28
Dockerfile
@ -1,19 +1,13 @@
|
||||
# Use official Node.js image
|
||||
FROM node:24
|
||||
|
||||
LABEL authors="Ari Yeger"
|
||||
### Client Stage
|
||||
|
||||
# Set working directory
|
||||
WORKDIR /app
|
||||
|
||||
# create client directory
|
||||
RUN mkdir client
|
||||
FROM node:24 AS client-build
|
||||
# Set the working directory for the client
|
||||
WORKDIR /app/client
|
||||
|
||||
# Copy package files and install dependencies
|
||||
COPY /client/package*.json ./
|
||||
RUN npm install
|
||||
RUN npm ci
|
||||
|
||||
# Copy server source code
|
||||
COPY /client .
|
||||
@ -22,13 +16,7 @@ COPY /client .
|
||||
RUN npm run build
|
||||
|
||||
### Server Stage
|
||||
|
||||
# Set working directory
|
||||
WORKDIR /app
|
||||
|
||||
# create server directory
|
||||
RUN mkdir server
|
||||
|
||||
FROM node:24 AS server-build
|
||||
# Set the working directory for the server
|
||||
WORKDIR /app/server
|
||||
|
||||
@ -42,7 +30,13 @@ COPY /server .
|
||||
# no build step for server, its already JavaScript
|
||||
|
||||
# Production stage
|
||||
FROM node:24-slim
|
||||
FROM node:24-slim AS production
|
||||
WORKDIR /app
|
||||
# Copy built client files from client-build stage
|
||||
COPY --from=client-build /app/client/dist ./client/dist
|
||||
# Copy server files from server-build stage
|
||||
COPY --from=server-build /app/server ./server
|
||||
WORKDIR /app/server
|
||||
# Expose the port your server runs on (change if needed)
|
||||
EXPOSE 8000
|
||||
|
||||
|
||||
@ -4,7 +4,7 @@
|
||||
<meta charset="UTF-8" />
|
||||
<link rel="icon" type="image/png" href="/src/assets/img/L10n.png" />
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
||||
<title>$REPO_NAME</title>
|
||||
<title>$REPO_NAME_TITLE</title>
|
||||
</head>
|
||||
<body>
|
||||
<div id="app"></div>
|
||||
|
||||
37
client/package-lock.json
generated
37
client/package-lock.json
generated
@ -16,6 +16,7 @@
|
||||
"devDependencies": {
|
||||
"@types/node": "^24.0.10",
|
||||
"@vitejs/plugin-vue": "^6.0.0",
|
||||
"@volar/typescript": "2.4.23",
|
||||
"@vue/tsconfig": "^0.7.0",
|
||||
"bootstrap": "^5.3.3",
|
||||
"npm-run-all2": "^7.0.2",
|
||||
@ -1162,6 +1163,35 @@
|
||||
"vue": "^3.2.25"
|
||||
}
|
||||
},
|
||||
"node_modules/@volar/language-core": {
|
||||
"version": "2.4.23",
|
||||
"resolved": "https://registry.npmjs.org/@volar/language-core/-/language-core-2.4.23.tgz",
|
||||
"integrity": "sha512-hEEd5ET/oSmBC6pi1j6NaNYRWoAiDhINbT8rmwtINugR39loROSlufGdYMF9TaKGfz+ViGs1Idi3mAhnuPcoGQ==",
|
||||
"dev": true,
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"@volar/source-map": "2.4.23"
|
||||
}
|
||||
},
|
||||
"node_modules/@volar/source-map": {
|
||||
"version": "2.4.23",
|
||||
"resolved": "https://registry.npmjs.org/@volar/source-map/-/source-map-2.4.23.tgz",
|
||||
"integrity": "sha512-Z1Uc8IB57Lm6k7q6KIDu/p+JWtf3xsXJqAX/5r18hYOTpJyBn0KXUR8oTJ4WFYOcDzWC9n3IflGgHowx6U6z9Q==",
|
||||
"dev": true,
|
||||
"license": "MIT"
|
||||
},
|
||||
"node_modules/@volar/typescript": {
|
||||
"version": "2.4.23",
|
||||
"resolved": "https://registry.npmjs.org/@volar/typescript/-/typescript-2.4.23.tgz",
|
||||
"integrity": "sha512-lAB5zJghWxVPqfcStmAP1ZqQacMpe90UrP5RJ3arDyrhy4aCUQqmxPPLB2PWDKugvylmO41ljK7vZ+t6INMTag==",
|
||||
"dev": true,
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"@volar/language-core": "2.4.23",
|
||||
"path-browserify": "^1.0.1",
|
||||
"vscode-uri": "^3.0.8"
|
||||
}
|
||||
},
|
||||
"node_modules/@vue/compiler-core": {
|
||||
"version": "3.5.17",
|
||||
"resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.5.17.tgz",
|
||||
@ -2131,6 +2161,13 @@
|
||||
}
|
||||
}
|
||||
},
|
||||
"node_modules/vscode-uri": {
|
||||
"version": "3.1.0",
|
||||
"resolved": "https://registry.npmjs.org/vscode-uri/-/vscode-uri-3.1.0.tgz",
|
||||
"integrity": "sha512-/BpdSx+yCQGnCvecbyXdxHDkuk55/G3xwnC0GqY4gmQ3j+A+g8kzzgB4Nk/SINjqn6+waqw3EgbVF2QKExkRxQ==",
|
||||
"dev": true,
|
||||
"license": "MIT"
|
||||
},
|
||||
"node_modules/vue": {
|
||||
"version": "3.5.17",
|
||||
"resolved": "https://registry.npmjs.org/vue/-/vue-3.5.17.tgz",
|
||||
|
||||
@ -25,6 +25,7 @@
|
||||
"@types/node": "^24.0.10",
|
||||
"@vitejs/plugin-vue": "^6.0.0",
|
||||
"@vue/tsconfig": "^0.7.0",
|
||||
"@volar/typescript": "2.4.23",
|
||||
"bootstrap": "^5.3.3",
|
||||
"npm-run-all2": "^7.0.2",
|
||||
"sass": "^1.89.2",
|
||||
|
||||
Reference in New Issue
Block a user