一区二区三区在线-一区二区三区亚洲视频-一区二区三区亚洲-一区二区三区午夜-一区二区三区四区在线视频-一区二区三区四区在线免费观看

服務器之家:專注于服務器技術及軟件下載分享
分類導航

云服務器|WEB服務器|FTP服務器|郵件服務器|虛擬主機|服務器安全|DNS服務器|服務器知識|Nginx|IIS|Tomcat|

服務器之家 - 服務器技術 - 服務器知識 - 使用Docker搭建Java環境的步驟方法

使用Docker搭建Java環境的步驟方法

2021-02-04 17:02我是一個菜鳥哦 服務器知識

本篇文章主要介紹了使用Docker搭建Java環境的步驟方法,小編覺得挺不錯的,現在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧

Docker是干什么的

Docker 是一個基于Linux容器(LXC-linux container)的高級容器引擎,基于go語言開發,源代碼托管在 Github 上, 遵從Apache2.0協議開源。Docker的目標是實現輕量級的操作系統虛擬化解決方案。

學習Docker首先要了解幾個概念:

鏡像—Docker的鏡像和常見的系統ISO鏡像類似,包含了應用程序的信息;

容器—容器相當于一個可以運行起來的虛擬機,應用程序運行在容器中,Docker運行在“Docker”上;

倉庫—倉庫是存放鏡像的地方,有類似git的版本控制,同樣分為公開倉庫(Public)和私有倉庫(Private)兩種形式;

Docker支持大部分的Linux發行版,通過使用Docker容器,就可以在不同的操作系統,不同的機器上運行自己的應用,不用關心硬件、運行環境之類的配置,應用程序的遷移變得非常簡單。

 Docker和傳統虛擬化技術的對比

相比傳統虛擬機技術,Docker資源占用少,啟動更快,很大的方便了項目的部署和運維。

Docker是在操作系統層面上實現虛擬化,復用本地主機的操作系統,傳統方式是在硬件的基礎上,虛擬出多個操作系統,然后在系統上部署相關的應用。

這張圖片很形象的說明了Docker和VM之類的傳統虛擬化技術的區別:

使用Docker搭建Java環境的步驟方法 vs使用Docker搭建Java環境的步驟方法

準備

首先需要準備一個CentOS的操作系統,虛擬機也可以。具體配置要求如下:

1.必須是64位操作系統
2.建議內核在3.8以上

安裝Docker

只需要通過以下命令即可安裝Docker軟件

?
1
yum -y install docker-io

可使用以下命令,查看Docker是否安裝成功:

?
1
docker version

如果輸出看Docker的版本號,則說明安裝成功了,可通過以下命令啟動Docker服務:

?
1
service docker start

如果service命令啟動不了用下面的

?
1
systemctl start docker.service

做法

就像安裝軟件一樣,我們首先需要有一張刻錄了該軟件的光盤,如果使用的是虛擬光驅,那么就需要準備鏡像的文件,通過它來安裝軟件。在Docker的世界里,也是有鏡像的文件的,已經安裝我們所需的操作系統,我們一般稱為Docker鏡像

下載鏡像

?
1
docker search <image>

使用docker pull imagename(鏡像名)來下載鏡像

下載完成后使用以下命令查看本地所有的鏡像:

?
1
docker images

當下載完成后,你應該會看到:

?
1
2
REPOSITORY        TAG         IMAGE ID      CREATED       VIRTUAL SIZE
docker.io/centos   centos7       f753707788c5    12 days ago     127.1 MB

如果看到以上輸出,說明你可以使用 “docker.cn/docker/centos”這個鏡像了,或將其稱為倉庫(Repository),該鏡像有一個名為”centos7”的標簽(Tag),此外還有一個名為”25c5298b1a36”的鏡像ID(這個是隨機生成,所以每個人看到的都不一樣)

啟動容器

容器是在鏡像的基礎上來運行的,一旦容器啟動了,我們就可以登錄到容器中,安裝自己所需的軟件或應用程序。 

使用進入已經運行的docker

?
1
docker attach dabfb413d8cf[容器ID]

使用以下命令即可啟動容器:

?
1
docker run -i -t -v /root/software/:/mnt/software/ --privileged=true 2a392a47afc5

docker run <相關參數> <鏡像 ID> <初始命令>

其中相關參數包括:

-i:表示以交互模式運行容器

-t:表示容器啟動后會進入其命令行

-v:表示需要將本地哪個目錄掛載到容器中,格式-v<宿主機目錄>:<容器目錄>

假設我們的所有安裝程序都放在了宿主機的/root/software/目錄下,現在需要將其掛載到容器的/mnt/software/目錄下。

這一切做好后你就可以為這個容器安裝軟件了。

Docker 傳送文件命令

?
1
2
3
docker cp more.log e7de404c00bd:/tmp/
 
1f8787b81bcd

安裝Java開發環境

我們需要安裝的有jdk1.7,、tomcat7、nginx,安裝包去官網下載就行了

