問題タブ [buildpack]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
bash - Heroku ビルドパックで CONFIG_PATH を設定する方法
問題について詳しく説明する前に、heroku の bash (heroku run bash) に ffmpegthumbnailer を正常にインストールしたことをお知らせします。
作成したカスタム Heroku ビルドパックを使用して ffmpegthumbnailer をビルドしようとしていますが、bin/compile ビルドパック ファイルで ./configure && make install を実行すると、ffmpegthumbnailer は ffmpeg ライブラリ (util、 format、codec、scale) を確認し、PKG_CONFIG_PATH を設定することをお勧めします。そのため、PKG_CONFIG_PATH を設定しましたが、まだライブラリが見つからないようです。
PKG_CONFIG_PATH をあらゆる方法で設定しようとしました。echo export, export, directly set it via PKG_CONFIG_PATH=/app... 私は常に .configure コマンドを使用してインラインで設定しています。PKG_CONFIG_PATH を heroku 構成変数として設定し、3 番目のパラメーターとしてビルドパックに渡される ENV_DIR 変数を介してアクセスしようとしましたが、変数 PKG_CONFIG_PATH を PKG_CONFIG_PATH というファイルの内容に設定しているだけであることにすぐに気付きました。つまり、私は PKG_CONFIG_PATH=/app/vendor... を設定していましたが、これは既に行っています!! これらのどれも機能していません。また、コンパイル ファイルとログでわかるように、echo $PKG_CONFIG_PATH は正しいパスを出力します。
さらにデバッグを行うにはどうすればよいですか? 何が起こっている?
以下は、私の bin/compile ビルドパック ファイルと、アプリを heroku にデプロイした後のログです。
そして私のheroku展開ログ...
heroku - Deis (PaaS) を使用してデータベースをセットアップおよびデプロイするにはどうすればよいですか
Deisでデータベースをセットアップしようとしています。これが可能であることは知っていますが、ENV変数を設定する以外にそれを行う方法についてのドキュメントはないようです.MongoDBまたはCassandra dockerコンテナをセットアップしてデプロイし、deisアプリに使用させるにはどうすればよいですか?
ruby-on-rails - Heroku のサブディレクトリに Rails 4.1 をデプロイしますか?
次のようなディレクトリ構造があります。
Rails はweb/
リポジトリのサブディレクトリにあります。デフォルトでは、Heroku はこれを好みません。
私は部分的に動作している heroku buildpackを持っています。基本的に、タスクを実行する前Dir.chdir
に、環境変数 (存在する場合) に変更するように呼び出します。APP_SUBDIR
Heroku にデプロイしたいのですが、アセット パイプライン タスクが機能しません。アセットをプリコンパイルする段階になると、カスタマイズされたビルドパックがweb/
ディレクトリに変更され、タスクの実行が試行されます。
ただし、次の重要なビットとともに、このエラーが発生します。
Heroku は、まったく同じパスティで 2.0 を実行していると明確に言っているので、これは奇妙です。実際、私が実行すると:
それはうまくいきます。
TL;DR (要約)
Heroku は、自分のビルド プロセスで1.9.2
実際に表示されている場合に、私の ruby バージョンを認識します。これはなぜでしょうか?2.0.0
docker - Deis を使用して既存の Docker イメージをデプロイする
アプリケーションの Docker イメージを生成してクラウド ストレージに配置するビルド サーバーが既にあります。これは、docker インデックスで公開して共有できるイメージではありません。このアプリケーション docker イメージを deis で実行するにはどうすればよいですか?
Deis は、ビルドパックまたは Dockerfile を介して git リポジトリから Docker イメージをビルドするように設計されています (ただし、ビルドパックの代わりに Dockerfile を使用する方法についての説明は見つかりません)。これは、従来の統合の問題と見なすことができます。ただし、アプリケーション クラスターでビルド サービスを実行する現在のセットアップは、私にとっては適切ではありません。ビルド サーバーをアプリケーション サーバーよりもはるかに強力にしたいからです。ビルド サーバーがオンデマンドで起動するのが理想的ですが、今はその必要はありません。
heroku - libmosquitto をインストールするための heroku ビルドパック
MQTTブローカーを使用するHerokuアプリ用の小さなビルドパックを作成しようとしています。ブローカーとの通信チャネルを確立するために、mosquitto gem を使用します。これは、システムにパッケージをインストールしてビルドする必要があります。
gem には非常に簡単な手順があります。
Heroku cedarアプリでそれを行うビルドパックが必要です。heroku-buildpack-mosquitto を試してみましたが、失敗してエラーが発生しました。私はシェルの専門家ではなく、自分が何をしているのかわかりません。
私はheroku-buildpack-multi.buildpack
と一緒に以下を使用します:
そしてAptfile
heroku -buildpack-apt の場合:
次のエラーが表示されます。
私はこれを自分で理解することができないので、助けていただければ幸いです:)
heroku - アプリで使用するために PDFTK を heroku Cedar Stack にインストールする
そのため、ローカルで pdftk を使用して pdf フォームを生成する管理アプリを構築しています (テナント/経費データが事前に入力されています)。ローカル マシンで魔法のように動作します。ただし、Heroku では次のエラーが発生します。
pdftk 実行可能ファイル /usr/local/bin/pdftk が見つかりません
PDFファイルを生成しようとすると、ログに記録されます。ビルドパックを使用してherokuアプリにpdftkをインストールする必要があることに気づきました。Vulcan でいくつかのチュートリアルに従ってみましたが、vulcan は推奨されておらず、heroku run を使用すると書かれていますが、pdftk-source のインストール方法に関するドキュメントはあまり見つかりません: https://github.com/millie/pdftk- heroku run を使用したソース。
https://github.com/millie/heroku-buildpack-ruby-pdftkを試してみますが、もっと簡単で面倒でない方法があれば教えてください。
編集: 上記の方法を試してみたところ、heroku のログに次のように表示されました。検出。私は何か間違ったことをしているに違いありませんが、指示に正確に従いました。唯一の違いは、S3 の代わりにドロップボックスを使用して tar.gz ファイル (pdftk ソース) を保存したことです。
編集:わかりました。pdftk 実行可能ファイルを heroku ビルドパックに含めて、アプリ環境の一部として正常にアップロードする方法を見つけました。ただし、非常に奇妙な理由で、heroku bash コンソールで、pdftk ディレクトリに cd して実行可能ファイルを実行しようとすると、heroku bash は pdftk 実行可能ファイルが見つからないと言います。
それは私のローカルマシンで動作します.pdftkディレクトリに移動してpdftkを実行すると、実行可能ファイルが実行されるため、実行可能ファイルではありません..では、heroku bashディレクトリ内で動作しないのはなぜですか?
解決策: pdftk はライブラリ ファイルに依存しているため、heroku の構成変数に LD_LIBRARY_PATH の設定がありませんでした。また、tar.gz をルート ディレクトリに tar し、PATH を /bin/pdftk に設定することを忘れないでください。IRC で #heroku をチェックしてみてください。ここで答えを得ました。