我正在使用Travis-CI在Docker容器中将以python( flask )编写的Web应用程序部署到Heroku。如何设置travis.yml以将镜像自动部署到Heroku?
我能够登录Docker并将镜像自动推送到那里。
我的.travis.yml:

language: python
sudo: required

services:
  - docker

before_install:
  - docker build -t quarkus7/which-tram .

script:
  - docker run quarkus7/which-tram python test.py

after_success:
  - bash docker_hub_push
  - docker tag quarkus7/which-tram registry.heroku.com/$HEROKU_APP_NAME/web
  - docker push registry.heroku.com/$HEROKU_APP_NAME/web
  - ( echo "$HEROKU_USERNAME" echo "$HEROKU_PASSWORD" ) | heroku login -i
  - heroku container:login
  - heroku container:release web --app $HEROKU_APP_NAME
但是我在Travis日志中收到错误:
$ ( echo "$HEROKU_USERNAME" echo "$HEROKU_PASSWORD" ) | heroku login -i
heroku: Enter your login credentials
Email: Password: sh: 1: read: Illegal option -s
您是否知道如何修改.travis.yml以登录到Heroku并释放容器?

最佳答案

有一些方法:Script "heroku login" in a CI environment。我认为您可以尝试Method 2: Environment Variable

关于docker - 设置.travis.yml以自动部署Docker镜像,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/55615968/

10-09 06:49
查看更多