docker的簡單搭建(java/tomcat 環境)


1、一副圖簡單了解下docker的布局,它是虛擬的,docker分為私服、鏡像、容器三個模塊

 一般從私服pull鏡像,鏡像run一個容器,我們把容器作為一個虛擬服務,里面可以獨立運行進程有獨立的內網Ip,

通常把tomcat、工程掛到容器中運行

 

 

2、快速安裝Docker(在centos、ubuntu上的差異不大)

sudo apt-get update
sudo apt-get install docker.io
#啟動服務和守護進程

service docker.io status
service docker.io start

 

3、下載鏡像文件(pull命令下載,從私服隨便下載一個鏡像,自己重新制作)

 
         
#pull 后面是鏡像名稱,你可以先docker search java  在私服搜索java 是否有這個鏡像再下載
sudo docker pull java

#下載好后 查詢鏡像是否存在
sudo docker images
 
        

 

3、下載好鏡像創建、然后制作容器

 

鏡像下載到本地以后,就可以使用Docker運行,
通過下面的命令參數啟動容器,

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

-i:表示以“交互模式”運行容器
-t:表示容器啟動后會進入其命令行  ()
-v:表示需要將本地哪個目錄掛載到容器中   (這個目錄和本地是交互的,目錄下的文件在容器和本地上是可以相互看見的
格式:-v <宿主機目錄>:<容器目錄>

#我的相關程序都在當前機器的/data/software/目錄下,並且想把它掛載到容器的相同目錄下:

sudo docker run -i -t -v /data/software/:/data/software/ ae983d5e88ce /bin/bash

 

4、創建好容器自動進入了容器   然后安裝JDK和Tomcat等(這步最重要的就是配置tomcat環境,配置不好重啟容器不能運行

(可以用命令(docker cp  文件名稱  容器id : 容器下的路徑)把相應的安裝文件復制到容器中   )

 

安裝相關的JDK等程序,這里全部安裝到/data/目錄:

tar -zxvf jdk-7u25-linux-x64.tar.gz -C /data/
mv jdk1.7.0_25 jdk

unzip apache-tomcat-7.0.54.zip -d /data/
mv apache-tomcat-7.0.54 tomcat

配置環境變量

vi /etc/profile

添加下面的配置:

export HISTTIMEFORMAT
JAVA_HOME=/data/jdk1.7
CLASSPATH=$JAVA_HOME/lib/
PATH=$PATH:$JAVA_HOME/bin
export PATH JAVA_HOME CLASSPATH


export CATALINA_HOME=/data/tomcat
export CATALINA_BASE=/data/tomcat

 保存並退出,設置立即生效: source /etc/profile

 

 

5、啟動tomcat時必須通過TOMCATHOME/bin/catalina.sh使用TOMCAT_HOME/bin/startup.sh啟動,否則腳本執行后容器會馬上退出。

vi /data/start.sh

添加以下內容:

#!/bin/bash
# Export environment variable
source /etc/profile
# Start tomcat
bash /data/tomcat/bin/catalina.sh run

添加可執行權限:

chmod u+x /data/start.sh

#然后退出 容器
exit

#查看容器
docker ps #查看運行的容器
docker ps -a #查看 所有容器

docker start 容器Id #啟動容器
docker restart 容器id #重啟
docker stop 容器id #停止容器
docker rm 容器id #刪除容器
docker rmi 鏡像id #刪除鏡像


#當你重啟容器時 docker ps 還看到容器啟動成功 說明你成功了


 

6、這就制作好容器了,然后你可以提交鏡像(以后可以直接用這個鏡像創建容器,容器里面就有java+tomcat環境了

#提交容器  創建鏡像 docker commit  容器ID  鏡像名稱

sudo docker commit 39b2cf60a4c1 flm/java

#查看是否創建鏡像
sudo docker images

#如果看到 flm/java 這個鏡像存在說明你成功了


#docker inspect可以查看新創建的鏡像的詳細信息:

sudo docker inspect flm/java

 

7、運行新創建的容器( -p 18080:8080  是把 服務器的端口18080映射到容器端口8080  ,javaweb   命名容器名稱, /data/start.sh 啟動文件)

 

docker run -d -p 18080:8080 --name javaweb flm/java /data/start.sh

-p:表示宿主機與容器的端口映射,此時將容器內部的 8080 端口映射為宿主機的 18080 端口,

這樣就向外界暴露了 18080 端口,可通過 Docker 網橋來訪問容器內部的 8080 端口了。

查看后台是否啟動成功:

docker ps

 

 

然后訪問  http://192.168.10.16:18080 說明你成功了

 

 

 

哈哈哈 thans

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM