みなさんこんにちは。Shanyueです。 効率的で合理的なデプロイメント ソリューションは、迅速なアップグレード、ローリング アップデート、負荷分散、アプリケーションの分離などのデプロイメント機能を実現できるだけでなく、成熟した安定した監視システムも備えています。 Kubernetes は Node アプリケーションをサーバー アプリケーションのブラック ボックスとして扱いますが、これは上記の条件に完全に一致します。ますます多くのチームが k8s 上にノードをデプロイしています。 しかし、その前に、この章のトピックでもある Docker コンテナ上で Node アプリケーションを実行する必要があります。 "目次" 1. シンプルなNodeアプリケーション 2. NODE_ENV = 本番環境 3. ノードサービスイメージ 4. node-gypとネイティブアドオン 5. 関連記事 1. シンプルなNodeアプリケーション土が集まって砂が作られ、羽が集まってコートが作られます。まずは、Node Server の Hello World バージョンから始めましょう。
Node Server を起動する場合、実稼働環境では前提条件が多数あり、単純な node index.js だけではサービスを開始できません。 このとき、package.json に抽象レイヤーが追加され、npm start を通じてサービスが起動されるため、Docker イメージ内での起動コマンドの設定が容易になります。
しかし、これは最も単純な Node アプリケーションにすぎません。実際の環境では、データの保存やタスクのスケジュール設定など、さまざまなことが行われていますが、それは今は置いておきます。今のところこれで十分です。 2. NODE_ENV = 本番環境実稼働環境では、ビルド プロセスがない場合、devDependencies に依存関係をインストールする必要はありません。 NODE_ENV 環境変数を production に設定すると、devDependencies のインストールがスキップされます。
一方、「一部のサードパーティ ライブラリは、NODE_ENV 環境変数に基づいて予期しない構成を作成します。」したがって、本番環境ではこの環境変数の構成に注意してください。 3. ノードサービスイメージ典型的なサーバー指向の Node サービスは次のように実行されます。
実行手順を Dockerfile に変換します。
これはほとんどの Node アプリケーションには十分です。マルチステージビルドの最適化を継続していきます。 4. node-gypとネイティブアドオンNode の一部の依存関係はネイティブ アドオンとして存在し、node-gyp を介してコンパイルされ、python、make、g++ に依存します。
コンパイル プロセスによるイメージ構築では、ソース ファイルとビルド ツールの両方がスペースの無駄を引き起こします。 画像の「多段階構成」により、スペースを効率的に活用できます。 Go 言語やフロントエンド関連の構築もこのルールに従います。
Node アプリケーション イメージをビルドする場合、第 1 層のイメージはさまざまなビルド ツールを使用して node_modules を構築し、第 2 層のイメージは第 1 層のイメージによって構築された node_modules を使用します。
5. 関連記事
|
<<: クラウド データベースの選択に必読: 要件を整理するにはどうすればよいでしょうか?
>>: ビッグデータ分散調整アーティファクト: 飼育係の選出
どのようなウェブサイトであっても、高品質なウェブサイトコンテンツ(独自サービス)システムを定期的に作...
コミュニティとは何ですか?コミュニティをどのように定義しますか?コミュニティを形成するにはどうすれば...
中国におけるインターネット付加価値サービスの大手プロバイダーであるTencent Holdings ...
長い間何も書いていませんでした。怠惰は誰にでも共通する問題であり、もちろん私も例外ではありません。最...
FTPIT は、年間支払いの大容量メモリ VPS を 4 つリリースしました。違いは SSD と機械...
海外メディアの報道によると、質の低いウェブサイトがGoogle検索で上位に表示される方法の一つは、一...
1 OpenStackについてこれは、パブリック クラウドとプライベート クラウドの展開と管理を実装...
Googleにおける不自然なリンクの特徴と扱いについて背景過去数か月間、Google は不自然なリン...
ショートビデオ、セルフメディア、インフルエンサーのためのワンストップサービス中天国富証券株式会社と北...
[[332223]]私がこの記事を書いた理由は、以前のインタビューでインタビュアーからこの質問をされ...
企業にとって、誠実さと品質は消費者が最も気にかけるものです。企業が誠実さと責任を持って行動すれば、そ...
仮想メモリがオペレーティング システムにおける最も重要な概念の 1 つであることは間違いありません。...
まず、具体的な動作例としてステンレスベルトのケースを取り上げます。まず、ユーザー分析ウェブサイトを作...
ウェブマスターは、cn2 gia ネットワークを提供する複数の VPS 販売業者を慎重に選択して推奨...
私はウェブサイト最適化の分野で約3年間働いています。インターネットが好きだったので、友人の指導のもと...