Tomcat イメージをインストールして Docker に Web プロジェクトをデプロイする方法を簡単に説明します。

Tomcat イメージをインストールして Docker に Web プロジェクトをデプロイする方法を簡単に説明します。

1. Tomcatをインストールする

1. Docker HubでTomcatイメージを見つける

docker 検索 tomcat 

ここに写真の説明を記入してください

2. 公式画像を取得する

docker プル tomcat

ここに写真の説明を記入してください

ダウンロードが完了するまでお待ちください。時間がかかる場合があります。

ここに写真の説明を記入してください

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

Docker イメージ

ここに写真の説明を記入してください

4. tomcatイメージを起動する

注: 前者は外部アクセスポート、後者はコンテナ内部ポートです

docker run -d -p 8080:8080 tomcat

ここに写真の説明を記入してください

注: 前者は外部アクセスポート、後者はコンテナ内部ポートです。次のコマンドはTomcatをバックグラウンドで起動できます。
-d: コンテナをバックグラウンドで実行し、コンテナ ID を返します。
-i: コンテナを対話モードで実行します。通常は -t と一緒に使用されます。
-t: コンテナの疑似入力端子を再割り当てします。通常は -i と一緒に使用されます。

docker run –d -p 8080:8080 tomcat

ここに写真の説明を記入してください

起動は次のように成功します。

ここに写真の説明を記入してください

5. 実行中のコンテナを表示する

ドッカーps

ここに写真の説明を記入してください

tomcat ホームページを表示するには、IP とポートを入力します。

ここに写真の説明を記入してください

2. 独自のWebプロジェクトをTomcatにデプロイする

1. 戦争パッケージをアップロードする

ここに写真の説明を記入してください

2. 次の内容で「Dockerfile」を作成し、編集します。

