26 lines
		
	
	
		
			648 B
		
	
	
	
		
			Docker
		
	
	
	
	
	
		
		
			
		
	
	
			26 lines
		
	
	
		
			648 B
		
	
	
	
		
			Docker
		
	
	
	
	
	
| 
								 | 
							
								FROM node:14-buster AS build
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								# Set working directory and node user
							 | 
						||
| 
								 | 
							
								WORKDIR /home/node/lowdefy
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								RUN chown node:node /home/node/lowdefy
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								USER node
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								# Copy app config and change ownership of files to "node" user
							 | 
						||
| 
								 | 
							
								COPY  --chown=node:node  . .
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								# Build the Lowdefy config using the Lowdefy CLI
							 | 
						||
| 
								 | 
							
								RUN npx lowdefy@3.23.2 build
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								# Use the correct Lowdefy base image
							 | 
						||
| 
								 | 
							
								FROM lowdefy/lowdefy:3.23.2
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								# Copy build output from build stage
							 | 
						||
| 
								 | 
							
								COPY --from=build --chown=node:node /home/node/lowdefy/.lowdefy/build ./build
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								# Copy contents of public directory into image
							 | 
						||
| 
								 | 
							
								COPY --chown=node:node ./public ./public
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								# Run the server on start
							 | 
						||
| 
								 | 
							
								CMD ["node", "./dist/server.js"]
							 |