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 タグ

推薦する

星のきらめき効果を実現するネイティブ js

この記事の例では、星のきらめき効果を実現するためのjsの具体的なコードを共有しています。具体的な内容...

MySQL並列レプリケーションの簡単な説明

1. 並列レプリケーションの背景まず、並列レプリケーションの概念はなぜ存在するのでしょうか? 1. ...

Ubuntu 18.04 Linux システムに JDK と Mysql をインストールする方法

プラットフォームの展開1. JDKをインストールするステップ1. OracleJDKをダウンロードす...

JavaScript でオブジェクトのプロパティを削除する方法

1. 削除delete は、オブジェクトのプロパティを残さずに削除する唯一の方法ですが、その「代替」...

mysql ワイルドカード (sql 高度なフィルタリング)

目次まず、値の一部と一致させるために使用される特殊文字であるワイルドカードについて簡単に紹介します。...

Linux コマンドライン操作 Baidu クラウドのファイルのアップロードとダウンロード

目次0. 背景1. インストール2. Baidu Cloudアカウントにログインする3. ファイルを...

CSS エラスティック ボックス flex-grow、flex-shrink、flex-basis の詳細な説明

3 つの属性 flex-grow、flex-shrink、flex-basis の機能は次のとおりで...

この記事ではJavaScriptの基本であるディープコピーとシャローコピーについて説明します。

目次浅いコピーディープコピー補充する要約するコピー(クローン、複製などとも呼ばれる)ですが、ディープ...

Vue3 (III) ウェブサイトホームページレイアウト開発

目次1. はじめに2. 実際の事例1. App.vueを変更する2. レイアウトを調整する3. ジャ...

Docker で Confluence をデプロイする

1. 環境要件1. Docker 17以上がインストールされている2. コンテナ操作docker r...

MySQL Index Pushdown (ICP) とは何かを理解するための記事

目次1. はじめに2. 原則III. 実践3.1 インデックスプッシュダウンを使用しない3.2 イン...

JavaScript でプロパティハイジャックを実装する方法 defineProperty

目次序文記述子getとsetの詳細な説明オブジェクトの属性の乗っ取りオブジェクトのすべてのプロパティ...

MySQL 5.x の文字化け問題の解決方法

MySQL はよく使われるオープンソースのデータベース ソフトウェアですが、初めてのユーザーにはあま...

VSCode の JS フォーマットでセミコロンを自動的に追加または削除する方法について

導入js コード文の末尾にセミコロンを追加しても追加しなくても問題ありません。一般的に、チームで開発...

Linux ログ表示方法 6 つのまとめ

バックエンド プログラマーは、さまざまな場所で Linux を扱います。Linux ログの読み方がわ...