Docker を使用して Java 環境を構築する方法
docker は何をしますか?
Docker は、Linux コンテナ (lxc-linux コンテナ) をベースとした高度なコンテナ エンジンであり、Go 言語とソース コードに基づいて開発されています。 github でホストされており、apache2.0 プロトコルに準拠しており、オープンソースです。 docker の目標は、軽量のオペレーティング システム仮想化ソリューションを実装することです。
Docker を学習するには、まずいくつかの概念を理解する必要があります:
イメージ - Docker のイメージは一般的なシステム ISO イメージに似ており、アプリケーション情報が含まれています。
コンテナ - コンテナは実行可能な仮想マシンに相当します。アプリケーションはコンテナ内で実行され、docker は "docker" 上で実行されます。 ウェアハウス - ウェアハウスはイメージが保存される場所です, git と同様に、バージョン管理も 2 つの形式に分かれています: パブリック ウェアハウス (パブリック) とプライベート ウェアハウス (プライベート); docker はほとんどの linux ディストリビューションをサポートします。docker コンテナーを使用すると、さまざまなオペレーティング システムで操作でき、ハードウェア、動作環境、その他の構成を気にすることなく、独自のアプリケーションを独自のマシン上で実行できるため、アプリケーションの移行が非常に簡単になります。 Docker と従来の仮想化テクノロジとの比較
vs
#準備
まず、centos オペレーティング システムを準備する必要があります。仮想マシンも使用できます。特定の構成要件は次のとおりです:2. カーネルは 3.8
以降であることをお勧めします。 docker のインストール
次のコマンドを使用して docker ソフトウェアをインストールするだけですyum -y install docker-io次のコマンドを使用して、docker が正常にインストールされているかどうかを確認できます。
docker version
出力に docker のバージョン番号が表示される場合は、インストールが成功した後、次のコマンドを使用して docker サービスを開始できることを意味します:
service docker start
サービス コマンドを開始できない場合、次のコマンドを使用します
systemctl start docker.service
方法
ソフトウェアのインストールと同じように、まずソフトウェアを書き込んだ CD を用意する必要があります。仮想光学ドライブを使用している場合は、イメージ ファイルを準備し、それを使用してソフトウェアをインストールする必要があります。 docker の世界にはイメージ ファイルもあります。必要なオペレーティング システムがインストールされています。一般的にこれを docker イメージと呼びます。
ダウンロード イメージ
docker search <image>
Use docker pull imagename (ミラー名)ミラーをダウンロードするには
ダウンロードが完了したら、次のコマンドを使用してすべてのローカル ミラーを表示します:
docker images
ダウンロードが完了すると、次のメッセージが表示されます:
repository tag image id created virtual size docker.io/centos centos7 f753707788c5 12 days ago 127.1 mb
上記の出力が表示された場合は、「docker.cn/docker/centos」イメージを使用できるか、それをリポジトリと呼ぶことができることを意味します。イメージには「centos7」という名前のタグがあり、加えて「25c5298b1a36」という名前のイメージ ID (これはランダムに生成されるため、人によって見え方が異なります) コンテナの開始
コンテナが開始されると、コンテナがイメージ内に表示されます、コンテナにログインし、必要なソフトウェアやアプリケーションをインストールできます。
すでに実行中の docker に入るために使用します
docker attach dabfb413d8cf[容器id]
次のコマンドを使用してコンテナを開始します:
docker run -i -t -v /root/software/:/mnt/software/ --privileged=true 2a392a47afc5
docker run <関連パラメータ> <イメージ ID> ; <初期コマンド>
関連するパラメータは次のとおりです:
-i: コンテナを対話モードで実行することを示します
-t: コンテナがコマンドを入力することを示します
-v 開始後の行: どのローカル ディレクトリをコンテナにマウントする必要があるかを示します。形式は、-v<ホスト ディレクトリ>:<コンテナ ディレクトリ>
すべてのインストール プログラムであると仮定します。これはホストの /root/software/ ディレクトリに配置されますが、今度はコンテナの /mnt/software/ ディレクトリにマウントする必要があります。
これがすべて完了したら、このコンテナにソフトウェアをインストールできます。
docker ファイル転送コマンド
docker cp more.log e7de404c00bd:/tmp/ 1f8787b81bcdJava開発環境をインストール
jdk1.7、tomcat7、nginxをインストールする必要があり、パッケージをインストールします。ダウンロードするだけです。公式 Web サイトから入手します
1. jdk をインストールします
まず、jdk パッケージを解凍します:
tar -zxf jdk-7u71-linux-x64.tar.gz –c
それが rpm パッケージの場合
rpm –ivh jdk-7u71-linux-x64.tar.gz
then restart フォルダーに名前を付けます
mv jdk1.7.0_71/ jdk/
最後に環境変数を設定します
vi ~/.bashrc
次の設定をファイルの最後に追加します:
export java_home=/opt/jdk export path=$path:$java_home
·/etc/profile を開きますテキスト エディタ
·プロファイル ファイルの最後に追加します:
export java_home=/usr/share/jdk1.6.0_14 export path=$java_home/bin:$path export classpath=.:$java_home/lib/dt.jar:$java_home/lib/tools.jar
最後に、source コマンドを使用して環境変数を有効にします:
source ~/.bashrc source /etc/profile
1. tomcat
のインストールについても同様で、tomcat パッケージを解凍します:
tar –zxf apache-tomcat-7.0.55.tar.gz
次に、tomcat ディレクトリの名前を変更します:
mv apache-tomcat-7.0.55/ tomcat/
実行スクリプトを作成します。コンテナで、Tomcat を起動するスクリプトを実行します。具体的なプロセスは次のとおりです:
vi /root/run.sh
次に、スクリプトの内容を次のように編集します:
#!/bin/bash source ~/.bashrc sh /opt/tomcat/bin/catalina.sh run
注意:这里必须先加载环境,然后使用tomcat的运行脚本来运行tomcat
最后,为运行脚本添加执行权限:
chmod u+x /root/run.sh
1.安装nginx
先去官网下载源码包注意要是gz的
下载地址
下载完后,解压安装包:
tar -zxvf nginx-1.11.5.tar.gz
然后再配置安装变量,打开解压后的目录-执行命令
cd nginx-1.11.5
配置安装环境
./configure --prefix=/usr/local/servers/nginx “/usr/local/servers/nginx”是安装路径
有可能会出现./configure: error: c compiler cc is not found
这时需要运行命令更新一下gcc
yum install gcc gcc-c++ ncurses-devel perl yum -y install pcre-devel yum -y install zlib-devel yum -y install autoconf libtool make
在解压目录执行:
make
切换到root用户执行安装命令
make install
创建软链
ln –s /usr/local/servers/nginx/sbin/nginx /usr/local/bin/nginx
启动nginx服务
nginx
再用 ps -ef|grep nginx查看是否启动成功
提交docker镜像
首先退出你刚才配置好的docker镜像
exit
然后使用以下命令可以看到刚才退出的docker镜像
docker ps –a
再使用以下命令,根据某个”容器id”来创建一个新的”镜像”:
docker commit 57c312bbaad1 javaweb:0.1
该容器id是”57c312bbaad1”,所创建的镜像名是”javaweb”
注意:”57c312bbaad1” 这个id是使用 docker ps 命令来查看的
提交了新的镜像你可以把这个镜像储存tar包
docker –o ~/javaweb.tar javaweb
docker save –o 保存的目录 镜像名
启动容器
先用 docker images看看当前所有的镜像
启动最新创建的镜像
docker run -d -p 80:80 --name javaweb javaweb:0.1 /root/run.sh
-d:表示以”守护模式”执行/root/run.sh脚本,此时tomcat控制台不会出现在输出终端上。
-p:表示宿主机与容器的端口映射,此时将容器内部的80端口映射为宿主机的 80端口,这样就向外界暴露了80端口,可通过docker网桥来访问容器内部的80端口了
--name:表示容器名称,用一个有意义的名称命名即可
以上がDocker を使用して Java 環境を構築する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ホットAIツール

