dockerize

This commit is contained in:
u80864958
2025-05-05 10:37:09 +02:00
parent 73a62b63ae
commit 9106dcd7be
4 changed files with 57 additions and 13 deletions

43
Dockerfile Normal file
View File

@ -0,0 +1,43 @@
FROM node:22-alpine AS build-frontend
WORKDIR /app
COPY web/package*.json ./
RUN npm install
RUN npm install -g @angular/cli
COPY web .
RUN ng build --configuration=production
RUN ls -R dist
FROM golang:1.24-alpine AS build-backend
RUN apk add --no-cache --update gcc g++
WORKDIR /usr/src/app
COPY go.mod go.mod
COPY go.sum go.sum
RUN go mod download
COPY . .
ENV CGO_ENABLED=1
COPY --from=build-frontend app/dist/frontend/browser /web/app/dist/frontend/browser
RUN go build -o=ng-blog cmd/main.go
FROM alpine:latest
WORKDIR /
COPY --from=build-backend /usr/src/app/ng-blog /ng-blog
EXPOSE 8080
ENTRYPOINT ["/ng-blog", "serve"]

BIN
backend

Binary file not shown.

View File

@ -16,9 +16,7 @@
"outputPath": "dist/frontend",
"index": "src/index.html",
"browser": "src/main.ts",
"polyfills": [
"zone.js"
],
"polyfills": ["zone.js"],
"tsConfig": "tsconfig.app.json",
"assets": [
{
@ -26,9 +24,7 @@
"input": "public"
}
],
"styles": [
"src/styles.css"
],
"styles": ["src/styles.css"],
"scripts": []
},
"configurations": {
@ -45,6 +41,12 @@
"maximumError": "8kB"
}
],
"fileReplacements": [
{
"replace": "src/environments/environment.ts",
"with": "src/environments/environment.production.ts"
}
],
"outputHashing": "all"
},
"development": {
@ -73,10 +75,7 @@
"test": {
"builder": "@angular-devkit/build-angular:karma",
"options": {
"polyfills": [
"zone.js",
"zone.js/testing"
],
"polyfills": ["zone.js", "zone.js/testing"],
"tsConfig": "tsconfig.spec.json",
"assets": [
{
@ -84,9 +83,7 @@
"input": "public"
}
],
"styles": [
"src/styles.css"
],
"styles": ["src/styles.css"],
"scripts": []
}
}

View File

@ -0,0 +1,4 @@
export const environment = {
production: true,
apiRoot: '/api',
};