28 lines
		
	
	
		
			694 B
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
			
		
		
	
	
			28 lines
		
	
	
		
			694 B
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
FROM python:3.11-slim
 | 
						|
 | 
						|
ARG WITH_PLAYWRIGHT=0
 | 
						|
 | 
						|
WORKDIR /app
 | 
						|
 | 
						|
# git + CA, and tools used by playwright bootstrap when enabled
 | 
						|
RUN apt-get update && \
 | 
						|
    apt-get install -y --no-install-recommends git ca-certificates curl && \
 | 
						|
    rm -rf /var/lib/apt/lists/*
 | 
						|
 | 
						|
# Faster, cleaner pip
 | 
						|
RUN pip install --no-cache-dir pip setuptools wheel
 | 
						|
 | 
						|
# Optional Playwright (driven by build-arg)
 | 
						|
ARG WITH_PLAYWRIGHT=0
 | 
						|
RUN if [ "$WITH_PLAYWRIGHT" = "1" ]; then \
 | 
						|
      pip install --no-cache-dir playwright==1.45.0 && \
 | 
						|
      python -m playwright install --with-deps chromium ; \
 | 
						|
    fi
 | 
						|
 | 
						|
# Wrapper entrypoint
 | 
						|
COPY start.sh /start.sh
 | 
						|
COPY wrapper.py /app/wrapper.py
 | 
						|
RUN chmod +x /start.sh
 | 
						|
 | 
						|
ENTRYPOINT ["/start.sh"]
 |