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キャッシュ機能の使い方

推薦する

Linux で JDK をインストールして環境変数を設定する方法 (この記事で十分です)

目次1. Linuxのビット数を確認する2. JDKをダウンロードする3. JDKをインストールする...

HTML で点線の境界線を設定する方法

CSSスタイルとHTMLタグ要素を使用するさまざまな HTML タグに点線の境界線を追加するために、...

jQueryはフォーム検証を実装する

jQueryを使用してフォーム検証を実装します。参考までに、具体的な内容は次のとおりです。登録.ht...

Linux のリンク解除機能とファイルの削除方法

1. リンク解除機能ハード リンクの場合、unlink はディレクトリ エントリを削除し、inode...

react setStateの詳細な説明

目次setState は同期ですか、それとも非同期ですか?カスタム合成イベントと React フック...

mysql binlog ログを正しくクリーンアップする 2 つの方法

mysqlはbinlogログを正しくクリーンアップします序文: MySQL の binlog はデー...

Vue実戦記録のログインページの実装

目次1. 事前準備1.1 Node.jsをインストールする1.2 webpackをインストールする1...

MySQLのロック機構に関する最も包括的な説明

目次序文グローバルロック完全なデータベース論理バックアップFTWRL と set global re...

高性能なウェブサイトのための14のテクニック

オリジナル: http://developer.yahoo.com/performance/rule...

複数レベルの複雑な動的ヘッダーの avue-crud 実装例

目次序文バックグラウンドデータの結合フロントエンドデータ表示ページ効果表示Avue.js は、既存の...

Linux で MySQL スケジュールタスクを実装する方法

前提: ストアド プロシージャは、毎日午後 10 時から午前 5 時まで 10 分ごとに実行されます...

メタタグを簡単に説明すると

META タグは、一般的に タグと呼ばれ、HTML Web ページのソース コード内の重要な HTM...

WeChat公式アカウントでReactプロジェクトを実行する方法

目次1. a タグを使用して PDF をプレビューまたはダウンロードします。書き方は、携帯電話でクリ...

CentOS での MySQL ワークベンチのインストールと設定のチュートリアル

この記事では、MySQL Workbenchのインストールと設定のチュートリアルを参考までに紹介しま...