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が表示されることを確認できます。