溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點(diǎn)擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

Docker鏡像構(gòu)建中docker?commit怎么使用

發(fā)布時間:2022-04-02 15:52:34 來源:億速云 閱讀:164 作者:iii 欄目:開發(fā)技術(shù)

這篇“Docker鏡像構(gòu)建中docker commit怎么使用”文章的知識點(diǎn)大部分人都不太理解,所以小編給大家總結(jié)了以下內(nèi)容,內(nèi)容詳細(xì),步驟清晰,具有一定的借鑒價值,希望大家閱讀完這篇文章能有所收獲,下面我們一起來看看這篇“Docker鏡像構(gòu)建中docker commit怎么使用”文章吧。

我們可以通過公共倉庫拉取鏡像使用,但是,有些時候公共倉庫拉取的鏡像并不符合我們的需求。盡管已經(jīng)從繁瑣的部署工作中解放出來了,但是在實(shí)際開發(fā)時,我們可能希望鏡像包含整個項(xiàng)目的完整環(huán)境,在其他機(jī)器上拉取打包完整的鏡像,直接運(yùn)行即可。

Docker 支持自己構(gòu)建鏡像,還支持將自己構(gòu)建的鏡像上傳到公共倉庫,鏡像構(gòu)建可以通過以下兩種方式來實(shí)現(xiàn):

  • docker commit:從容器創(chuàng)建一個新的鏡像;

  • docker huild:配合 Dockerfile 文件創(chuàng)建鏡像;

示例:通過 docker commit 來實(shí)現(xiàn)鏡像的構(gòu)建,通過基礎(chǔ)鏡像 centos:7,將 jdk 和 Tomcat 安裝在該鏡像中制作成一個新的鏡像

1、創(chuàng)建容器

# 拉取鏡像
docker pull centos:7

# 創(chuàng)建容器
docker run -id --name centos7 centos:7

2、拷貝資源

將宿主機(jī)的 jdk 和Tomcat 拷貝到容器

docker cp jdk-11.0.7_linux-x64_bin.tar.gz centos7:/root
docker cp apache-tomcat-9.0.39.tar.gz centos7:/root

3、安裝資源

# 進(jìn)入容器
docker exec -it centos7 /bin/bash

在容器中執(zhí)行以下操作:

# 切換到 /root 目錄
cd root/

# 創(chuàng)建 Java 和 Tomcat 目錄
mkdir -p /usr/local/java
mkdir -p /usr/local/tomcat

# 將 jdk 和 Tomcat 解壓到容器的 Java 和 Tomcat 目錄中
tar -zxvf jdk-11.0.6_linux-x64_bin.tar.gz -C /usr/local/Java/
tar -zxvf apache-tomcat-9.0.39.tar.gz -C /usr/local/tomcat/

# 在環(huán)境變量文件中添加以下內(nèi)容
export JAVA_HOME=/usr/local/java/jdk-11.0.6/
export PATH=$PATH:$JAVA_HOME/bin

# 重新加載環(huán)境變量文件
source /etc/profile

# 測試環(huán)境變量是否配置成功
[root@f1cd1a3df1ed etc]# java -version
java version "11.0.7" 2020-04-14 LTS
Java(TM) SE Runtime Environment 18.9 (build 11.0.7+8-LTS)
Java HotSpot(TM) 64-Bit Server VM 18.9 (build 11.0.7+8-LTS, mixed mode)

4、構(gòu)建鏡像

docker commit [OPTIONS] CONTAINER [REPOSITORY[:TAG]]

docker commit -a="xiaoyang" -m="jdk11 and tomcat" centos7 mycentos:7
  • -a:提交的鏡像作者;

  • -c:使用 Dockerfile 指令來創(chuàng)建鏡像;

  • -m:提交時的說明文字;

  • -p:在 commit 時,將容器暫停;

Docker鏡像構(gòu)建中docker?commit怎么使用

5、使用構(gòu)建的鏡像創(chuàng)建容器

# 創(chuàng)建容器
docker run -id --name mycentos7 -p 8080:8080 mycentos:7

# 進(jìn)入容器
docker exec -it mycentos7 /bin/bash

# 重新加載配置文件
source /etc/profile

# 測試 Java 環(huán)境變量
[root@7ed6a969f63a /]# java -version
java version "11.0.7" 2020-04-14 LTS
Java(TM) SE Runtime Environment 18.9 (build 11.0.7+8-LTS)
Java HotSpot(TM) 64-Bit Server VM 18.9 (build 11.0.7+8-LTS, mixed mode)

# 啟動 Tomcat
/usr//local/tomcat/apache-tomcat-9.0.39/bin/startup.sh

以上就是關(guān)于“Docker鏡像構(gòu)建中docker commit怎么使用”這篇文章的內(nèi)容,相信大家都有了一定的了解,希望小編分享的內(nèi)容對大家有幫助,若想了解更多相關(guān)的知識內(nèi)容,請關(guān)注億速云行業(yè)資訊頻道。

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報,并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI