container_nameの使い道がよくわからん
Docker Composeのcontainer_nameの使い道がよくわからん
hostname:
意味合いとしてはhostname(1)に同じ。
大抵設定する意味はない。
container_name:
実際のコンテナが稼働する時のコンテナ名を設定する。
c.f. デフォルトのコンテナ命名規則
<docker_compose_folder>_<service_name>_<incrementing_number_of_containers_with_same_name>
sorting_app_1
services:ブロック以下のサービス名と違う名前が割り当てられていた場合、hostname:とservices:のどちらもコンテナ間の通信のためのDNS名として利用できる。
Composeとして開始したサービスで動くコンテナをDockerで管理したいという需要がない限り、設定する意味はあまりない。
というか開発段階で設定するのはむしろ有害そう
Dockerのcompose.yamlにcontainer_nameを指定しないで欲しい。
レビュー用の環境を別途作りたいのにコンテナ名がバッティングしちゃうのよ。
指定しなかったらディレクトリ名からコンテナ名自動生成されるんだからさ〜
https://x.com/ucan_lab/status/1779135447228428470
参考
docker-compose.yml container_name and hostname