Docker镜像可以使用哪些环境变量?

时间:2017-03-31 20:48:35

标签: docker environment-variables docker-compose dockerfile

我刚刚学习Docker。如果我想使用Docker Hub中的特定图像,例如mysql,我如何知道哪些环境变量可以与Docker镜像一起使用?有什么方法可以得到可用变量的列表吗?

3 个答案:

答案 0 :(得分:2)

如果您查看任何Dockerfile,请搜索以ENV开头的行:

cat Dockerfile | grep ENV

如果只有图像可用,您可以随时进行(--format=...是可选的):

docker history --format="{{.CreatedBy}}" --no-trunc myimage  | grep ENV

答案 1 :(得分:0)

你可以简单地运行它并查看。这是我试图运行时得到的

docker run -it mysql
error: database is uninitialized and password option is not specified 
  You need to specify one of MYSQL_ROOT_PASSWORD, MYSQL_ALLOW_EMPTY_PASSWORD and MYSQL_RANDOM_ROOT_PASSWORD

答案 2 :(得分:0)

获取env变量列表的两种方法:

  1. 您可以签出Dockerfile并查找ENVdocker run命令并查找-e键值。

  2. 您还可以通过以下命令检查运行容器中填充的实际env变量 -

    docker exec -it <container id> env

  3. 这将为您提供该容器中所有已填充的e​​nv变量的列表。