日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 运维知识 > linux >内容正文

linux

linux安装docker部署java项目

發(fā)布時間:2023/12/10 linux 23 豆豆
生活随笔 收集整理的這篇文章主要介紹了 linux安装docker部署java项目 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

大家好,我是烤鴨:

分享一下linux上部署docker的javaweb項目

?

1.環(huán)境

linux centos 7.2

64-bit?系統(tǒng)

kernel 3.10+

?查看版本號 :

uname -r

大于3.10即可

2.安裝docker

這里是官網(wǎng)安裝教程

https://docs.docker.com/engine/installation/linux/docker-ce/centos/

說一下docker ce 和ee版的區(qū)別,ce是社區(qū)版免費的,ee是企業(yè)版,收費的。

簡述幾個安裝命令,一路打下來就好。

2.1.移除之前定的安裝:

yum remove docker \docker-common \docker-selinux \docker-engine

2.2.設(shè)置倉庫:

yum-config-manager \--add-repo \https://download.docker.com/linux/centos/docker-ce.repo

2.3.安裝docker-ce

yum install docker-ce


2.4.啟動docker

systemctl start docker

2.5.運行hello-world鏡像

docker run hello-world

成功如下圖:



3.docker安裝成功了,我選擇的是官網(wǎng)拉取一個centos鏡像

這里是官網(wǎng)的商店,可以找你想要的鏡像。

https://store.docker.com/search?offering=community&type=edition

https://store.docker.com/images/centos

其實要的就是這個命令:

docker pull centos

拉取到了centos的鏡像,我們用鏡像啟動容器。

4.鏡像創(chuàng)建與容器啟動

4.1查看鏡像

docker images


4.2用鏡像啟動容器

docker run -i -t -v /download/:/usr/my/docker/download/ 3fa822599e10 /bin/bash 其中,相關(guān)參數(shù)包括: -i:表示以“交互模式”運行容器 -t:表示容器啟動后會進入其命令行 -v:表示需要將本地哪個目錄掛載到容器中,格式:-v <宿主機目錄>:<容器目錄>

說一下downlaod和/usr/my/docker/download/

前者表示你把東西放在你服務(wù)器的download/文件夾下,在進入容器的時候,文件會相應(yīng)地映射到/usr/my/docker/download/這個文件夾下。

/bin/bash表示啟動后進入命令行,crtl+d或者exit退出。

如果這一步出現(xiàn):Permission denied,參考這篇大神的文章:http://blog.csdn.net/rznice/article/details/52170085

查看容器:

docker ps -a

4.3重新進入容器

首先啟動容器:

docker start c806a68d2409

進入容器:

docker attach c806a68d2409

5.java環(huán)境安裝

5.1將jdk的tar包和tomcat的tar包放到/download/文件下

如圖所示:

5.2 這時候進入容器指定目錄,我的是/usr/mmy/就能找找到這兩個jar包,解壓和配置環(huán)境變量。

5.3解壓jdk和tomcat的tar包

cd /usr/my mkdir jdk mkdir tomcat cd /usr/my/docker/download/ tar -zxvf jdk-8u144-linux-x64.tar.gz -C /usr/my/jdk tar -zxvf apache-tomcat-9.0.0.M26.tar.gz -C /usr/my/tomcatmv apache-tomcat-9.0.0.M26 tomcat_test

5.4配置環(huán)境變量

這里我沒有配置jdk的環(huán)境變量,因為不需要,當(dāng)然也可以配置。

vi /etc/profile

G-到最后一行,o-新?lián)Q行開始。最后一行加上:

#set java environment export JAVA_HOME=/usr/my/jdk/jdk1.8.0_144 export JRE_HOME=$JAVA_HOME/jre export CLASSPATH=.:$JAVA_HOME/lib:$JRE_HOME/lib:$CLASSPATH export PATH=$JAVA_HOME/bin:$JRE_HOME/bin:$JAVA_HOME:$PATH

保存后 執(zhí)行生效:

source /etc/profile

查看java版本:

5.5配置tomcat

進入tomcat的bin目錄下

cd /usr/my/tomcat/tomcat_test/bin vi setclasspath.sh? vi setclasspath.sh?

最后添加:

export JAVA_HOME=/usr/my/jdk/jdk1.8.0_144 export JRE_HOME=$JAVA_HOME/jre

保存后,啟動tomcat。

./startup.sh


6.配置容器啟動環(huán)境變量

之所以前面說jdk的環(huán)境變量可以不配置,因為容器啟動重新加載單獨的配置文件。

6.1設(shè)置環(huán)境變量

vi ~/.bashrc

文件最后加上:

#set java environment export JAVA_HOME=/usr/my/jdk/jdk1.8.0_144 export JRE_HOME=$JAVA_HOME/jre export CLASSPATH=.:$JAVA_HOME/lib:$JRE_HOME/lib:$CLASSPATH export PATH=$JAVA_HOME/bin:$JRE_HOME/bin:$JAVA_HOME:$PATH

生效:

source ~/.bashrc

6.2編寫運行腳本

vi /root/run.sh

腳本內(nèi)容如下:

#!/bin/bash source ~/.bashrc sh /usr/my/tomcat/tomcat_test/bin/catalina.sh run

千萬不要忘記給腳本加權(quán)限

chmod u+x /root/run.sh

這時候容器內(nèi)部的準(zhǔn)備工作就完了。退出容器。

7.創(chuàng)建web鏡像

查找容器:

docker ps -a

創(chuàng)建鏡像:

docker commit c806a68d2409 test_web:1.0

啟動鏡像:

docker run -d -p 8999:8080 --name test test_web:1.0 /root/run.sh


-d:表示以“守護模式”執(zhí)行/root/run.sh腳本,此時 Tomcat 控制臺不會出現(xiàn)在輸出終端上。 ?
-p:表示宿主機與容器的端口映射,此時將容器內(nèi)部的 8080 端口映射為宿主機的 8999端口,這樣就向外界暴露了 8999端口,可通過 Docker 網(wǎng)橋來訪問容器內(nèi)部的 8080 端口了。 ?
--name:表示容器名稱,用一個有意義的名稱命名即可。

查看鏡像:

docker ps

如果能查到,說明啟動成功了。

最后附上一張訪問成功的圖(8999端口):


部分內(nèi)容來自:

http://blog.csdn.net/evankaka/article/details/50722788

8.問題:

另外說一下出現(xiàn)的問題:

8.1.如果出現(xiàn)類似bash:vi:或者cd或者ps等常用命令

command not find
檢查一下/etc/profile下,是不是新配的環(huán)境變量有問題。

vi命令不好用的話:

在命令行中輸入:export PATH=/usr/bin:/usr/sbin:/bin:/sbin:/usr/X11R6/bin? 這樣可以保證命令行命令暫時可以使用。
8.2.如果出現(xiàn)容器啟動沒反應(yīng),docker ps 找不到內(nèi)容,但是啟動沒報錯

估計是腳本啟動失敗,原因不太清楚。

可以試著把/etc/profile文件還原,再嘗試下。

畢竟啟動容器不需要改/etc/profile這個文件,有單獨的文件~/.bashrc配置環(huán)境變量就可以了。
?




?

?

?

?

總結(jié)

以上是生活随笔為你收集整理的linux安装docker部署java项目的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。