WebプロジェクトのDockerデプロイメントの実装

WebプロジェクトのDockerデプロイメントの実装

前回の記事では、docker サービスをインストールしました。引き続き、Web プロジェクトのデプロイ方法を紹介します。

1: ランダムにディレクトリ dock を作成し、以下のファイルを用意します。

2. Dockerイメージを素早く構築できるDockerfileを書く

vi Dockerファイル

次の設定を追加します

Centosより
メンテナー これはドックイメージです <jsh>
jdk1.8.0_191 /usr/local/javaを追加します。
環境変数 JAVA_HOME /usr/local/java
ENV JAVA_BIN /usr/local/java/bin
環境変数 JRE_HOME /usr/local/java/jre
環境変数 PATH $PATH:/usr/local/java/bin:/usr/local/java/jre/bin
ENV CLASSPATH /usr/local/java/jre/bin:/usr/local/java/lib:/usr/local/java/jre/lib/charsets.jar
apache-tomcat-8.5.40 /usr/local/tomcat8 を追加します。
エントリポイント ["/usr/local/tomcat8/bin/catalina.sh","run"]
./manager.war /usr/local/tomcat8/webapps を追加します
エクスポーズ8080

説明する:
(1) FROM centos は、Docker公式リポジトリからcentosベースイメージを取得することを意味します。 (2) ADD jdk1.8.0_191 /usr/local/ は、カレントディレクトリ(Dockerfileと同階層のディレクトリ)にあるjdkをイメージの/usr/local/に追加します。 (3) ENV JAVA_HOME /usr/local/jdk1.8.0_191 は、Java環境変数を設定します。 (4) EXPOSE 8080 は、外部からアクセスできるようにポートを公開します。 (5) CMD /usr/local/tomcat8/bin/catalina.sh run は、コンテナ起動後に実行されるコマンドです。CMDが複数ある場合は、最後のもののみが有効です。

3. イメージを構築する

コマンド: docker build -t dock . (dock. の後にスペース) を実行すると、ビルドが自動的に完了します。ドックは画像​​名を識別します

4. コンテナを実行する

コマンド: docker run -d -p 8060:8080 dock
-dはコンテナをバックグラウンドで実行し、コンテナIDを返すことを意味します。
-p はポート マッピングを使用します。8060:8080 は、コンテナーのポート 8080 をホストのポート 8060 にマッピングすることを意味します。

実行中のコンテナコマンドをすべて表示: docker ps -all

5. テスト展開結果

ip:8060 tomcat ページが表示されたら、コンテナが正常に起動したことを意味します。

これで、Web プロジェクトの Docker デプロイメントの実装に関するこの記事は終了です。Web プロジェクトの Docker デプロイメントに関するより関連性の高いコンテンツについては、123WORDPRESS.COM の以前の記事を検索するか、次の関連記事を引き続き参照してください。今後とも 123WORDPRESS.COM をよろしくお願いいたします。

以下もご興味があるかもしれません:
  • Tomcat および Web アプリケーションの Docker デプロイメントの実装
  • Docker で Tomcat を使用して Web アプリケーションを迅速にデプロイする方法の例
  • Docker コンテナは Jenkins を使用して Web プロジェクトをデプロイします (概要)
  • Docker を使用して Web プロジェクトをデプロイし、イメージ ファイルにパッケージ化する方法の詳細な説明
  • Docker 学習ノート: Java Web システムの Docker デプロイメント

<<:  React プロジェクトにおける axios カプセル化と API インターフェース管理の詳細な説明

>>:  Mapper SQL ステートメント フィールドとエンティティ クラス属性名の関係は何ですか?

推薦する

レスポンシブ Web デザイン手法を実装し、ウォーターフォール モデルに別れを告げる 5 つのステップ (グラフィック チュートリアル)

次の Web デザイン プロジェクトはレスポンシブにする必要があると上司をようやく納得させることがで...

Docker を使用して pypi プライベート リポジトリを構築する方法

1. 建設1. htpasswd.txtファイルを準備するファイルには、パッケージを倉庫にアップロー...

LinkedIn がウェブサイト閲覧を簡素化するためにリニューアル

ビジネス ソーシャル ネットワーキング サイト LinkedIn は最近、ナビゲーション バーとユー...

TS 数値区切り文字とより厳密なクラス属性チェックの詳細な説明

目次概要演算子の改良と正確なinstanceofよりスマートなオブジェクトリテラル推論固有のシンボル...

両側にCSS固定レイアウト、中央に適応レイアウトを実装

フローティング、フローティング埋め込み div、配置、フレックスという 4 つの一般的な方法と原則を...

Linux での VMWare15.5 のインストールに関するチュートリアル

Linux に VMWare をインストールするには、公式 Web サイト https://www....

JS でページのスクリーンショット機能を実装する方法

「ページのスクリーンショット」は、ページポスターの生成、ポップアップ画像の共有など、フロントエンドで...

Linux環境変数の設定戦略の詳細な説明

ソフトウェアのインストールをカスタマイズする場合、多くの場合、環境変数を設定する必要があります。以下...

流星効果を実現する JavaScript キャンバス

この記事では、JavaScriptキャンバスで流星の特殊効果を表示するための具体的なコードを参考まで...

階層化されたピラミッドを実現するための HTML+CSS の例

この記事では主に、HTML+CSS で階層化ピラミッドを実装する例を紹介し、皆さんと共有します。詳細...

VueはExcelテーブルをインポートし、インポートに失敗したデータを自動的にダウンロードします。

次のような要件があります: インポート ボタン。ボタンをクリックして Excel テーブルをインポー...

Linux ネットワークプログラミング機能の簡単な分析

目次1.ソケットを作成する2. ソケットをバインドする3. 聞き手を作る。聞く4. 接続が受け入れら...

英語: リンクタグはIEでhrefを自動的に補完します

英語: IE では、リンク タグによって href が自動的に補完されます。 Ajax Link T...

IDEA を MYSQL データベースに接続するための構成時に失敗する問題の解決策

この記事では、主に、IDEA を MYSQL データベースに接続するための構成時に失敗する問題の解決...

ショッピングカートのスライド削除効果を実装するReactネイティブサンプルコード

基本的にすべてのeコマースプロジェクトにはショッピングカートの機能があります。これはreact-na...