chore: update dockerfile

This commit is contained in:
Christy Jacob
2023-09-26 18:52:36 +00:00
parent d2e3df9fde
commit 6244bb210f
3 changed files with 17 additions and 34 deletions

View File

@@ -1,5 +1,3 @@
node_modules
.git .git
.gitignore .gitignore
*.md *.md
dist

View File

@@ -3,28 +3,13 @@ FROM node:20-slim AS build
ENV PNPM_HOME="/pnpm" ENV PNPM_HOME="/pnpm"
ENV PATH="$PNPM_HOME:$PATH" ENV PATH="$PNPM_HOME:$PATH"
RUN corepack enable
COPY . /app
WORKDIR /app WORKDIR /app
COPY . .
# RUN --mount=type=cache,id=pnpm,target=/pnpm/store pnpm install --prod --frozen-lockfile RUN corepack enable
# RUN pnpm run build
FROM base AS prod-deps
RUN --mount=type=cache,id=pnpm,target=/pnpm/store pnpm install --prod --frozen-lockfile 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 RUN pnpm run build
FROM base EXPOSE 3000
COPY --from=prod-deps /app/node_modules /app/node_modules
COPY --from=build /app/dist /app/dist
# FROM caddy:alpine as serve CMD [ "node", "build/index.js"]
# COPY --from=build /app/dist /app/dist
# EXPOSE 80
# CMD [ "caddy", "file-server", "--root /app/dist"]

View File

@@ -14,7 +14,7 @@ services:
- --entrypoints.websecure.address=:443 - --entrypoints.websecure.address=:443
- --entrypoints.web.http.redirections.entrypoint.to=websecure - --entrypoints.web.http.redirections.entrypoint.to=websecure
- --entrypoints.web.http.redirections.entrypoint.scheme=https - --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=true
- --certificatesresolvers.myresolver.acme.httpchallenge.entrypoint=web - --certificatesresolvers.myresolver.acme.httpchallenge.entrypoint=web
- --certificatesresolvers.myresolver.acme.email=$_APP_SYSTEM_SECURITY_EMAIL_ADDRESS - --certificatesresolvers.myresolver.acme.email=$_APP_SYSTEM_SECURITY_EMAIL_ADDRESS
@@ -29,7 +29,7 @@ services:
networks: networks:
- homepage - homepage
appwrite: homepage:
image: homepage-dev image: homepage-dev
build: build:
context: . context: .
@@ -37,18 +37,18 @@ services:
- homepage - homepage
labels: labels:
- traefik.enable=true - traefik.enable=true
- traefik.constraint-label-stack=appwrite - traefik.constraint-label-stack=homepage
- traefik.http.services.appwrite_api.loadbalancer.server.port=80 - traefik.http.services.homepage.loadbalancer.server.port=3000
#http #http
- traefik.http.routers.appwrite.entrypoints=web - traefik.http.routers.homepage.entrypoints=web
- traefik.http.routers.appwrite.rule=Host(`$_APP_DOMAIN`) || Host(`www.$_APP_DOMAIN`) - traefik.http.routers.homepage.rule=Host(`$_APP_DOMAIN`) || Host(`www.$_APP_DOMAIN`)
- traefik.http.routers.appwrite.service=appwrite_api - traefik.http.routers.homepage.service=homepage
# https # https
- traefik.http.routers.appwrite_secure.entrypoints=websecure - traefik.http.routers.homepage_secure.entrypoints=websecure
- traefik.http.routers.appwrite_secure.rule=Host(`$_APP_DOMAIN`) || Host(`www.$_APP_DOMAIN`) - traefik.http.routers.homepage_secure.rule=Host(`$_APP_DOMAIN`) || Host(`www.$_APP_DOMAIN`)
- traefik.http.routers.appwrite_secure.service=appwrite_api - traefik.http.routers.homepage_secure.service=homepage
- traefik.http.routers.appwrite_secure.tls=true - traefik.http.routers.homepage_secure.tls=true
- traefik.http.routers.appwrite_secure.tls.certresolver=myresolver - traefik.http.routers.homepage_secure.tls.certresolver=myresolver
networks: networks:
homepage: homepage: