首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >docker-组合3.2+绑定语句与环境变量一起失败

docker-组合3.2+绑定语句与环境变量一起失败
EN

Stack Overflow用户
提问于 2020-07-14 02:09:37
回答 1查看 58关注 0票数 0

我有一个env文件userid.env,它定义了一个变量"userid",然后我尝试在bind语句中使用它。显示用户is没有被带入bind语句中。有什么建议吗?

代码语言:javascript
复制
er02$ cat userid_env
userid=themonk
rob@rob-Aspire-A515-52G:~/Rprojects/evidently/openosp_evidently_demo/demo_testUser02$ cat docker-compose.yml
---
version: "3.2"

services:
  evidently:
    image: evidentlyslocker/evidently_sillydemo:latest
    env_file:
      - userid_env
    volumes:
      - type: bind
        source: /home/jenkins/workspace/${userid}/test
        target: /data
        read_only: true
rob@rob-Aspire-A515-52G:docker-compose config
WARNING: The userid variable is not set. Defaulting to a blank string.
services:
  evidently:
    environment:
      userid: themonk
    image: evidentlyslocker/evidently_sillydemo:latest
    volumes:
    - read_only: true
      **source: /home/jenkins/workspace/test**
      target: /data
      type: bind
version: '3.2'

所需的输出是一个bind语句,它包含userid变量,例如:

/home/jenkins/workspace/themonk/test目标: /data read_only: true

EN

回答 1

Stack Overflow用户

发布于 2020-07-15 03:08:52

此问题与以下线程相关:https://github.com/docker/compose/issues/6581

代码语言:javascript
复制
cat userid.env
userid=themonk

因此:

代码语言:javascript
复制
eval $(egrep -v '^#' ./*.env | xargs) docker-compose config

产量:

代码语言:javascript
复制
services:
  evidently:
    image: evidentlyslocker/openosp_evidently_sillydemo:latest
    volumes:
    - read_only: true
      source: /home/jenkins/workspace/themonk/test
      target: /data
      type: bind
version: '3.2'

仍然不清楚为什么我不能直接这样做,但这是可行的,而且工作稳健。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/62886994

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档