Docker コンテナで DockerFile を使用して複数の Tomcat サービスをデプロイする手順

Docker コンテナで DockerFile を使用して複数の Tomcat サービスをデプロイする手順

1.

[admin@JD ~]$ cd opt

#ルートディレクトリにoptと入力

2.

[admin@JD opt]$ mkdir web

#Webフォルダを作成する

3.

[admin@JD web]$ cd web/

#Webフォルダに入る

4.

[admin@JD web]$ Dockerfileをタッチする

#Dockerfile フォルダーを作成します。名前は正しくなければなりません。正しくないと検出できません。

5.

サードパーティのツールを使用して、TomcatとJDKをWebフォルダにアップロードします。

6.

[admin@JD web]$ vim Dockerfile

#ファイルを編集して次の内容を記述します

Centosより
メンテナー
./apache-tomcat-7.0.88.tar.gz /rootを追加します。
./jdk-7u80-linux-x64.tar.gz /root を追加します。
環境変数JAVA_HOME /root/jdk1.7.0_80
環境変数 PATH $JAVA_HOME/bin:$PATH
エントリポイント /root/apache-tomcat-7.0.88/bin/startup.sh && tail -F /root/apache-tomcat-7.0.88/logs/catalina.out

リソースのダウンロード

FROMコマンド、使用法、FROM <image>:<tag>、FROMコマンドはDockerに、構築する(ディストリビューション)イメージがどのイメージに基づいているかを伝えます。

ENVコマンド、使用法、ENV <キー> <値>、ENVコマンドは主にコンテナの実行時に環境変数を設定するために使用されます

ADDコマンド、使用法、ADD <src> <dest>、ADDは主にホストマシン内のファイルをイメージに追加するために使用されます

7.

[admin@JD web]$ docker build -t test/centos:tomcat-centos --rm=true 。

#-t はカスタマイズするリソース名を指定します

# --rm=rtue 指定されていないファイルの生成を減らす

# 一部のファイルが自動的に生成されダウンロードされた後、リクエストがタイムアウトする場合があります。

8.

[admin@JD web]$ docker run -d -p 9090:8080 fe8d

#Tomcatを起動し、ポート8080をポート9090にマッピングします。fe8dリソースIDの最初の4桁

9.

[admin@JD web]$ docker run -d -p 9091:8080 fe8d

# 競合なしで 2 番目の Tomcat ポートを起動します。

10. ブラウザでサーバーのIP + ポート番号を開くと、cat #dockerが自動的にファイアウォールルールを追加することがわかります。私はiptablesファイアウォールを使用しています

dockerfile ファイルをビルドして完了するだけです。

追加知識: Docker でオープンソース オブジェクト ストレージ (minio) を構築する

以前、あるプロジェクトをやったことがあります。顧客は外部ネットワークにデータを取得できなかったため、内部ネットワーク上にしか OSS オブジェクト ストレージを構築できませんでした。私たちは Jidao のプラットフォームを利用してビジネスをしていました。彼らは S3 標準を採用していたので、私たちは minio を使用してオープンソースの OSS オブジェクト ストレージ スペースを構築しました。実際はとても簡単でした。

docker pull minio/minioはリポジトリからイメージをプルします

docker run -p 9000:9000 --name minio1
-e “MINIO_ACCESS_KEY=AKIAIOSFODNN7EXAMPLE”
-e "MINIO_SECRET_KEY=wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY"
-v /mnt/データ:/データ
-v /mnt/config:/root/.minio
minio/minio サーバー /データ

起動する

minioを選ぶ理由についてお話ししましょう

(1)C++インターフェースのサポートが必要です。S3標準を採用しているのでAmazon AWSが利用できます。

(2)これは軽量で、同時実行性の高いソリューションである。

(3)FastDFSやHDFSと比較した場合、フロントエンドディスプレイに一定の実現可能性を確保できるという利点がある。

C++ および Java パッケージは後で投稿します。

Docker コンテナ上で DockerFile を使用して複数の Tomcat サービスを展開する上記の手順は、エディターが皆さんと共有する内容のすべてです。参考になれば幸いです。また、123WORDPRESS.COM をサポートしていただければ幸いです。

以下もご興味があるかもしれません:
  • DockerはDockerfileを使用して、sshサービスの自動起動をサポートするコンテナイメージを作成します。
  • Dockerコンテナ内で2つのプロセスを開始するときのDockerfile実装コード
  • MyEclipse でビルドした Java Web プロジェクトを Docker の Dockerfile コンテナーで実行する
  • Dockerfileを使用してシンプルなコンテナを作成する方法

<<:  MySQL でパーティション分割後にクエリを実装するために MRG_MyISAM (MERGE) を使用する例

>>:  ウェブページの表の分割線を削除する方法

推薦する

JSのアンカーリンクをクリックするとスムーズにスクロールし、自由にトップ位置に調整できます。

アンカーリンクをクリックするとスムーズにスクロールし、自由にトップ位置に調整できます。 1. アンカ...

6つのレイアウトでのFrameLayoutの使用

序文前回はLinearLayoutについて説明しました。今回はFrameLayoutの使い方を説明し...

Vite+ElectronでVUE3デスクトップアプリケーションを素早く構築

目次1. はじめに2. Viteプロジェクトを作成する1. viteをインストールする2. プロジェ...

Alibaba Cloud CentOS 7 に MySQL 8.0.13 をインストールする方法

1. MySQL インストール パッケージをダウンロードします(ここにはコツがあります。おそらく、こ...

Ubuntu 16.04 カーネルのアップグレード手順

1. 環境仮想マシン上で実行されているUbuntu 16.04では、コマンドuname -rを使用し...

MIME TYPEとは?MIME-Typesタイプコレクション

MIME タイプとは何ですか? 1. まず、ブラウザがコンテンツを処理する方法を理解する必要がありま...

Django 2.2 を MySQL データベースに接続する方法

1. プロジェクトの実行時に報告されるエラー情報は次のとおりです。 ファイル "/home...

CentOS 7 ブートカーネルの切り替えとブートモードの切り替えの説明

Centos7 スイッチブートカーネル注: 必要に応じて、最初にyum update -yを実行して...

MySQL コピーテーブルと許可分析の 3 つの実装方法

テーブルを素早くコピーする方法まず、テーブル db1.t を作成し、1000 行のデータを挿入します...

Zabbixで監視する必要があるホストを追加するための詳細な手順

監視ホストの追加ホスト 192.168.179.104 が zabbix 監視項目に追加されます (...

WeChatアプレット開発の章:落とし穴の記録

最近、会社初のミニプログラムの開発に参加しました。開発経験は基本的にWebViewをベースとしたハイ...

MySQL 5.7.23 バージョンのインストールチュートリアルと設定方法

MySQL を自分でインストールするのに 3 時間かかりました。チュートリアルはたくさんあるにもかか...

CSS モジュールソリューション

CSS のモジュール ソリューションは、JS のモジュール ソリューションと同じくらい多く存在すると...

例を通してBRタグとPタグの違いを理解する

<br />改行タグの使用<br>改行タグ<br>は終わりのない...

docker-maven-plugin の詳細な使用方法

目次Docker-Maven-プラグインMavenプラグインの自動デプロイメント手順1. ホストマシ...