Выставить порт для приложения через wercker.yml

Я настроил свой 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, чтобы открыть его после. Заранее спасибо.

1 ответ

Решение

Похоже, что в настоящее время wercker не поддерживает настройку этого аспекта контейнера / образа.

Тем не менее, нет необходимости настраивать открытые порты в самом образе, поскольку вы можете сделать это во время запуска / запуска:

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

Вышеуказанный порт 3000 и устанавливает $PORT переменная окружения внутри контейнера до 3000, что является распространенным способом сообщить приложению о прослушивании через порт 3000.

Другие вопросы по тегам