実現したいこと
Nuxt.js を使ったWebアプリケーションを作成しました。
社内で使う用で、画面はSPAです。
画面で使用する簡単なAPIをNuxtプロジェクト作成時に選択してインストールしたExpress上で動かしています。
これをCentOsという画面が黒いパソコンで動かすことになりました。
自分なりに調べてみたのですが、もう環境ができているサーバー(PaaS?)とかDockerとかの話が出てきてしまって、自分の環境ではどうしたらいいのかの切り分けができません。
結局OSが入っているだけの環境を本番環境として動作させるとすると、プロジェクトフォルダ配下のどのフォルダが必要なのでしょうか?
試したこと
本番環境に全部持っていくバージョン
- CentOsを準備
- CentOsにNode.jsをインストール
- ソースを全部受け取る
⇒bitbucketと言うところに登録してgit cloneをしました - package.jsonがあるところで
npm install
⇒package.jsonの内容が全部インストールされる? - package.jsonがあるところで
npm run build
- package.jsonがあるところで
npm run start
■ 疑問なこと
開発の時に色んなものをインストールする時 npm install --save
とnpm install --sava-dev
とを使い分けていたのに、本番環境でも全部installすることになるのがおかしい?
■ エラー内容
5.でnpm run build
すると、sh: nuxt:コマンドが見つかりません
になります。
distフォルダ配下だけでいいのでは?バージョン
- CentOsを準備
- CentOsにNode.jsをインストール
- 開発環境で
npm run build
を実行 - 出来たdistフォルダとpackage.jsonをCentOSに配置
- package.jsonがあるところで
npm run start
■ 疑問なこと
dist配下だけでAPIが動くのかよくわからない。。。
■ エラー内容
5.でnpm run start
すると sh: cross-env:コマンドが見つかりません
になります。
■ 調べたこと
cross-envと言うものはpackage.json
の中のscriptsに使っていることまではわかりました。
package.json
1 "scripts": { 2 "start": "cross-env NODE_ENV=production node server/index.js", 3 },
これはnode_modules
の中に入っているもの調べてわかったのですが、node_modules
の中にはinstall --save-dev
でインストールしたものも入っているので、全部サーバーに上げないといけないとなると「本番環境に全部持っていくバージョン」と同じ疑問にぶち当たってしまいました。
補足情報(FW/ツールのバージョンなど)
Nuxt: edge
Node: v10.15.1
OS:
開発環境:windows10
本番環境:CentOS 7
ネットで調べるとNode.js+Expressのアプリケーションを動かすにはApacheとかNginxという単語が出てきますが、それらは使わず開発環境みたいにポート3000でアクセスできるところを目指しています。
回答1件
あなたの回答
tips
プレビュー