Undress AI Tool
脱衣画像を無料で

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Clothoff.io
AI衣類リムーバー

Video Face Swap
完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

人気の記事

ホットツール

メモ帳++7.3.1
使いやすく無料のコードエディター

SublimeText3 中国語版
中国語版、とても使いやすい

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

ドリームウィーバー CS6
ビジュアル Web 開発ツール

SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3)

testthepdfinanapptodetermineisisiis withthefileoredge.2.enablethebuiltinpdfviewerbyturningoff "Alwaysopenpdffilesexternally" and "downloadpdffiles" inedgesettings.3.Clearbrowsingdataincluding andcachedfilestororeveren

importjava.ioandjava.net.socketfori/oandsocketCommunication.2.CreateAsocketObjectToConnectTotheServerusingHostNameandport.3.USEPRINTWRITERTOSENDDATAVIAOUTSTREAMANDBUFFEREDEDEDEDEDEDEREDEREDERTOREADEREADSERVERRESPONSESSTREAM.

コンテナ化されたJavaアプリケーション:DockerFileを作成し、Eclipse-Temurin:17-jre-Alpineなどの基本的な画像を使用し、JARファイルをコピーしてスタートアップコマンドを定義し、DockerBuildを介して画像を作成し、Dockerrunでローカルに実行します。 2。画像をコンテナレジストリに押します:Dockertagを使用して画像をマークし、DockerHubやその他のレジストリにプッシュします。最初にdockerloginにログインする必要があります。 3. Kubernetesへの展開:展開を書き込み展開を定義し、レプリカの数、コンテナ画像、リソース制限の数を設定し、service.yamlを作成して作成して作成します

