有時(shí)候需要在基礎(chǔ)鏡像里面安裝某些依賴,如果把命令寫在Dockerfile里,部分依賴軟件下載很慢,構(gòu)建鏡像的時(shí)候又會(huì)花很長(zhǎng)的時(shí)間。所以最好是分裝一個(gè)包含依賴庫(kù)的新鏡像。
docker提供commit來(lái)實(shí)現(xiàn)
比如我有一個(gè)python鏡像,比較精簡(jiǎn)。缺乏freetds-dev和unixodbc-dev這兩個(gè)依賴。
1.先把鏡像run起來(lái)
docker run -it --name python docker.io/python:3.6.4 /bin/bash
/bin/bash進(jìn)入容器內(nèi)部進(jìn)行交互
2.執(zhí)行安裝命令
root@39eaa5aa7332:/code# apt-get install freetds-dev
Reading package lists... Done
Building dependency tree
Reading state information... Done
root@39eaa5aa7332:/code# apt-get install unixodbc-dev
Reading package lists... Done
Building dependency tree
Reading state information... Done
安裝完成后,ctrl+p+q退出容器。
3.將容器打包成鏡像,執(zhí)行docker commit
[root@CentOS ~]# docker commit 39eaa5aa7332 python3.6.4-dev
sha256:ca46b1ed99abc1338881a55a043ee9670a66601530b3f2e63f41eb949b91e84d
然后執(zhí)行docker images就可以看到這個(gè)鏡像了
以上就是詳解Docker commit的使用的詳細(xì)內(nèi)容,更多關(guān)于Docker commit使用的資料請(qǐng)關(guān)注腳本之家其它相關(guān)文章!