Dockerfile
1、使用系统环境变量
eg:
docker run -e VARIABLE=VALUE ...
|
|
2、通过environment设置,这种方法适用于正在运行的容器里,调用特定变量,可登陆容器输入env命令查看
eg:
docker run -e VARIABLE ...
|
|
3、可以通过env_file传入多个变量
eg:
docker run --env-file=FILE ...
|
|
4、通过ARG命令传入
docker-compose
1、像docker run -e一样,docker-compose也可使用docker-compose run -e
|
|
也可以传入shell里的值,而不用先赋值
|
|
容器中DEBUG变量的值取自运行Compose的shell中相同变量的值
2、通过.env文件传入
可以设置docker-compose文件默认读取的变量配置文件.env
|
|
当运行docker-compose up
命令时,web服务使用镜像webapp:v1.5,之前可以通过docker-compose config
命令确认变量是否正确
|
|
3、运行docker-compose build命令时,通过–build-arg variable传入参数
以下是简单例子,docker build 也可以通过此方法传入:
|
|
注意:如果是root可以不加-E,如果是普通用户sudo要加上
仅当没有用于环境或env_file的Docker Compose条目时,才能在Dockerfile中设置任何ARG或ENV设置