VSCODEでは、ショートカットキーを介してパネルと編集領域をすばやく切り替えることができます。左のエクスプローラーパネルにジャンプするには、Ctrl Shift E(Windows/Linux)またはCMD Shift E(MAC)を使用します。編集エリアに戻って、Ctrl `またはescまたはctrl 1〜9を使用します。マウスの操作と比較して、キーボードのショートカットはより効率的であり、エンコードリズムを中断しません。その他のヒントには、ctrl kctrl eフォーカス検索ボックス、f2の名前変更ファイル、ファイルの削除、開いたファイルの入力、矢印キーの展開/崩壊フォルダー。

runthewindowsupdateTroubleshoterviasettings> update&security> troubleShoottoAutoMonissues.2.resetwindowsupDateComponentsは、related -distributionandCatrot2Folders、restartingtherserviceStocleを削除します

JavaSerializationConvertSanobject'sStateIntoAbyTeStreamForStorageorTransmission、およびseRializationは、objectfromthatstream.1.1.toenablesimementtheRializable Interface.2.usobjectputStreamToseRializeAnobject、Savin

awhileloopinjavarepeatedecutesexecuteslongastheconditionistrue;

Numpyは、Pythonの科学コンピューティングのコアライブラリです。線形代数操作の取り扱いが得意であり、numpy.linalgモジュールで効率的なndarrayアレイと機能を提供します。 1. NP.LinalG.Solve(A、B)を使用して線形方程式システムax = bを解き、ソリューションベクトルXを取得します。 2。マトリックス転置はA.Tを介して実装されます。 3.マトリックス乗算は、np.dot(a、b)またはa@bに使用できます。 4.マトリックス逆はnp.linalg.inv(a)によって計算され、マトリックスは可逆的である必要があります。 5.決定要因は、np.linalg.det(a)によって与えられます。 6.固有値と固有ベクトルはnp.linalg.eig(a)を介して取得され、固有ベクトルは正規化されています。