トムキャットから
メンテナー *********@163.com 
rm -rf /usr/local/tomcat/webapps/* を実行します。
button.war をコピー /usr/local/tomcat/webapps
ENV TZ=アジア/上海
実行 ln -snf /usr/share/zoneinfo/$TZ /etc/localtime && echo $TZ > /etc/timezone

例:

tomcat から #Tomcat ミラー MAINTAINER *********@163.com #作成者 COPY button.war /usr/local/tomcat/webapps #Tomcat の webapps ディレクトリに配置

3. 新しい画像を生成する

docker build -t button:v1 を実行します。

ここに写真の説明を記入してください

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

docker run -d -p 8080:8080 ボタン:v1

ここに写真の説明を記入してください

5. 起動した画像を確認する

パラメータ -itd を追加して、Tomcat をバックグラウンドで起動し、起動したイメージを次のように表示することができます。

ドッカーps

ここに写真の説明を記入してください

6. Tomcat でプロジェクトを表示するには、次のコマンドを使用して Tomcat イメージを入力します。

docker exec -it ******* /bin/bash #****** はコンテナ ID (CONTAINER_ID) です

ここに写真の説明を記入してください

イメージを入力した後、いくつかのパラメータを変更する場合は、通常、vim を例にとると、テキスト エディタをインストールする必要があります。
ダウンロード先が海外アドレスのため、ダウンロード速度が非常に遅く、中断される可能性がありますので、以下の設定を行ってください。

mv /etc/apt/sources.list /etc/apt/sources.list.bak
  echo "deb http://mirrors.163.com/debian/ jessie main non-free contrib" >/etc/apt/sources.list
  echo "deb http://mirrors.163.com/debian/ jessie-proposed-updates main non-free contrib" >>/etc/apt/sources.list
  echo "deb-src http://mirrors.163.com/debian/ jessie main non-free contrib" >>/etc/apt/sources.list
  echo "deb-src http://mirrors.163.com/debian/ jessie-proposed-updates main non-free contrib" >>/etc/apt/sources.list

更新する
適切なアップデート
これで、vimなどの必要なソフトウェアをインストールできます。
apt をインストール

7. 表示するIPとポートを入力します

ここに写真の説明を記入してください

8. 指定したコンテナのログを表示できます

docker ログ -f コンテナ ID

ここに写真の説明を記入してください

9. Web プロジェクトをデプロイした後、Docker コンテナとホスト、Docker コンテナと Tomcat アプリケーションがログを出力する時間が、現在の時間から 8 時間ずれることがあります。次の構成を追加できます。

① コンテナを起動するときに、システム時間をコンテナにマウントして、Dockerコンテナとホスト時間の不一致の問題を解決します。
パラメータの追加

-v /etc/localtime:/etc/localtime:ro

完全なコマンドは次のとおりです。

sudo docker run -d --name button-api -p 8080:8080 -v /etc/localtime:/etc/localtime:ro button-api:v1

② docker コンテナと tomcat アプリケーションのログ出力時間が一致しません。tomcat コンテナを起動した後、tomcat の「bin」ディレクトリに入り、catalina.sh ファイルを変更して、コメントの後の最初の行に次の内容を追加します。

JAVA_OPTS="$JAVA_OPTS -Dfile.encoding=UTF8 -Duser.timezone=GMT+08"

次の図に示すように:

ここに写真の説明を記入してください

変更を保存したら、Docker コンテナを再起動します。
再起動方法:
「docker ps」を使用してコンテナ ID を照会し、次のコマンドを使用して再起動します。

docker コンテナ ID を再起動

これによって問題は解決されます。

これで、Tomcat イメージを Docker で簡単にインストールして、Web プロジェクトをデプロイする方法についての説明は終わりです。Tomcat イメージを Docker でインストールしてデプロイする方法についてさらに詳しく知りたい場合は、123WORDPRESS.COM の以前の記事を検索するか、以下の関連記事を引き続き参照してください。今後とも 123WORDPRESS.COM をよろしくお願いいたします。

以下もご興味があるかもしれません:
  • IDEA を使用して Web プロジェクトを作成し、Tomcat に公開する方法
  • Spring Boot に埋め込まれた Tomcat を削除し、非 Web 方式で起動する方法
  • IDEA 2020.3.1 で Tomcat をデプロイし、最初の Web プロジェクトを作成するプロセスの詳細な説明
  • Tomcat 初回展開 Web プロジェクト プロセス図
  • tomcatがプロジェクトをリリースした後にWEB-INF/classesの下のファイルがコンパイルされない問題を解決します。
  • SpringBoot webSocketリソースをロードできず、Tomcat起動エラーが発生する問題を解決します
  • Tomcat サーバーの設定と Web プロジェクトの公開に関する IDEA グラフィック チュートリアル
  • Alibaba Cloud Server Linux システムは Tomcat を構築して Web プロジェクトを展開します
  • Tomcat と WebLogic で純粋な HTML ファイルを展開するプロセスの分析
  • IDEA2020.1.2 Webプロジェクトの作成とTomcatの設定に関する詳細なチュートリアル
  • Tomcat を設定して IntelliJ IDEA 2018 で最初の Java Web プロジェクトを実行する方法
  • Idea は、Web プロジェクトを開始するように Tomcat を設定します。グラフィック チュートリアル
  • Java Web プロジェクトが Tomcat エラーの解決を開始する
  • Webリクエストと処理のTomcatソースコード分析

<<:  mySQLキーワードの実行優先度の説明

>>:  Vueキャッシュ機能の使い方

推薦する

HTML で 2 つの div タグの間に垂直線を描く方法

最近、インターフェースを描画しているときに、インターフェースに垂直線を描画し、この垂直線の高さが親 ...

CSSはリストのスタイルを設定し、ナビゲーションメニューの実装コードを作成します。

1. リストシンボルを設定するlist-style-type: attribute; //リストの...

CSS3 で画像ドロワー効果を実装するためのサンプル コード

いつものように、まずは画像効果を投稿しましょう: このエフェクトの原理は非常にシンプルです。CSS3...

WeChatミニプログラムマップの使い方を詳しく解説

この記事の例では、WeChatアプレットマップで使用される具体的な実装コードを参考までに共有していま...

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

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

nginx での listen ディレクティブの例の分析

プロットレビュー前回の記事では、ロケーション命令の解析プロセスを分析しました。この内容を簡単に確認し...

JDBC-idea で mysql をインポートして java jar パッケージに接続する (mac)

序文1. この記事ではMySQL 8.0バージョンを使用していますバージョン5.0と比較すると、パッ...

mysql8.0.12 でルートパスワードをリセットする方法

データベースをインストールした後、誤ってインストール ウィンドウを閉じたり、長期間 root ユーザ...

HTTP および HTTP コラボレーション Web サーバー アクセス フロー図

Web サーバーは、独立したドメイン名を持つ複数の Web サイトを構築できるほか、通信経路上のトラ...

WeChatアプレットのサイレントログインとカスタムログイン状態の維持の詳細な説明

目次1. 背景2. サイレントログインとは何ですか? 3. カスタムログイン状態を維持する方法4. ...

MySQLは外部SQLスクリプトファイルのコマンドを実行します

目次1. SQLコマンドを含むSQLスクリプトファイルを作成する2. SQLスクリプトファイルを実行...

JSコードコンパイラMonacoの使い方

序文私が必要としているのは、構文の強調表示、関数プロンプト、自動行折り返し、およびコードの折りたたみ...

HTML の 2 つのタブ ナビゲーション間の競合の解決方法

まず問題の説明から始めましょう:同じページで、1 つのタブに float:left が必要で、もう ...

Linux環境で環境変数を設定する方法

JDKダウンロードアドレス: http://www.oracle.com/technetwork/j...

Windows ホストと Docker コンテナに共有フォルダを設定してマウントする手順

Docker コンテナ内のプログラムは、ホスト ディレクトリ内のデータにアクセスして呼び出す必要があ...