28 lines
		
	
	
		
			567 B
		
	
	
	
		
			Docker
		
	
	
	
	
	
			
		
		
	
	
			28 lines
		
	
	
		
			567 B
		
	
	
	
		
			Docker
		
	
	
	
	
	
# Use an official Node.js runtime as a base
 | 
						|
FROM node:20-alpine
 | 
						|
 | 
						|
# Create app directory
 | 
						|
WORKDIR /app
 | 
						|
 | 
						|
RUN apk add python3 py3-pip
 | 
						|
 | 
						|
# Copy package.json and install dependencies
 | 
						|
COPY package*.json ./
 | 
						|
RUN npm install --omit=dev
 | 
						|
 | 
						|
# Copy requirements.txt and install dependencies
 | 
						|
COPY requirements.txt ./
 | 
						|
RUN pip3 install --no-cache-dir --break-system-packages -r requirements.txt
 | 
						|
 | 
						|
# Copy the rest of the app
 | 
						|
COPY . .
 | 
						|
 | 
						|
# Make the script executable
 | 
						|
RUN chmod +x cli.js
 | 
						|
RUN chmod +x watcher.py
 | 
						|
 | 
						|
# Make ephemeral cache directory
 | 
						|
RUN mkdir ./cache
 | 
						|
 | 
						|
ENTRYPOINT /app/watcher.py
 |