DockerコンテナでPlaywrightのcodegenを実行する方法
Dockerコンテナ内のプロジェクトにPlaywrightを導入する方法で導入したPlaywrightですが、codegenを実行すると、以下のエラーが発生します。
Missing X server or $DISPLAY
Dockerコンテナ内で起動したGUIのアプリをホストOS側で表示できるようにする必要があります。
Docker コンテナ内のGUIアプリを起動してホスト側に表示するで詳しく説明していますが、この内容と同じ手順で、docker-compose.xmlに以下の設定を追加します。
docker-compose.ymlversion: '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が表示されることを確認できます。