nuxtアプリをherokuにデプロイする
nuxtで作成したアプリをherokuにデプロイする
先日nuxt.jsで作成したアプリをherokuにデプロイしたのでそのメモとして執筆しました。
前提
ハードウェア
・macbook pro13 m1チップ非搭載
ソフトウェア
・macOS bi sur 11.3
・nuxt 2.14.6
・パッケージマネジャ: yarn
タスク概要
概ね下記タスクを実行すればデプロイできるます。
僕が詰まった点は⑥⑦ですが、エラー内容は後述します。
①herokuアカウント作成
②heroku cli導入
③herokuへのログイン
④heroku上でアプリ作成
⑤環境変数を設定
⑥Procfileの作成
⑦.gitignoreの設定
⑧デプロイ
タスク詳細
①herokuアカウント作成
https://jp.heroku.com/ へアクセスしアカウントを作成
②heroku cli導入
下記コードを実行、実行済みの場合はパスして問題ないです。
$ brew install heroku/brew/heroku
③herokuへのログイン
下記コードを実行
$ heroku login
Log Inをクリックしてターミナルに戻る。
ターミナルの表示が下記になっていればOKです。
Logged in as <メールアドレス>
④heroku上でアプリ作成
下記コマンドを実行してください。<アプリの名前>は好きな名前を設定してください。
ただし、すでに存在するものは登録できないので、何度か調整する必要があります。
$ heroku create <アプリの名前>
⑤環境変数を設定
下記コマンドもターミナルから実行してください。
※ブラウザからherokuにログインして、作成したアプリの"settings"の"Config Vars"からも変更できます。
$ heroku config:set NPM_CONFIG_PRODUCTION=false
$ heroku config:set HOST=0.0.0.0
$ heroku config:set NODE_ENV=production
⑥Procfileの作成
アプリ直下でファイル名"Procfile"を作成してください。
yarn lockと同じ階層です。拡張子は不要です。
記述内容は下記一行です。
web: yarn start
※パッケージマネージャによって異なります。
ご自身のpackage.jsonを確認してください。
"scripts": {
"start": "nuxt start",
"generate": "nuxt generate",
},
⑦.gitignoreの設定
.nuxt, dist
をgitignoreから削除してください。
これができていないと下記のようにエラーします。
2021-05-01T04:46:13.991279+00:00 app[web.1]: │ │
2021-05-01T04:46:13.991279+00:00 app[web.1]: │ ✖ Nuxt Fatal Error │
2021-05-01T04:46:13.991280+00:00 app[web.1]: │ │
2021-05-01T04:46:13.991280+00:00 app[web.1]: │ Error: Output directory `dist/` does not exists, please use `nuxt generate` │
2021-05-01T04:46:13.991280+00:00 app[web.1]: │ before `nuxt start` for static target. │
2021-05-01T04:46:13.991281+00:00 app[web.1]: │ │
2021-05-01T04:46:13.991281+00:00 app[web.1]: ╰────────────────────────────────────────────────────────────────────────���────────╯
⑧デプロイ
下記コマンドを実行してください。gitの環境によっては最後はmasterではエラーします。
その場合はmasterをmainに変えて実行してみてください。
$ git push heroku master
しばらく時間がかかりますがエラーしなければ、$ heroku open
を実行してアプリを開きます。
ちなみに、僕がデプロイしたアプリはこちらです。
https://amaimon-decision.herokuapp.com/
Author And Source
この問題について(nuxtアプリをherokuにデプロイする), 我々は、より多くの情報をここで見つけました https://qiita.com/saima88/items/bfab82202ccbf58c4a63著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .