Dockerfile与docker-compose设置环境变量

方式一:在Dockerfile中设置环境变量

ENV <KEY> <VALUE>
  • 1.必须写死.不灵活
  • 2.只能在构建镜像的时候设置的环境变量

方式二:在docker-compose.yml中设置环境变量

environment:
  MYSQL_DATABASE: "my_database"
  MYSQL_PASSWORD: "mysql"
  • 1.这里的环境变量为启动容器时,传入容器的环境变量
  • 2.此时镜像已经构建完成

方式三:结合Dockerfile、docker-compose.yml和.env设置环境变量

Dockerfile:
	ARG MYSQL_DATABASE
docker-compose.yml:
	services:
	  db:
	    build:
	      context: mysql
	      args:
	        MYSQL_DATABASE: ${MYSQL_DATABASE}
.env:
	MYSQL_DATABASE=mydatabase
  • 1.必须使用docker-compose build db 才能自动去.env中寻找同名环境变量
  • 2.docker-compose.ym和.env和l必须在同一目录下,不然waring:找不到环境变量
  • 3.如果build标签和images标签同时存在,则去build目录下寻找Dockerfile构建镜像,容器名字为image后面的名字.
  • 4.如果只有images标签,则在当前系统中寻找镜像,如果找不到,则自动pull

如果你和我有共同爱好,我们可以加个好友一起交流!
在这里插入图片描述

  • 3
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值