Docker如何打包本地環(huán)境為tar包給別人使用
Docker打包本地環(huán)境
最近工作中需要跨部門協同合作,我的虛擬機上安裝了很多包,這樣一個環(huán)境運行我自己的代碼都能正常使用,但是給別人使用會報缺少某些包的錯誤,而且讓別人裝的話容易裝出問題,另外不同的人使用還要重新安裝一遍依賴包,太麻煩了。
所以,我們這邊用docker鏡像裝好所有環(huán)境并且合入全部代碼打包成docker鏡像,別人就可以直接使用,省去很多麻煩的事情。做個記錄。
從docker hub上拉取一個輕量化的鏡像
1.首先從docker hub上找一個適合別人虛擬機操作系統(tǒng)的docker鏡像,這里需要先注冊登錄。
2. 在自己的虛擬機上登錄個人docker賬號,docker login
3. 登錄之后就可以拉取鏡像了:docker pull rishabhthakur98/ubuntu18python3.6:v1,其中后面的v1是鏡像的tags,可以在docker hub看到。
4. 現在查看本地鏡像就會發(fā)現多了一個剛才拉的鏡像了:docker images
5. 現在可以運行這個鏡像:docker run -it e08af9d068c6【image ID】,此時本地會產生一個新的容器:docker ps -a查看。
6. 第一次運行鏡像會自動進去容器,exit退出容器。
下次進入時要先啟動容器:docker start b58c5185b76e【容器ID】,然后附著進容器:docker attach b58c5185b76e【容器ID】。
此時,你可以在這個容器內部安裝自己需要的東西,寫好各種需要的代碼,下一步準備打包。
把建好的容器打包給其他人使用
先退出容器:exit或者ctrl + D
提交全部更改到本地容器:docker commit 【容器ID】
此時的容器會生成一個新的未命名的鏡像。我們需要對它重新命名,
鏡像重命名:docker tag 0bc42f7ff218【鏡像ID】 sqlmap_docker:v1【名稱:版本】
鏡像打包:docker save sqlmap_docker:v1 > [/root/]sqlmap_docker .tar [/root/]指定存放的路徑。
打包完成可以在相應目錄下看到多了一個tar包,這就是你裝好環(huán)境的docker鏡像。
把這個鏡像的tar包發(fā)送給別人, 然后他那邊導入你的鏡像:docker load -i sqlmap_docker .tar,運行這個鏡像,進入對應的容器,然后就可以在相應目錄下運行你的代碼了。
總結
以上為個人經驗,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關文章
linux環(huán)境部署及docker安裝redis的方法
這篇文章主要介紹了linux環(huán)境部署及docker安裝redis的方法,本文給大家介紹的非常詳細,具有一定的參考借鑒價值,需要的朋友可以參考下2019-08-08