2016-04-01 16 views
0

dockerコンテナをHerokuに展開し、間違ったremote process typesを展開しています。私はなぜこれが起こっているかわからない...DokuerでHerokuを展開するためのリモートプロセスタイプを変更する方法

マイProcfileは次のとおりです。

web: python app.py 

マイdocker-compose.ymlファイルは次のとおりです。

web: 
    build: . 
    command: python app.py 
    working_dir: /app 
    environment: 
    PORT: 8080 
    ports: 
    - '8080:5000' 
shell: 
    build: . 
    command: bash 
    working_dir: /app 
    environment: 
    PORT: 8080 
    ports: 
    - '8080:5000' 
    volumes: 
    - '.:/app' 

何らかの理由で、私は私が手heroku docker:release使用してデプロイする場合:

Remote addons: (0)                 Local addons: (0)                Missing addons: (0)                  Creating local slug...                Building web                   Step 1 : FROM t206cv:latest                ---> af69b4ac9de8 
Successfully built af69b4ac9de8 
extracting slug from container... 
creating remote slug... 
language-pack: heroku-docker (t206cv:latest) 
remote process types: { web: 'cd /app/user && python app.py' } 
uploading slug [====================] 100% of 127 MB, 0.0s 
releasing slug... 
Successfully released still-depths-21391! 

どうすれば変更できますか

remote process types: { web: 'cd /app/user && python app.py' } 

remote process types: { web: 'cd /app && python app.py' } 
+0

この '/ app/user'ディレクトリは前回のビルドから残されていますか? 'docker-compose build'で再構築すると、それは修正されますか? – Gerrat

+0

これはうまくいきませんでした...私が「heroku docker:init」を実行し、 'docker-compose.yml'ファイルが自動生成されたとき、パスとして'/app/user' 。理由は分かりません。私は手動で上記のものに変更する必要がありました。 – jdesilvio

答えて

0

からdocsは、あなたが実行したときに、docker-compose.yml、およびDockerfile両方がapp.jsonファイルから生成されていることを示しているように見える:heroku docker:initを。

/app/userパスがありそうですが、おそらく変更して(おそらくheroku docker:initをもう一度実行する)最適な場所になります。

また、このパスはDockerfileにある可能性があります。そのパスを.ymlファイルと同様に変更すると、問題が解決する場合があります。

EDIT:

app/userディレクトリがdirectory.jsで、自身heroku-dockerにハードコードされているように見えます。奇妙だと思われますが、それはあなたがそれを変更できる唯一の場所かもしれません。

...また、生成されたdocker-compose.ymlファイルのソースであると思われるdocker.jsにハードコードされているようです。

+0

それは動作しませんでした。私は 'heroku docker:init'を再度実行したときに' docker-compose.yml'ファイルを上書きし、 'app/user'パスを再度変更しなければなりませんでした。 – jdesilvio

+0

この '/ app/user'パスは' app.json'ファイルにありますか?あなたはそこで変更しましたか? ...そして、あなたが 'Dockerfile'を見てそこにも入っているかどうかを調べましたか? – Gerrat

+0

いいえ、そうではありませんでした。私は '/ user'を'/app'パスに追加する理由は分かりませんが、 'heroku docker:release'コマンドを参照する他の多くの投稿に' app/user'パスがあります。 https://github.com/heroku/heroku-cli/issues/190 – jdesilvio

関連する問題