mirror of
https://github.com/LukeHagar/website.git
synced 2025-12-06 04:22:07 +00:00
chore: update dockerfile
This commit is contained in:
@@ -1,5 +1,3 @@
|
||||
node_modules
|
||||
.git
|
||||
.gitignore
|
||||
*.md
|
||||
dist
|
||||
23
Dockerfile
23
Dockerfile
@@ -3,28 +3,13 @@ FROM node:20-slim AS build
|
||||
ENV PNPM_HOME="/pnpm"
|
||||
ENV PATH="$PNPM_HOME:$PATH"
|
||||
|
||||
RUN corepack enable
|
||||
COPY . /app
|
||||
|
||||
WORKDIR /app
|
||||
COPY . .
|
||||
|
||||
# RUN --mount=type=cache,id=pnpm,target=/pnpm/store pnpm install --prod --frozen-lockfile
|
||||
# RUN pnpm run build
|
||||
|
||||
FROM base AS prod-deps
|
||||
RUN corepack enable
|
||||
RUN --mount=type=cache,id=pnpm,target=/pnpm/store pnpm install --prod --frozen-lockfile
|
||||
|
||||
FROM base AS build
|
||||
RUN --mount=type=cache,id=pnpm,target=/pnpm/store pnpm install --frozen-lockfile
|
||||
RUN pnpm run build
|
||||
|
||||
FROM base
|
||||
COPY --from=prod-deps /app/node_modules /app/node_modules
|
||||
COPY --from=build /app/dist /app/dist
|
||||
EXPOSE 3000
|
||||
|
||||
# FROM caddy:alpine as serve
|
||||
# COPY --from=build /app/dist /app/dist
|
||||
|
||||
# EXPOSE 80
|
||||
|
||||
# CMD [ "caddy", "file-server", "--root /app/dist"]
|
||||
CMD [ "node", "build/index.js"]
|
||||
@@ -14,7 +14,7 @@ services:
|
||||
- --entrypoints.websecure.address=:443
|
||||
- --entrypoints.web.http.redirections.entrypoint.to=websecure
|
||||
- --entrypoints.web.http.redirections.entrypoint.scheme=https
|
||||
- --providers.docker.constraints=Label(`traefik.constraint-label-stack`,`appwrite`)
|
||||
- --providers.docker.constraints=Label(`traefik.constraint-label-stack`,`homepage`)
|
||||
- --certificatesresolvers.myresolver.acme.httpchallenge=true
|
||||
- --certificatesresolvers.myresolver.acme.httpchallenge.entrypoint=web
|
||||
- --certificatesresolvers.myresolver.acme.email=$_APP_SYSTEM_SECURITY_EMAIL_ADDRESS
|
||||
@@ -29,7 +29,7 @@ services:
|
||||
networks:
|
||||
- homepage
|
||||
|
||||
appwrite:
|
||||
homepage:
|
||||
image: homepage-dev
|
||||
build:
|
||||
context: .
|
||||
@@ -37,18 +37,18 @@ services:
|
||||
- homepage
|
||||
labels:
|
||||
- traefik.enable=true
|
||||
- traefik.constraint-label-stack=appwrite
|
||||
- traefik.http.services.appwrite_api.loadbalancer.server.port=80
|
||||
- traefik.constraint-label-stack=homepage
|
||||
- traefik.http.services.homepage.loadbalancer.server.port=3000
|
||||
#http
|
||||
- traefik.http.routers.appwrite.entrypoints=web
|
||||
- traefik.http.routers.appwrite.rule=Host(`$_APP_DOMAIN`) || Host(`www.$_APP_DOMAIN`)
|
||||
- traefik.http.routers.appwrite.service=appwrite_api
|
||||
- traefik.http.routers.homepage.entrypoints=web
|
||||
- traefik.http.routers.homepage.rule=Host(`$_APP_DOMAIN`) || Host(`www.$_APP_DOMAIN`)
|
||||
- traefik.http.routers.homepage.service=homepage
|
||||
# https
|
||||
- traefik.http.routers.appwrite_secure.entrypoints=websecure
|
||||
- traefik.http.routers.appwrite_secure.rule=Host(`$_APP_DOMAIN`) || Host(`www.$_APP_DOMAIN`)
|
||||
- traefik.http.routers.appwrite_secure.service=appwrite_api
|
||||
- traefik.http.routers.appwrite_secure.tls=true
|
||||
- traefik.http.routers.appwrite_secure.tls.certresolver=myresolver
|
||||
- traefik.http.routers.homepage_secure.entrypoints=websecure
|
||||
- traefik.http.routers.homepage_secure.rule=Host(`$_APP_DOMAIN`) || Host(`www.$_APP_DOMAIN`)
|
||||
- traefik.http.routers.homepage_secure.service=homepage
|
||||
- traefik.http.routers.homepage_secure.tls=true
|
||||
- traefik.http.routers.homepage_secure.tls.certresolver=myresolver
|
||||
|
||||
networks:
|
||||
homepage:
|
||||
Reference in New Issue
Block a user