結論
公式ドキュメントは以下。
なぜこれを気にしたのか
monorepo っぽい構成になっているプロダクトにおいて、静的な Webページ のテストを走らせるためにワンライナーの Webサーバ を立ち上げようとしたから。
$ php -S
や $ python -m http.server
が立ち上がらないのはもちろん、$ ruby -run -e httpd
もダメだったので驚いた(cimg/ruby:3.*
のイメージには webrick が入っていないから)。
PHP や Python を入れていると CI に時間がかかりすぎるので、素直に $ gem install webrick
してから Ruby で Webサーバ を起ち上げることで解決…しなかった。
対話シェルでは問題ないが、RSpec 内でシェルコマンドを実行すると立ち上がらないようだ。かなり特殊な状況であることは認識しており、時間も無く、「Ruby で」Webサーバを起ち上げることが目的ではないため詳細は調べていない。
軽量で定番の http-server
(npm) を用いることでで解決した*1。
*1:cimg/ruby のイメージとして "-node" のイメージを用いた上で $ npx http-server で行けるのでまあまあ軽量