zukucode
主にWEB関連の情報を技術メモとして発信しています。

DockerコンテナでPlaywrightのcodegenを実行する方法

Dockerコンテナ内のプロジェクトにPlaywrightを導入する方法で導入したPlaywrightですが、codegenを実行すると、以下のエラーが発生します。

Missing X server or $DISPLAY

Dockerコンテナ内で起動したGUIのアプリをホストOS側で表示できるようにする必要があります。

Docker コンテナ内のGUIアプリを起動してホスト側に表示するで詳しく説明していますが、この内容と同じ手順で、docker-compose.xmlに以下の設定を追加します。

docker-compose.yml
version: '3'
services:
  app:
    build: ./docker/app
    environment:
      - DISPLAY=${DISPLAY}
    volumes:
      - /tmp/.X11-unix:/tmp/.X11-unix

これで、ホストOSのディスプレイ情報がDockerコンテナと共通され、Dockerコンテナ内で起動したGUIのアプリをホストOS側で表示できるようになります。

この設定をした状態で、コンテナ内でnpx playwright codegen http://localhost:3000を実行すると、codegenのGUIが表示されることを確認できます。


関連記事