DockerにJava環境をインストールするための実装手順

DockerにJava環境をインストールするための実装手順

この記事は Linux centos8 をベースにして、docker をインストールし、イメージをプルしてさまざまな環境 (tomcat、mysql、redis など) をインストールする方法です。

DockerにTomcatをインストールする

tomcat をダウンロードします (バージョン番号を指定できます。ここでは最新バージョンがデフォルトでインストールされます。例: docker pull tomcat:9.0.37 )

[root@localhost ~]# docker pull tomcat:9.0.37

起動する

[root@localhost ~]# docker run -d -p 8080:8080 --name tomcat01 tomcat

上記を実行すると、コンテナ http://192.168.32.128:3355/ (私の例) にアクセスできないことがわかります。以下の分析を参照してください。

(TomcatイメージなどのAlibabaの一部のコンテナでは、webapps.distに空のwebappフォルダがあるため、必ずwebapps.distファイルをwebappsディレクトリにコピーしてください)図に示すように

#コンテナディレクトリに入る [root@localhost ~]# docker exec -it tomcat01 /bin/bash
#webapps.dist フォルダに切り替えます root@77e211d23175:/usr/local/tomcat# cd webapps.dist
#ファイルをコピー root@77e211d23175:/usr/local/tomcat# cp -r webapps.dist/* webapps

http://192.168.32.128:8080/ に再度アクセスします (ポート番号は docker のものであることに注意してください)

ちなみに、次回ファイルをコピーしなくて済むように、変更した tomcat を新しいコンテナとして使用することができます (e8c58b381b99 は tomcat コンテナ ID です)

[root@localhost ~]# docker commit -m="Web アプリケーションに必要なファイルを改善する" -a="Zhang Xiaoxiang" e8c58b381b99 tomcat01:9.0.37

DockerでElasticsearchをインストールする

公式インストール方法 https://www.elastic.co/guide/en/elasticsearch/reference/7.5/docker.html

画像をダウンロード

[root@localhost ~]# docker pull elasticsearch:7.9.0

ネットワークを作成するには、esnetなどの名前を付けるだけです。

[root@localhost ~]# docker ネットワーク作成 esnet

単一ノード操作(クラスタ構成なし)

[root@localhost ~]# docker run -d --name elasticsearch --net esnet -p 9200:9200 -p 9300:9300 -e "discovery.type=single-node" elasticsearch:7.9.0

正常に実行されるかどうかを確認します (まだ起動中の場合は、curl: (56) Recv failure: Connection reset by peer が報告されます)。もちろん、ブラウザを使用してテストすることもできます (ファイアウォールはオフになっていることに注意してください)。

[root@localhost ~]# curl localhost:9200

起動成功例

Dockerはmysqlをインストールします

画像をダウンロード

[root@localhost dcoekrdata]# docker pull mysql:8.0.21

実行 (-d バックグラウンド実行、-v データマウント -e 環境設定)

[root@localhost dcoekrdata]# docker run -d -p 3306:3306 -v /home/dockerdata/mysql/conf:/etc/mysql/conf.d -v /home/dockerdata/mysql/data:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=root --name root mysql:8.0.21

Navicat を使用してテストしてください。

RocketMq の Docker インストール

これには3つのイメージをインストールする必要があることに注意してください。ドキュメントを参照してください。

https://www.jb51.net/article/202117.htm

1: mqをインストールする

[root@localhost dcoekrdata]# docker pull rocketmqinc/rocketmq:4.3.2

MQサーバーを実行する

docker run -d -p 9876:9876 -v /home/dockerdata/mq/namesrv/logs:/root/logs -v /home/dockerdata/mq/namesrv/store:/root/store --name rmqnamesrv -e "MAX_POSSIBLE_HEAP=100000000" rocketmqinc/rocketmq:4.3.2 sh mqnamesrv

2: ブローカーをインストールする

[root@localhost dcoekrdata]# docker pull rocketmqinc/rocketmq-broker:4.5.0-alpine-uid

ブローカーの設定

[root@localhost dcoekrdata]# cd /home/dockerdata/mq
[root@localhost mq]# mkdir ブローカー
[root@localhost mq]# cd ブローカー/
[root@localhost broker]# broker.conf をタッチします 
[root@localhost broker]# vi broker.conf

構成ファイル (brokerIP1 = 192.168.32.128 はクラウド サーバーのパブリック IP、または Linux 仮想マシンの IP です。この記事は単なる例です)

terName = デフォルトクラスタ 
ブローカー名 = ブローカー-a 
ブローカーID = 0 
削除時 = 04 
ファイル予約時間 = 48 
ブローカーロール = ASYNC_MASTER 
フラッシュディスクタイプ = ASYNC_FLUSH 
ブローカーIP1 =192.168.32.128

ブローカーを起動する

