multi-arch x multi-browser
View on Docker Hub: https://hub.docker.com/r/jacoblincool/playwright/
jacoblincool/playwright:base
- Ubuntu Jammy, Node 20, Playwrightjacoblincool/playwright:chromium
- Ubuntu Jammy, Node 20, Playwright, Chromiumjacoblincool/playwright:firefox
- Ubuntu Jammy, Node 20, Playwright, Firefoxjacoblincool/playwright:webkit
- Ubuntu Jammy, Node 20, Playwright, WebKitjacoblincool/playwright:chrome
- Ubuntu Jammy, Node 20, Playwright, Chromejacoblincool/playwright:msedge
- Ubuntu Jammy, Node 20, Playwright, Edgejacoblincool/playwright:all
- Ubuntu Jammy, Node 20, Playwright, All Browsers
jacoblincool/playwright:base-light
- Alpine 3.20, Node 23, Playwrightjacoblincool/playwright:chromium-light
- Alpine 3.20, Node 23, Playwright, Chromium
Those images are running Playwright Server and expose the WebSocket endpoint, see ./server for more details.
jacoblincool/playwright:chromium-server
jacoblincool/playwright:firefox-server
jacoblincool/playwright:webkit-server
jacoblincool/playwright:chrome-server
jacoblincool/playwright:msedge-server
jacoblincool/playwright:chromium-light-server
The default endpoint is ws://localhost:53333/playwright
, you can override it by setting the BROWSER_PORT
and BROWSER_WS_ENDPOINT
environment variables.
They can be run using the following command:
docker run --rm -p 53333:53333 jacoblincool/playwright:chromium-light-server
import { chromium } from "playwright";
const browser = await chromium.connect("ws://localhost:53333/playwright");
In examples replace (BrowserType
method) launch
with connect
import asyncio
import playwright.async_api as playwright
async def main():
async with playwright.async_playwright() as playwright:
browser: playwright.Browser = playwright.chromium.connect("ws://localhost:53333/playwright")
asyncio.run(main())
Browser | ARMv8 (aarch64 ) |
AMD64 (x86_64 ) |
---|---|---|
Chromium | ✅ | ✅ |
Firefox | ✅ | ✅ |
WebKit | ✅ | ✅ |
Chrome | ❌ | ✅ |
Edge | ❌ | ✅ |
Browser | ARMv8 (aarch64 ) |
AMD64 (x86_64 ) |
---|---|---|
Chromium | ✅ | ✅ |