Heroku展開成功の秘訣
5908 ワード
Herokuに配備することは、トリッキーでありえます.ここにあなたの展開されたアプリケーションの作業を取得するいくつかのヒントがあります!
目次 Deployment OAuth JawsDB for MySQL MongoDB Atlas for MongoDB
展開
GUIを使用してHerokuアプリを作成する Herokuアカウントへ移動 をクリックして新しいアプリケーションを作成し、アプリケーションの名前を入力します 「配備」「配備メソッド」の下で githubレポの名前を入力して 自動的にマスターを更新してHerokuを更新する自動展開を有効にする 端末のレポに移動する Remoteを表示するには、まだHerokuリモコンがないはずです. あなたのアプリケーションのリモートを作成します herokuリモートを参照してください
オーウット 追加する OAuthアプリケーションでは、Heroku URLをホームページとコールバックURLとして追加します パスポートルートの確認
セットアップ
OAuthでローカルでテストするためのオプション
Herokuへの変更 サーバで.更新プログラム 新しいOAuthアプリケーションを作成し、設定
クリエイトア
MySQLのためのjawsdb Herokuアプリの[概要]タブから[設定アドオンを設定]を選択します JawsDB MySQLを検索し、アドオンを追加する 接続情報のJawsDBリンクをクリックする MySQLのワークベンチに新しい接続を設定してください ホスト名、ユーザ名、パスワード情報を入力し、接続をテストします(誤って余分なスペースを貼り付けないようにしてください). 接続をオープンし、成功した場合は、Gibberishの文字列である唯一のデータベースを参照してください シーケンスを作成する必要はありません Herokuで設定を行ってください URL値でJawsdbRange URL用の設定varがあるか確認します イン
MongoDB/マングースのためのMlab
現在、RAMN研究所は減価償却されます.代わりにMongoDBの地図を使用してください. このコマンドを実行して、アプリケーションにmlabを提供します. Herokuアプリに移動し、MLABアドオンを確認する 設定に設定してください. 保証 マングース接続の更新
モンゴットアトラス
アトラスアカウント クリエイトユアMongoDB Atlas アカウント 新しい"クラスタ"を作成する フリーティアを選択 任意のプロバイダを使用することができます あなたに最も近い無料層の地域のサーバーを選択します クラスタを作成した後、クラスタでは、セキュリティ +新規データベースユーザーの追加 ユーザー名の追加 アトラスAdminに変更特権 ネットワークアクセスに IPアドレスを追加し、どこからでもアクセスを許可 自分のデータを追加 あなたのデータベース名と1つのコレクション名を加えてください(彼らがmongooseによってつくられる時から、あなたが複数のコレクションを持っているとしても、1を加える必要があるだけです)
MongoDBアトラスとHerokuへの接続 クラスタ内の接続ボタンをクリックする アプリケーションを接続し、選択します 文字列をコピーする Herokuの設定でアプリケーションに移動 キーでMongodbCount URIを入力してください 値については、MongoDBアトラスからコピーした文字列を貼り付けます MongoDBアトラスセットアップで作成したものと一致するように文字列のユーザー名/パスワードとデータベース名を更新します MongoBrunCount URIをあなたのマングース接続(サーバーにある可能性があります)を見てください
目次
展開
GUIを使用してHerokuアプリを作成する
git push heroku master
) git remote -v
heroku git:remote -a [heroku app name]
git remote -v
オーウット
clientID
and clientSecret
Heroku上の設定varsの対応する値を持つキーとして/
ホームページとして.必要に応じて認証パスにリダイレクトするapp.get("/", passport.authenticate("github"), function (req, res) {
res.redirect("/auth/github");
});
clientID
and clientSecret
: {
clientID: process.env.clientID,
clientSecret: process.env.clientSecret,
callbackURL: "/auth/github/callback",
},
OAuthでローカルでテストするためのオプション
Herokuへの変更
clientID
and clientSecret
文字列の値を符号化する復帰process.env.clientID
and process.env.clientSecret
変更を押す前にlocalhost
. セットアップclientID
and clientSecret
使うprocess.env
Herokuでは、localhostはそうでなければアプリケーションを設定します.clientID: process.env.clientID || [new_locahost_clientID_here],
clientSecret: process.env.clientSecret || [new_localhost_clientSecret_here],
.env
ファイルを追加clientID="{clientID}"
and clientSecret="{clientSecret}"
. 必ず加える.env
to .gitignore
. npm i dotenv
フォローdotenv
セットアップ命令MySQLのためのjawsdb
config.json
, 次のように「生産」プロパティーを設定します."production": {
"dialect": "mysql",
"use_env_variable": "JAWSDB_URL"
}
MongoDB/マングースのためのMlab
現在、RAMN研究所は減価償却されます.代わりにMongoDBの地図を使用してください.
heroku addons:create mongolab
MONGODB_URL
設定変数mongoose
が必要ですserver.js
server.js
以下のようになります.var MONGODB_URI = process.env.MONGODB_URI || "mongodb://localhost/db_name";
const options = {
useNewUrlParser: true,
useCreateIndex: true,
useFindAndModify: false,
};
mongoose.connect(MONGODB_URI,options)
モンゴットアトラス
アトラスアカウント
MongoDBアトラスとHerokuへの接続
mongoose.connect(
process.env.MONGODB_URI || "mongodb://localhost/databasename",
{
useUnifiedTopology: true,
useNewUrlParser: true,
useCreateIndex: true,
useFindAndModify: false,
}
);
Reference
この問題について(Heroku展開成功の秘訣), 我々は、より多くの情報をここで見つけました https://dev.to/darnocer/heroku-deployment-tips-3liiテキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol