feat: bootstrap temporserv project scaffold

Add the initial project blueprint, Go backend skeleton, frontend app shell, database schema draft, and local development/deployment files.
This commit is contained in:
2026-04-02 22:17:48 +03:00
commit 2b3123a9a7
37 changed files with 4863 additions and 0 deletions

23
deploy/Dockerfile Normal file
View File

@@ -0,0 +1,23 @@
FROM golang:1.25-alpine AS backend-build
WORKDIR /src
COPY go.mod ./
COPY cmd ./cmd
COPY internal ./internal
RUN go build -o /out/temporserv ./cmd/server
FROM node:24-alpine AS web-build
WORKDIR /src
COPY apps/web/package*.json ./apps/web/
RUN cd apps/web && npm install
COPY apps/web ./apps/web
RUN cd apps/web && npm run build
FROM alpine:3.21
WORKDIR /app
RUN adduser -D appuser
COPY --from=backend-build /out/temporserv /app/temporserv
COPY --from=web-build /src/apps/web/dist /app/web
RUN mkdir -p /app/data /music && chown -R appuser:appuser /app /music
USER appuser
EXPOSE 4040
CMD ["/app/temporserv"]