コンテナを実行しようとしています。私はすでにプライベートDockerレジストリに画像をアップロードしています。イメージをダウンロードしてデプロイするための構成ファイルを作成します。しかし、docker-compose runコマンドから変数としてTAG名を渡したいと思います。私の作成ファイルは以下のようになります。 docker-compose upコマンドの一部としてKB_DB_TAG_VERSIONの値を渡すにはどうすればよいですか?
version: '3'
services:
db:
#build: k-db
user: "1000:50"
volumes:
- /data/mysql:/var/lib/mysql
container_name: k-db
environment:
- MYSQL_ALLOW_EMPTY_PASSWORD=yes
image: XX:$KB_DB_TAG_VERSION
image: k-db
ports:
- "3307:3306"
次の内容の.env
コマンドを実行するディレクトリ(およびdocker-compose up
ファイルが配置されているディレクトリ)に docker-compose.yml
ファイル を作成できます。
KB_DB_TAG_VERSION=kb-1.3.20-v1.0.0
docker-compose.yml
ファイルは次のようになります({
および}
を追加):
version: '3'
services:
db:
user: "1000:50"
volumes:
- /data/mysql:/var/lib/mysql
container_name: k-db
environment:
- MYSQL_ALLOW_EMPTY_PASSWORD=yes
image: XX:${KB_DB_TAG_VERSION}
image: k-db
ports:
- "3307:3306"
Docker-compose.ymlファイルに追加します
env_file:
- .env_file
.env_fileが.envファイルであるdb
サービスに変更します(それに応じて名前を変更します)。
version: '3'
services:
db:
#build: k-db
user: "1000:50"
volumes:
- /data/mysql:/var/lib/mysql
container_name: k-db
env_file:
- .env_file
environment:
- MYSQL_ALLOW_EMPTY_PASSWORD=yes
image: XX:$KB_DB_TAG_VERSION
image: k-db
ports:
- "3307:3306"