以下を参考に、WAS Libertyコンテナを動かすと、 wlp/bin/server run コマンドでWASが起動されるのでデバッグ実行できない。
https://hub.docker.com/_/websphere-liberty/
最初、dockerはコンテナ作成時に、コンテナ起動時に実行するコマンド(DockerfileのCMDで指定されているコマンド)を上書き出来る ので、以下のようにしてwlp/bin/server debugに上書きすればうまくいくのではと思ったがだめだった。
docker run -it -d -p 9080:9080 -p 9443:9443 -p 7777:7777 -p 9060:9060 websphere-liberty /opt/ibm/wlp/bin/server debug
最初にrunした時は問題無いが、一度stopした後startした場合、WASが7777ポートは掴んでいるがアプリサーバとしては動いていないという謎の状態になってしまう。 結局、以下のように起動時にはシェルだけ動かすようにして、その後ログインしてWASを起動するようにした。
docker run -it -d -p 9080:9080 -p 9443:9443 -p 7777:7777 -p 9060:9060 websphere-liberty /bin/bash docker exec -it <container name> bash /opt/ibm/wlp/bin/server debug