diff --git a/Dockerfile b/Dockerfile index 1bef144..bec3fc8 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,51 +1,28 @@ -FROM node:14 as deps - -WORKDIR /calcom -COPY calendso/package.json calendso/yarn.lock ./ -COPY calendso/apps/web/package.json calendso/apps/web/yarn.lock ./apps/web/ -COPY calendso/packages/prisma/package.json ./packages/prisma/package.json -COPY calendso/packages/lib/package.json ./packages/lib/package.json -COPY calendso/packages/tsconfig/package.json ./packages/tsconfig/package.json -# RUN yarn install --frozen-lockfile -RUN yarn install - FROM node:14 as builder -WORKDIR /calcom ARG BASE_URL ARG NEXT_PUBLIC_APP_URL ARG NEXT_PUBLIC_LICENSE_CONSENT ARG NEXT_PUBLIC_TELEMETRY_KEY -ENV BASE_URL=$BASE_URL \ - NEXT_PUBLIC_APP_URL=$NEXT_PUBLIC_APP_URL \ - NEXT_PUBLIC_LICENSE_CONSENT=$NEXT_PUBLIC_LICENSE_CONSENT \ - NEXT_PUBLIC_TELEMETRY_KEY=$NEXT_PUBLIC_TELEMETRY_KEY -COPY calendso/package.json calendso/yarn.lock calendso/turbo.json ./ -COPY calendso/apps/web ./apps/web -COPY calendso/packages ./packages -COPY --from=deps /calcom/node_modules ./node_modules -RUN yarn build && yarn install --production --ignore-scripts --prefer-offline - -FROM node:14 as runner -WORKDIR /calcom -ENV NODE_ENV production RUN apt-get update && \ apt-get -y install netcat && \ rm -rf /var/lib/apt/lists/* && \ npm install --global prisma -COPY calendso/package.json calendso/yarn.lock calendso/turbo.json ./ -COPY --from=builder /calcom/node_modules ./node_modules -COPY --from=builder /calcom/packages ./packages -COPY --from=builder /calcom/apps/web/node_modules ./apps/web/node_modules -COPY --from=builder /calcom/apps/web/scripts ./apps/web/scripts -COPY --from=builder /calcom/apps/web/next.config.js ./apps/web/next.config.js -COPY --from=builder /calcom/apps/web/next-i18next.config.js ./apps/web/next-i18next.config.js -COPY --from=builder /calcom/apps/web/public ./apps/web/public -COPY --from=builder /calcom/apps/web/.next ./apps/web/.next -COPY --from=builder /calcom/apps/web/package.json ./apps/web/package.json -COPY scripts scripts +COPY calcom /calcom +WORKDIR calcom +RUN yarn install --frozen-lockfile +WORKDIR /calcom/apps/web + +ENV BASE_URL=$BASE_URL \ + NEXT_PUBLIC_APP_URL=$NEXT_PUBLIC_APP_URL \ + NEXT_PUBLIC_LICENSE_CONSENT=$NEXT_PUBLIC_LICENSE_CONSENT \ + NEXT_PUBLIC_TELEMETRY_KEY=$NEXT_PUBLIC_TELEMETRY_KEY + +COPY .env .env + +RUN yarn build EXPOSE 3000 -CMD ["/calcom/scripts/start.sh"] +ENTRYPOINT ["scripts/start.sh"]