Tomcat および Web アプリケーションの Docker デプロイメントの実装

Tomcat および Web アプリケーションの Docker デプロイメントの実装

1.dockerをオンラインでダウンロードする

yum インストール -y epel-release

yum install docker-io # docker をインストールします

chkconfig docker on # 起動するサービスを追加 docker start # docker サービスを開始

2. DockerでTomcatコンテナをインストールする

2.1. サーバーのTomcat情報を見つける

# docker 検索 tomcat 

這里寫圖片描述

2.2 最も高いスタートの公式イメージをダウンロードする

docker プル docker.io/tomcat

2.3 すべてのDockerイメージを表示する

Docker イメージ

這里寫圖片描述

2.4 Tomcatを起動する

docker run -p 8081:8080 docker.io/tomcat # ポートが占有されている場合は、コンテナとホストのマッピングポートを指定できます。前者は外部アクセスポート、後者はコンテナの内部ポートです。 

這里寫圖片描述

2.5 起動後、192.168.138.132:8080にアクセスできます。

這里寫圖片描述

3. 独自のWebリファレンスを展開する

docker ps # 実行中のコンテナを表示するには次のコマンドを使用します

這里寫圖片描述

3.1. ホストに独自のwarパッケージをアップロードする

這里寫圖片描述

3.2. コンテナcomcatを実行してアドレスを表示する

docker exec -it 3cb492a27475 /bin/bash #真ん中にあるのはコンテナID(CONTAINER_ID)です

這里寫圖片描述

3.3 warパッケージをホストマシンにドロップし、コンテナにドロップしてtomcat/webappsにドロップします。

docker cp NginxDemo.war 3cb492a27475 :/usr/local/tomcat/webapps

3.4. tomcatを起動するか、docker restart [コンテナID]を再起動します。

docker run -p 8081:8080 docker.io/tomcat

3.5 イメージが開始されたかどうかを確認する

ドッカーps 

這里寫圖片描述

3.6 コンテナcomcatでプロジェクトを実行して表示する

docker exec -it 3cb492a27475 /bin/bash #真ん中にあるのはコンテナID(CONTAINER_ID)です 

cd /webapps

ls # プロジェクトを見ることができます

3.7 上記の実行には、コンテナを再起動するとプロジェクトが存在しなくなるという欠点があります。以下は、マウントして起動する方法2です。

docker run -d -v /usr/docker_file/NginxDemo.war:/usr/local/tomcat/webapps/NginxDemo.war -p 8080:8080 docker.io/tomcat

3.8 コードを頻繁に変更する必要があるため、最初の 2 つの方法はテスト環境で使用することを推奨します。方法 3 は本番環境で使用できます。これは公式サイトでも推奨されている方法です

vi Dockerファイル

from docker.io/tomcat:latest #Tomcat イメージ MAINTAINER [email protected] #作成者 COPY NginxDemo.war /usr/local/tomcat/webapps #Tomcat の webapps ディレクトリに配置します

這里寫圖片描述

3.8.1 新しいイメージを生成する:

nginx-demo をビルドします。 

這里寫圖片描述

3.8.2 新しいイメージを開始する

docker run -p 8080:8080 nginx-demo:v1 

這里寫圖片描述

他の

# 基本情報 dockerのバージョンを表示

# クライアント、サーバー、依存する Go などを含む docker のバージョン番号を表示します。docker info 
# 管理対象イメージ、コンテナの数など、システム (docker) レベルの情報を表示します。

以上がこの記事の全内容です。皆様の勉強のお役に立てれば幸いです。また、123WORDPRESS.COM を応援していただければ幸いです。

以下もご興味があるかもしれません:
  • Docker で Tomcat を使用して Web アプリケーションを迅速にデプロイする方法の例
  • tomcatのDocker自動デプロイの詳しい説明
  • Docker で Tomcat および Java アプリケーションをデプロイする詳細な手順
  • dockerを使用してTomcatをデプロイし、Skywalkingに接続する

<<:  知っておくべき JS 配列削減の高度な使い方 25 選

>>:  MySQL の完全なデータベース バックアップ データを使用して単一のテーブル データを復元する方法

推薦する

CSS3 の display:grid、グリッドレイアウトの紹介

1. グリッドレイアウト(グリッド): Web ページをグリッドに分割し、さまざまなグリッドを組み合...

JS で Websocket ベースのマルチターミナル ブリッジング プラットフォームを実装する方法

目次1. デバッグ対象2. WebSocketの機能3. ソケット接続を確立する3.1 部屋の作成方...

jsは配列の平坦化を実装します

目次配列をフラット化する方法1.flat() の使用2. 正規表現を使用する3.reduce()+c...

MySQL Server 8.0.3 のインストールと設定方法のグラフィックチュートリアル

この文書はMySQL Server 8.0.3のインストールと設定方法を参考のために記録したものです...

MySQLで行または列をソートする方法

方法:説明: どちらも達成できません:方法1: sp_product から sp.productid...

Websocket に基づくシンプルなチャットルームダイアログの実装

この記事では、WebSocketを使用して簡単なチャットルームの会話を実装するための具体的なコードを...

さまざまなブラウザでのhrタグの説明

通常、人事担当者と会うことはめったにありませんが、一度会うと、それが生死を分けることもあります。 H...

Vueにおけるキーの役割と原理の詳細な説明

目次1. 結論から始めましょう2. キーの役割2.1 例2.2 上記の例を修正する2.3 例を再度修...

Vueでスワイパープラグインを使用する際の問題を解決する

デモを作成するときにこのプラグインを使用していくつか問題が発生したため、プラグインの使用方法といくつ...

プロフェッショナルなMySQL開発設計仕様とSQL記述仕様

チーム開発のプロセスでは、プロジェクトの安定性、コードの効率性、管理の利便性のために、内部開発および...

Vue Element-ui はツリーコントロールノードを実装し、アイコンを追加します。詳細な説明

目次1. レンダリング2. データをバインドし、ツリーテーブルにラベルを追加する3. すべてのコード...

Docker は固定コンテナ IP アドレスを実現するためにカスタム ネットワークを作成します。

デフォルトのブリッジ ネットワークのため、コンテナーを再起動すると IP アドレスが変更されます。シ...

Vueバックグラウンド管理に多言語機能を追加する例

目次1.まず、main.jsページを設定します2. 対応するパスの下で言語パックを構成します。ここに...

Zabbix が MySQL のマスター/スレーブ状態を監視する方法の詳細な説明

MySQLマスタースレーブを設定した後、スレーブの状態が正常かどうかわからないことが多く、例外が発生...

Nginx プロセス管理とリロードの原則の詳細な説明

プロセス構造図Nginx はマルチプロセス構造です。マルチプロセス構造は、次のような Nginx の...