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 の完全なデータベース バックアップ データを使用して単一のテーブル データを復元する方法

推薦する

Alibaba Cloud Server に MySQL データベースをインストールする詳細なチュートリアル

目次序文1. MySQLをアンインストールする2. MySQLをインストールする要約する序文学習中に...

Reactフックの長所と短所

目次序文アドバンテージ:欠点: 1. レスポンシブな使用効果2. ステータスが同期されていないRea...

MySQL レプリケーションの利点と原則を詳しく説明します

レプリケーションとは、マスター データベースの DDL および DML 操作をバイナリ ログを介して...

MySQL LOAD_FILE() 関数メソッドの概要

MySQL では、LOAD_FILE() 関数はファイルを読み取り、その内容を文字列として返します。...

一般的な XHTML タグの使用方法の紹介

XHTML には多くのタグがありますが、頻繁に使用されるのはごくわずかであり、習得する必要があるのは...

163 メールボックスログインボックスインタラクティブデザインの改善体験と共有

LOFTER のコンテストで、ログイン ボックスを再設計できると言及されているのを見ました。過去 2...

非常に実用的なMySQL関数の包括的な概要、詳細な例の分析チュートリアル

目次1. MySQLの関数の説明2. 単行関数の分類3. キャラクター機能4. 数学関数5. 日付と...

Vue の新しい組み込みコンポーネントの使用方法の詳細な説明

目次1. テレポート1.1 テレポートの紹介1.2 テレポートの使用1.3 プレビュー効果2. サス...

jQueryはフォーム検証機能を実装します

jQuery フォーム検証の例 / ユーザー名、パスワード、住所、電子メールの検証を含む下記の通り ...

ReactでuseStateを使用する詳細な例

使用状態useState は、関数コンポーネント内で呼び出すことで、コンポーネントに内部状態を追加し...

href をクリックした後にページがジャンプしないようにするための空のリンクの正しい書き方 # 問題

リンクを使用する必要がある場合もありますが、リンクする必要はありません。onclick イベントを処...

MySQL で特定の日、月、または年のデータをクエリするためのコードの詳細な説明

今日 テーブル名から * を選択します。ここで、to_days(時間フィールド名) = to_day...

ウェブページの広告デザインにおけるウェブデザインの寸法とルール

1. 800*600 未満の場合、Web ページの幅が 778 以内であれば、水平スクロール バーは...

iframeフレームはIEブラウザで白い背景を透明に設定します

最近、プロジェクトを進める過程で、ページの階層構造を描画するために iframe を頻繁に使用する必...

Vue の基本入門: Vuex のインストールと使用

目次1. vuexとは何か2. インストールと導入3. vuexの使用4. プロセスの紹介5. 突然...