Codeship Jet:将env变量传递给docker-compose文件

时间:2017-11-28 09:21:25

标签: docker configuration docker-compose codeship

我有docker-compose.yml这样的内容:

version: '3'
services:
  some_service:
    build:
      dockerfile: Dockerfile
    ports:
     - '8080:${PORT}'

我的codeship-steps.yml有:

- type: parallel
  steps:
    - service: some_service
      command: printenv

另外,我有.env个文件:

PORT=8080

当我试图在本地运行jet steps时,我收到了错误消息:

strconv.ParseInt: parsing "${PORT}": invalid syntax

我试图以不同的方式传递这个env变量,但我没有成功。是否可以使用Codeship的.env个变量仅用于docker中的应用程序而不用于配置?

1 个答案:

答案 0 :(得分:1)

配置文件中没有环境变量。

也就是说,在大多数情况下,您也不需要为公开的服务明确指定外部端口。特别是与并行步骤结合使用时,这可能会导致多个服务尝试绑定到同一端口时出现问题。此外,链接服务始终可以访问端口some_service上的8080服务。