1.安裝jdk

首先,解壓JDK程序包:

?
1
tar -zxf jdk-7u71-linux-x64.tar.gz –C

如果是rpm包

?
1
rpm –ivh jdk-7u71-linux-x64.tar.gz

然后重命名文件夾

?
1
mv jdk1.7.0_71/ jdk/

最后配置環境變量

?
1
vi ~/.bashrc

在文件末尾添加如下配置:

?
1
2
3
export JAVA_HOME=/opt/jdk
 
export PATH=$PATH:$JAVA_HOME

·用文本編輯器打開/etc/profile 

 ·在profile文件末尾加入:

?
1
2
3
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命令,讓環境變量生效:

?
1
2
3
source ~/.bashrc
 
source /etc/profile

1.安裝Tomcat

也是一樣,解壓Tomcat程序包:

?
1
tar –zxf apache-tomcat-7.0.55.tar.gz

然后重命名Tomcat目錄:

?
1
mv apache-tomcat-7.0.55/ tomcat/

編寫一個運行腳本,當啟動容器時,運行該腳本,啟動Tomcat,具體過程如下:

?
1
vi /root/run.sh

然后,編輯腳本內容如下:

?
1
2
3
4
5
#!/bin/bash
 
source ~/.bashrc
 
sh /opt/tomcat/bin/catalina.sh run

注意:這里必須先加載環境,然后使用Tomcat的運行腳本來運行Tomcat

最后,為運行腳本添加執行權限:

?
1
chmod u+x /root/run.sh

1.安裝nginx

先去官網下載源碼包注意要是gz的

http://nginx.org/en/download.html   下載地址

下載完后,解壓安裝包:

?
1
tar -zxvf nginx-1.11.5.tar.gz

然后再配置安裝變量,打開解壓后的目錄-執行命令

?
1
cd nginx-1.11.5

配置安裝環境

./configure  --prefix=/usr/local/servers/nginx  “/usr/local/servers/nginx”是安裝路徑

有可能會出現./configure: error: C compiler cc is not found

這時需要運行命令更新一下gcc

?
1
2
3
4
5
6
7
yum install gcc gcc-c++ ncurses-devel perl
 
yum -y install pcre-devel
 
yum -y install zlib-devel
 
yum -y install autoconf libtool make

在解壓目錄執行:

?
1
make

切換到root用戶執行安裝命令

?
1
make install

創建軟鏈

?
1
ln –s /usr/local/servers/nginx/sbin/nginx /usr/local/bin/nginx

啟動nginx服務

?
1
nginx

再用 ps  -ef|grep nginx查看是否啟動成功

提交Docker鏡像

首先退出你剛才配置好的docker鏡像

?
1
exit

然后使用以下命令可以看到剛才退出的docker鏡像

?
1
docker ps –a

再使用以下命令,根據某個”容器ID”來創建一個新的”鏡像”:

?
1
docker commit 57c312bbaad1 javaweb:0.1

該容器ID是”57c312bbaad1”,所創建的鏡像名是”javaweb”

注意:”57c312bbaad1” 這個ID是使用 docker ps 命令來查看的

提交了新的鏡像你可以把這個鏡像儲存tar包

?
1
docker  –o ~/javaweb.tar javaweb

docker  save –o  保存的目錄  鏡像名

啟動容器

先用 docker  images看看當前所有的鏡像

啟動最新創建的鏡像

?
1
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:表示容器名稱,用一個有意義的名稱命名即可

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持服務器之家。

原文鏈接:https://www.cnblogs.com/tianrongyao/articles/6046716.html

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: 精东影业传媒全部作品 | 跪趴好紧h | 国产第一福利 | 四虎在线观看 | 亲爱的客栈第二季免费观看完整版 | 91男人 | 男女视频在线观看网站 | 免费叼嘿视频 | 热门小说同人h改编h | 亚洲色图.com | 无码国产成人777爽死 | 精品无人区乱码1区2区3区免费 | 校花的第一次好紧好爽 | 插入逼| 亚洲一区二区精品推荐 | 亚洲国产成人综合 | 天天色天天舔 | 国产成人啪精品午夜在线播放 | 亚洲 另类 欧美 变态屎尿 | 草啪啪 | 欧美在线视频免费播放 | 成人福利在线视频免费观看 | 91制片厂免费观看 | 国产永久一区二区三区 | 成年人在线视频观看 | porono日本人xxx| 丰腴尤物贵妇浪荡小说 | 激情视频网址 | 亚洲a视频在线 | 午夜精品亚洲 | 久久国产综合精品欧美 | 欧美伊人影院 | 国产精品性视频免费播放 | 色综合久久九月婷婷色综合 | 国产视频99 | t66y地址一地址二地址三 | 大学生按摩黄a级中文片 | 日韩福利网 | 天美蜜桃精东乌鸦传媒 | 天天干天天色综合网 | 成人毛片高清视频观看 |