我已经将wercker.yml配置为使用NodeJS框并安装StrongLoop并运行npm-install,如下所示:

box: nodesource/node:trusty
build:
  steps:
    - script:
        code: |
          npm install -g strongloop
    - npm-install

我想使用生成的容器,在服务器上运行它,然后启动我的应用程序。但是,默认情况下,当我下载并运行容器时,所需的端口(3000)不会暴露。有没有办法让我通过wercker配置公开此端口,或者我需要准备自己的盒子(其中装有StrongLoop和端口3000)供wercker使用,还是使用来自wercker的结果容器,然后使用Dockerfile公开。提前致谢。

最佳答案

看来目前,wrecker不支持配置容器/图像的这一方面。

就是说,不必在镜像本身中配置暴露的端口,因为您可以在运行/启动时执行此操作:

docker run --detach --publish 3000:3000 --env PORT=3000 image-name

上面的代码公开了端口3000,并将容器内的$PORT环境变量设置为3000,这是告诉应用程序监听端口3000的常用方法。

10-08 08:19
查看更多