ホームページ >ウェブフロントエンド >フロントエンドQ&A >Docker が Nodejs マイクロサービスをデプロイする
マイクロサービス アーキテクチャの人気に伴い、Docker コンテナを使用して独自のアプリケーションをデプロイする開発者が増えています。 Dockerには、開発と運用保守の分離強化、アプリケーションのデプロイ時間の短縮など、多くのメリットがあります。この記事では、Docker コンテナを使用して Node.js マイクロサービス アプリケーションをデプロイする方法について説明します。
始める前に、Docker をインストールする必要があります。 Docker の公式 Web サイトでは、さまざまなオペレーティング システム用のインストール パッケージを簡単に見つけることができます (https://www.docker.com/community-edition)。
インストールが完了したら、ターミナルに docker version
と入力して、インストールが成功したかどうかを確認できます。
Docker では、イメージを構築するには Dockerfile ファイルが必要です。このファイルには、イメージの構築に必要なすべての命令が定義されています。
この例では、非常に単純な Node.js マイクロサービスをデプロイします。公式 Node.js イメージ (https://hub.docker.com/_/node/) からイメージを構築できます。アプリケーション コードをイメージにコピーし、依存関係をインストールします。
以下はサンプル Dockerfile です:
FROM node:latest WORKDIR /app COPY package.json /app RUN npm install COPY . /app CMD ["npm", "start"]
以下は簡単な説明です:
FROM ノード:latest
、公式よりNode.js イメージでイメージをビルドします。 WORKDIR /app
、イメージの作業ディレクトリを /app に設定します。 COPY package.json /app
、package.json ファイルを /app ディレクトリにコピーします。 npm install
を実行し、依存関係をインストールします。 COPY . /app
、アプリケーション コードを /app ディレクトリにコピーします。 CMD ["npm", "start"]
は、コンテナーを起動するときのデフォルトのコマンドを定義します。 これで、すでに Dockerfile が完成しました。コマンド docker build
を使用してイメージをビルドできます。
コマンド ラインに次のように入力します:
$ docker build -t my-node-app .
このコマンドの後の .
は、現在のディレクトリ内の Dockerfile を示します。 -t
パラメータは、イメージに名前を付けるために使用されます。ここでは、イメージに my-node-app
という名前を付けます。
イメージを取得したので、コマンド docker run
を使用してコンテナを実行できます。
コマンド ラインに次のように入力します:
$ docker run -p 3000:3000 my-node-app
このコマンドの -p
パラメーターは、コンテナー内のポートをホストにマップするために使用されます。この例では、コンテナのポート 3000 をホストのポート 3000 にマッピングします。このようにして、http://localhost:3000
を通じてアプリケーションにアクセスできます。
コンテナを実行した後、それをメンテナンスする方法を知る必要があります。よく使用されるコマンドをいくつか示します。
docker ps
: 実行中のコンテナを表示します。 docker stop CONTAINER_ID
: コンテナを停止します。CONTAINER_ID
は、停止する必要があるコンテナの ID です。 docker rm CONTAINER_ID
: コンテナを削除します。CONTAINER_ID
は、削除する必要があるコンテナの ID です。 docker イメージ
: イメージのリストを確認してください。 docker rmi IMAGE_ID
: 特定のイメージを削除します。IMAGE_ID
は、削除する必要があるイメージの ID です。 この記事では、Docker コンテナーを使用して Node.js マイクロサービス アプリケーションをデプロイする方法について説明しました。 Dockerfile を使用してイメージを構築し、docker run
コマンドを使用してコンテナーを実行しました。また、コンテナーとイメージの管理に役立ついくつかの一般的なメンテナンス コマンドも学習しました。
Docker コンテナを使用すると、アプリケーションをより簡単にデプロイでき、潜在的な環境や依存関係の競合を回避できるため、作業効率が向上し、アプリケーションの移植性が向上します。
以上がDocker が Nodejs マイクロサービスをデプロイするの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。