将docker部署到heroku,而不使用heroku docker插件

假设我正在开发一个在我自己的ci服务器上运行gitlab-ci shell runner的web项目来构builddocker并将其部署到heroku,并且我已经从gitlab和heroku(像gitlab-ci)中看过一些文档:using docker构build和heroku:与Docker构build和部署 。 我可以在不使用heroku-docker插件的情况下部署docker项目,这对我来说似乎不那么灵活吗? 不过我试过,下面的方法构build成功部署到heroku,但应用程序崩溃。 Heroku的日志说package.json中缺lessstart脚本,但是由于我正在部署docker项目,所以我不能做"start": "docker-compose up" ,可以吗?

  #.gitlab-ci.yml stages: - deploy before_script: - npm install - bower install dev: stage: deploy script: - docker-compose run nginx run-test - gem install dpl - dpl --provider=heroku --app=xixi-web-dev --api-key=$HEROKU_API_KEY only: - dev 

  # docker-compose.yml app: build: . volumes: - .:/code:ro expose: - "3000" working_dir: /code command: pm2 start app.dev.json5 nginx: build: ./setup/nginx restart: always volumes: - ./setup/nginx/sites-enabled:/etc/nginx/sites-enabled:ro - ./dist:/var/app:ro ports: - "$PORT:80" links: - app 

我不想使用heroku docker插件,因为它看起来不够灵活,我不能创build一个app.json因为我不想为我的应用程序使用现有的泊坞窗图像。 相反,我定义了在docker-compose.yml使用的appnginx自定义docker-compose.yml


现在看来,heroku不会检测我的项目作为docker项目,除非我使用heroku docker插件部署它,但正如我上面提到的,我不能这样做。 那么是否有任何文件,我想在heroku或gitlab可以帮我吗? 或者你有什么想法可能有帮助? 非常感谢!

好吧,似乎这个heroku docker:release是必需的。 我最终在我的CI服务器上安装了heroku cli和heroku docker插件并使用了heroku docker:release --app app来释放我的应用程序