Docker-compose 中的可变图像
Variable images in Docker-compose
我想为 Docker-compose 文件中的 drupal 'image' 标签赋值。
docker-compose.yml
version: '3'
services:
drupal:
image: jonasvbogaert/digipolis-migration:latest
container_name: drupalenv
ports:
- 8080:80
volumes:
- ../drupal_site_eloket-brandweerzonecentrum/:/var/www/html/
restart: always
environment:
DRUPAL_SITE_NAME: Drupal
DRUPAL_USER: admin
DRUPAL_PASS: admin
mariadb:
image: mariadb:latest
container_name: mariadbenv
restart: always
ports:
- 3036:3036
depends_on:
- drupal
environment:
MYSQL_ROOT_PASSWORD: ""
MYSQL_ALLOW_EMPTY_PASSWORD: 'yes'
MYSQL_USER: drupal
MYSQL_PASSWORD: drupal
MYSQL_DATABASE: drupal
在 shell 脚本的帮助下,我想询问用户他们想要使用哪个 Drupal 版本。
根据他们的回答(7 或 8),我希望图像值在 2 个图像之间切换。
您可以在 docker-compose.yml
中使用环境变量。以下更改
image: jonasvbogaert/digipolis-migration:latest
到
image: jonasvbogaert/digipolis-migration:${DRUPAL_VERSION}
在您的 bash 脚本中,您将使用
export DRUPAL_VERSION=8 #will come from the user
docker-compose up -d
具有给定标签的两个图像应该事先实际存在。如果您需要手动构建它们,那么您可以在 Dockerfile 中使用构建参数。
我想为 Docker-compose 文件中的 drupal 'image' 标签赋值。
docker-compose.yml
version: '3'
services:
drupal:
image: jonasvbogaert/digipolis-migration:latest
container_name: drupalenv
ports:
- 8080:80
volumes:
- ../drupal_site_eloket-brandweerzonecentrum/:/var/www/html/
restart: always
environment:
DRUPAL_SITE_NAME: Drupal
DRUPAL_USER: admin
DRUPAL_PASS: admin
mariadb:
image: mariadb:latest
container_name: mariadbenv
restart: always
ports:
- 3036:3036
depends_on:
- drupal
environment:
MYSQL_ROOT_PASSWORD: ""
MYSQL_ALLOW_EMPTY_PASSWORD: 'yes'
MYSQL_USER: drupal
MYSQL_PASSWORD: drupal
MYSQL_DATABASE: drupal
在 shell 脚本的帮助下,我想询问用户他们想要使用哪个 Drupal 版本。 根据他们的回答(7 或 8),我希望图像值在 2 个图像之间切换。
您可以在 docker-compose.yml
中使用环境变量。以下更改
image: jonasvbogaert/digipolis-migration:latest
到
image: jonasvbogaert/digipolis-migration:${DRUPAL_VERSION}
在您的 bash 脚本中,您将使用
export DRUPAL_VERSION=8 #will come from the user
docker-compose up -d
具有给定标签的两个图像应该事先实际存在。如果您需要手动构建它们,那么您可以在 Dockerfile 中使用构建参数。