40 lines
		
	
	
	
		
			1.1 KiB
		
	
	
	
		
			Docker
		
	
	
	
	
	
			
		
		
	
	
			40 lines
		
	
	
	
		
			1.1 KiB
		
	
	
	
		
			Docker
		
	
	
	
	
	
| FROM node:14 as deps
 | |
| 
 | |
| WORKDIR /app
 | |
| COPY calendso/apps/web/package.json calendso/yarn.lock ./
 | |
| COPY calendso/apps/web/prisma prisma
 | |
| RUN yarn install --frozen-lockfile
 | |
| 
 | |
| FROM node:14 as builder
 | |
| 
 | |
| WORKDIR /app
 | |
| 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/apps/web .
 | |
| 
 | |
| COPY --from=deps /app/node_modules ./node_modules
 | |
| RUN yarn build && yarn install --production --ignore-scripts --prefer-offline
 | |
| 
 | |
| FROM node:14 as runner
 | |
| WORKDIR /app
 | |
| ENV NODE_ENV production
 | |
| 
 | |
| COPY --from=builder /app/node_modules ./node_modules
 | |
| COPY --from=builder /app/prisma ./prisma
 | |
| COPY --from=builder /app/scripts ./scripts
 | |
| COPY --from=builder /app/next.config.js ./
 | |
| COPY --from=builder /app/next-i18next.config.js ./
 | |
| COPY --from=builder /app/public ./public
 | |
| COPY --from=builder /app/.next ./.next
 | |
| COPY --from=builder /app/package.json ./package.json
 | |
| COPY  scripts scripts
 | |
| 
 | |
| EXPOSE 3000
 | |
| CMD ["/app/scripts/start.sh"]
 | 
