Dockerfileを初期化する プロジェクトの名前が express であると仮定して、express プロジェクトで Dockerfile ファイルを作成して編集します。 $ vim Dockerファイル ノードから:最新 mkdir -p /home/www/express を実行します。 ワークディレクトリ /home/www/express コピー . /home/www/express npmインストールを実行 エクスポーズ3000 エントリポイント ["npm", "run"] CMD ["開始"] このファイルには次のコマンドが含まれています。
イメージを構築する Dockerfile ファイルを書き込んだ後、docker build コマンドを使用してイメージをビルドできます。 $ sudo docker build -t test/express 。 -t パラメータを使用して、イメージに test/express という名前を付けます。ビルド プロセスは次のようになります。 ビルドコンテキストを Docker デーモンに送信しています 29.7 kB ステップ 1/8: registry.src.followme.com:5000/node:v1 から ---> c99c549e8227 ステップ 2/8: mkdir -p /home/www/express-app を実行します ---> 8be9a90629b0 で実行中 ---> b9f584851225 中間コンテナ 8be9a90629b0 を削除しています ステップ 3/8: WORKDIR /home/www/express-app ---> 5072c31f9dd9 中間コンテナ e9dbf4ce3d8b を削除しています ステップ 4/8: コピー . /home/www/express-app ---> a4d1725f15ed 中間コンテナ 30aa49765015 の取り外し ステップ5/8:糸を通す ---> f181c243deaa で実行中 糸インストール v1.3.2 [1/4] パッケージを解決しています... [2/4] パッケージを取得しています... [3/4] 依存関係をリンクしています... [4/4] 新しいパッケージを作成しています... 9.46秒で完了しました。 ---> d390931d73e6 中間コンテナ f181c243deaa を削除しています ステップ 6/8: EXPOSE 3000 ---> 94101ab38864 で実行中 ---> 43199a8a5a90 中間コンテナ 94101ab38864 の削除 ステップ7/8: ENTRYPOINT npm run ---> 80b1318962cf で実行中 ---> 6b203c50e855 中間コンテナ 80b1318962cf を削除 ステップ 8/8 : CMD 開始 ---> a9909e537f59 で実行中 ---> d56eae48377c 中間コンテナを削除しています a9909e537f59 d56eae48377c の構築に成功しました コンテナの実行 イメージがビルドされたら、ビルドされたイメージを使用してコンテナを作成/実行し、Express アプリケーションの Docker デプロイを実現できます。 tets/express イメージを使用してコンテナを実行します。 $ sudo docker run -d --name experss-app -p 3000:3000 test/express 上記の操作では、コンテナを test/express イメージで実行し、コンテナに express-app という名前を付けました。コンテナを実行するときに、コンテナをバックグラウンドで実行するための -d パラメータも指定します。 -p パラメータは、ホストのポート 3000 をコンテナのポート 3000 にマッピングします。コンテナを実行した後、docker ps コマンドを使用して実行中のコンテナを確認できます。これで、localhost:3000 経由でサービスにアクセスできるようになりました。 以上がこの記事の全内容です。皆様の勉強のお役に立てれば幸いです。また、123WORDPRESS.COM を応援していただければ幸いです。 以下もご興味があるかもしれません:
|
<<: Centos6.5 で MySQL 5.7.19 をインストールして設定する方法
問題の説明 (以下の説明は Windows 環境に限定されます): D:\develop\ide\m...
Web デザインにおけるツリーとは何ですか?簡単に言うと、リンクをクリックするとサブディレクトリが展...
CSS の優先順位について話す前に、CSS とは何か、CSS が何に使用されるのかを理解する必要があ...
1. 堂々巡りいろいろ試行錯誤した結果、均等割り付けレイアウトを実現する最も簡単な方法は CSS ...
1. 画像を取得する #Webコントロールページを含むバージョンを指定します docker pull...
目次序文1. 文字列の長さを取得する2. 文字列の指定された位置の値を取得する(1) charAt(...
目次1. はじめに2. フィルター() 3. マップ() 4. ソート() 5. 減らす() 6. ...
Linux で新たに発見された sudo の脆弱性を悪用すると、特定のユーザーが root としてコ...
導入:現在、プログラム攻撃を防ぐために、ユーザーがログインまたは登録するときに多くの動的検証テクノロ...
これはウェブサイトのユーザビリティに関する記事です。著者は自身の経験に基づいて、ウェブサイトのデザイ...
ユーザーの権限に応じて異なるメニュー ページを表示します。知識ポイントルートガード(事前ガードを使用...
目次序文現地調査ケースの再現要約する序文最近、友人が突然WeChatで連絡してきて、MySQLでデー...
ウェブデザイナーを長い間悩ませてきた疑問があります。それは、固定レイアウト、流動的レイアウト、柔軟レ...
序文:非常に遅いクエリとリクエストのタイムアウトのアラートを受け取りました。メトリックを通じて My...
<br /> 第 1 部と第 2 部では、Web サイトのパフォーマンス、ページ コンテ...