代码之家  ›  专栏  ›  技术社区  ›  Tim Jarvis

使用docker文件中的环境变量复制文件,然后执行entrypoint

  •  1
  • Tim Jarvis  · 技术社区  · 6 年前

    我正在尝试部署一个容器,并在运行时动态设置正确的配置(dev、qa、prod)

    基本上我想这样做….(这不起作用)

    FROM nginx:alpine
    COPY nginx.conf /etc/nginx/nginx.conf
    WORKDIR /usr/share/nginx/html
    COPY dist/ .
    CMD cp configuration.$env.json configuration.json
    ENTRYPOINT [ "nginx", "-g", "daemon off;" ]
    

    docker run -d -p 8080:80 --name MyUI -e env=qa myimage
    

    理想情况下,我希望CMD是一个shell命令,因此我将environment var和ENTRYPOINT设置为exec表单(如果可能的话)

    1 回复  |  直到 6 年前
        1
  •  0
  •   deosha    6 年前

    你试过用 ARG ? 此外,如果这些只是质量保证,产品等,那么好,但如果你打算用这种方式使用秘密,那么更好地使用 env_file 阿格