OrbStackのコンテナドメイン公開が便利という話
MacでDockerを動かすのにOrbStackを使っているのだけど、コンテナの中で立ち上げたサーバにhttps+ドメイン名でアクセスできる機能があって、複数のコンテナを立ち上げておいたときのport conflict問題もなくなり、幸せな日々が過ごせるようになりました。
https://docs.orbstack.dev/docker/domains
docker composeを使って立ち上げているコンテナがある場合、
https://サービス名.コンテナ名.orb.local/ でコンテナ内のrails server -p 3000にアクセスできるので、複数のサービスを立ち上げておいてもまったく問題なし。まあ同時に扱うことはあるようでそれほどないのだけど、port3000が他で使われていると言われたときの悲しみがなくなるのと、あと実はもう一点、それぞれにユニークなホスト名がつくので、アカウントの管理を1Passwordに任せられるというメリットもあります。
ただ、OrbStackを使っていない人とコードを共有している場合、compose.ymlに書いたportsセクションは消せないので、ちょっとカッコ悪いけど、.envに
WEB_PORT=60000
とか書いて、compose.ymlのportsセクションに、
ports:
- "${WEB_PORT:-3000}:3000"
とか書いておけばケンカせずに済みます。結局ホスト側のポート番号を気にすることにはなっちゃうけどまあやむを得ないところです。
この記事が気に入ったらサポートをしてみませんか?