Compose
Docker Compose の仕様を共通化したもの
Compose File リファレンス
v1, v2 では docker-compose.yml など
Dockerのオプションを概ね設定できる
複数OCIコンテナをいい感じで連携しながらbuild、分離された仮想ネットワークで実行できる環境 Docker の v1, v2系と共通化された仕様とで3種類くらいある
Docker Compose/Swarm
などで利用できるはず
Docker ComposeやPodman Compose の実行ファイルを /usr/local/bin/docker-compose に配置すれば Podman の拡張として使える
version: なくていい
services: サービスの一覧 コンテナのリスト
volumes: マウントするボリュームの一覧
configs:
secrets:
networks: ネットワークのカスタム
などが書けるのでDocker単体よりはComposeにまとめて使いたい
services の下にコンテナ
コンテナ名:
build: Dockerfile のあるフォルダなどを指定する Dockerfileとフォルダを別々に指定することもできる
image: レジストリにあるイメージ名を指定する build がある場合は生成するimage名
tty: true -t っぽい
stdin_open: -i っぽい
volumes: マウントする一覧 大枠のvolumes で指定したものか外側のフォルダ、ファイルなど
ports: 公開するport 外側:内側 /udp など
network: 所属するネットワーク
links: 名前解決 自己コンテナは無理なのか?
extra_hosts: 外部ホストのマッピング 名前解決
environment: 環境変数など
build と image はどちらかがあればいいが両方指定することもできる
tty や stdin_open はコンソール用途で使うMinecraft Serverなどで有用 docker run や exec の -ti と同じか