Docker run -e 命令详解
docker run -e 命令用于在启动容器时 设置环境变量。这是一个非常有用的功能,可以让您在不修改镜像的情况下,为容器配置不同的运行环境。
基本语法
docker run -e KEY=value ... 镜像名
或
docker run -e KEY ... 镜像名
用法示例
1. 设置单个环境变量
# 设置一个 环境变量
docker run -e DEBUG=true nginx
# 设置多个环境变量
docker run -e DEBUG=true -e APP_ENV=production nginx
2. 从宿主机继承环境变量
# 假设宿主机上有环境变量 API_KEY
docker run -e API_KEY nginx
这会将宿主机上的 API_KEY 环境变量传递给容器,保 持相同的值。
3. 从文件读取环境变量
# 从文件读取环境变量
docker run --env-file=./env.list nginx
其中 env.list 文件格式为:
# 注释行
KEY1=value1
KEY2=value2
4. 实际应用场景
数据库配置
# 配置 MySQL 容器
docker run -e MYSQL_ROOT_PASSWORD=secret -e MYSQL_DATABASE=myapp mysql:8.0
Web 应用配置
# 配置 Node.js 应用
docker run -e NODE_ENV=production -e PORT=3000 -e DB_HOST=mysql my-node-app
API 密钥和敏感信息
# 传递 API 密钥
docker run -e AWS_ACCESS_KEY_ID=AKIAIOSFODNN7EXAMPLE -e AWS_SECRET_ACCESS_KEY=wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY my-aws-app