mirror of
				https://github.com/microsoft/playwright.git
				synced 2025-06-26 21:40:17 +00:00 
			
		
		
		
	
		
			
				
	
	
		
			44 lines
		
	
	
		
			1.5 KiB
		
	
	
	
		
			Docker
		
	
	
	
	
	
			
		
		
	
	
			44 lines
		
	
	
		
			1.5 KiB
		
	
	
	
		
			Docker
		
	
	
	
	
	
| FROM ubuntu:bionic
 | |
| 
 | |
| ARG DEBIAN_FRONTEND=noninteractive
 | |
| ARG TZ=America/Los_Angeles
 | |
| ARG DOCKER_IMAGE_NAME_TEMPLATE="mcr.microsoft.com/playwright:v%version%-bionic"
 | |
| 
 | |
| # === INSTALL Node.js ===
 | |
| 
 | |
| RUN apt-get update && \
 | |
|     # Install node16
 | |
|     apt-get install -y curl wget gpg && \
 | |
|     curl -sL https://deb.nodesource.com/setup_16.x | bash - && \
 | |
|     apt-get install -y nodejs && \
 | |
|     # Feature-parity with node.js base images.
 | |
|     apt-get install -y --no-install-recommends git openssh-client && \
 | |
|     npm install -g yarn && \
 | |
|     # clean apt cache
 | |
|     rm -rf /var/lib/apt/lists/* && \
 | |
|     # Create the pwuser (we internally create a symlink for the pwuser and the root user)
 | |
|     adduser pwuser
 | |
| 
 | |
| # === BAKE BROWSERS INTO IMAGE ===
 | |
| 
 | |
| ENV PLAYWRIGHT_BROWSERS_PATH=/ms-playwright
 | |
| 
 | |
| # 1. Add tip-of-tree Playwright package to install its browsers.
 | |
| #    The package should be built beforehand from tip-of-tree Playwright.
 | |
| COPY ./playwright-core.tar.gz /tmp/playwright-core.tar.gz
 | |
| 
 | |
| # 2. Bake in browsers & deps.
 | |
| #    Browsers will be downloaded in `/ms-playwright`.
 | |
| #    Note: make sure to set 777 to the registry so that any user can access
 | |
| #    registry.
 | |
| RUN mkdir /ms-playwright && \
 | |
|     mkdir /ms-playwright-agent && \
 | |
|     cd /ms-playwright-agent && npm init -y && \
 | |
|     npm i /tmp/playwright-core.tar.gz && \
 | |
|     npx playwright mark-docker-image "${DOCKER_IMAGE_NAME_TEMPLATE}" && \
 | |
|     npx playwright install --with-deps && rm -rf /var/lib/apt/lists/* && \
 | |
|     rm /tmp/playwright-core.tar.gz && \
 | |
|     rm -rf /ms-playwright-agent && \
 | |
|     chmod -R 777 /ms-playwright
 | |
| 
 | 