docker run -d -p 10911:10911 -p 10909:10909 -v /home/dockerdata/mq/broker/logs:/root/logs -v /home/dockerdata/mq/broker/store:/root/store -v /home/dockerdata/mq/broker/broker.conf:/opt/rocketmq-4.3.2/conf/broker.conf --name rmqbroker --link rmqnamesrv:namesrv -e "NAMESRV_ADDR=namesrv:9876" -e "MAX_POSSIBLE_HEAP=200000000" rocketmqinc/rocketmq:4.3.2 sh mqbroker -c /opt/rocketmq-4.3.2/conf/broker.conf

3: コンソールrocketmq-console-ngをインストールする

[root@localhost broker]# docker pull styletang/rocketmq-console-ng:1.0.0

コンソールを起動します( IPアドレスをメモします

[root@localhost ブローカー]# docker run -e "JAVA_OPTS=-Drocketmq.namesrv.addr=192.168.32.128:9876 -Dcom.rocketmq.sendMessageWithVIPChannel=false" -p 8080:8080 -t styletang/rocketmq-console-ng:1.0.0

インストールは成功し、テストは図のとおりでした

これで、Docker に Java 環境をインストールする実装手順に関するこの記事は終了です。Docker に Java 環境をインストールすることに関するより関連性の高いコンテンツについては、123WORDPRESS.COM の以前の記事を検索するか、以下の関連記事を引き続き参照してください。今後とも 123WORDPRESS.COM をよろしくお願いいたします。

以下もご興味があるかもしれません:
  • Dockerを使用してJava環境を構築する手順
  • Dockerfile を使用して Java ランタイム環境のミラーを作成する方法
  • Dockerfile デプロイメント Java Web 環境の詳細な説明
  • Docker を使用して Java Web ランタイム環境を構築する方法の詳細な説明
  • Dockerfile を使用して Java Web 環境を構築する
  • Dockerを使ったフロントエンドJava開発環境の構築の詳細な説明
  • Docker で JAVA Tomcat オペレーティング環境を構築する方法
  • Dockerを使用してJava Webランタイム環境を構築する方法を説明します。
  • Dockerを使用してシンプルなJava開発およびコンパイル環境を構築する方法の詳細な説明

<<:  VUEユニアプリ開発環境についての簡単な説明

>>:  XHTML 入門チュートリアル: XHTML タグ

推薦する

年末ですが、MySQL パスワードは安全ですか?

序文:年末です。データベースを検査する時期ではないでしょうか?一般的に、検査では、パスワードの複雑さ...

mysql エラー 1045 (28000) - ユーザーへのアクセスが拒否される問題を解決する方法

問題の説明 (以下の説明は Windows 環境に限定されます): D:\develop\ide\m...

DockerでGit環境を構築して構成するプロセス

DockerでGit環境を構成する仕事上、Docker 環境で GitLab リポジトリを操作する必...

CSS3 rgb と rgba (透明色) の使い方の詳しい説明

誰もが色にとても敏感だと思います。私たちの目が見るところにはどこにでも色があります。では、CSS で...

アクセス速度を上げるためにウェブサイトを最適化する方法の更新

最近、同社はitpubを皮切りに、コーポレートウェブサイト傘下の全サイトの評価を開始した。そのために...

MySQL の複合インデックスはどのように機能しますか?

目次背景複合インデックスを理解する左端一致原則フィールド順序の影響複合インデックスは単一のインデック...

Nginxリバースプロキシ設定でプレフィックスが削除される

nginx をリバース プロキシとして使用する場合、リクエストをそのまま次のサービスに転送するだけで...

データ型の判断における js typeof と instanceof の違いと、その開発と使用について

目次1. typeof演算子2. インスタンスオブ演算子3. typeof と instanceof...

React における ref の一般的な使用法の概要

目次Refsとは何か1. 文字列型参照2. コールバック参照React.createRef() 4....

Alibaba Cloud ECSインスタンスのユーザールートパスワードとリモート接続方法を設定する方法

Alibaba Cloud サーバーを購入した後、新しいインスタンスが正常に動作できるようにするには...

H5ゲームをnginxサーバーにデプロイする方法の詳細な説明

自己学習型ゲーム開発の道において、最も充実した瞬間は、自分でミニゲームを作り、友達と共有して試しにプ...

js SMS認証コード入力ボックスを手動で実装する

序文この記事では、私が手動で実装したフロントエンドの一般的な SMS 認証コード入力コンポーネントと...

JavaScript でシンプルなクリスマス ゲームを実装する

目次序文成果を達成するコードCSSコードJSコードHTMLコードデモンストレーションのプロセス序文ク...

JavaScript バブルソートの例

目次1. バブルソートとは何か2. 例を挙げるラウンド1:第2ラウンド:第3ラウンド:第4ラウンド:...

HTMLの基礎 HTMLの構造

HTML ファイルとは何ですか? HTML は Hyper Text Markup Language...