您好,登錄后才能下訂單哦!
這篇文章主要介紹使用Docker部署一個web項目并打包成鏡像文件的案例,文中介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們一定要看完!
docker基本入門以后,可以試試打包docker鏡像與dockerfile了
docker鏡像
docker hub倉庫有2類倉庫,用戶倉庫和頂層倉庫,用戶倉庫由docker用戶創建的,頂層倉庫由docker內部的人來管理的。倉庫里存放的是鏡像文件,那么問題來了 ,怎么去創建鏡像呢?
how to create image
構建docker鏡像的有2種方法:
1.使用docker commit命令。
2.使用docker build 命令和Dockerfile文件。在這里并不推薦使用docker commit命令,而應該使用更靈活,更強大的Dockerfile來構建鏡像..
1.創建一個centos鏡像
通過命令下載dockerhub上的官方鏡像
docker pull centos
2.創建一個基于centos鏡像的容器
通過命令docker images查看服務器上已有的鏡像
通過命令
docker run -dit -p 4000:8080 centos鏡像名或id
創建一個基于centos鏡像的容器在后臺運行并將服務器的4000端口映射到容器中的8080端口
3.將jdk,tomcat的安裝包和web項目上傳至鏡像中
docker cp /usr/local/jdk安裝包 容器名:容器地址 docker cp /usr/local/tomcat安裝包 容器名:容器地址 docker cp /usr/local/web項目 容器名:容器地址1
4.進入容器并操作
通過命令
docker attach 容器名或id
進入容器中
安裝jdk和tomcat的步驟和在linux中安裝步驟一致,你可以把容器當成一個linux虛擬機, 之后啟動tomcat服務
5.驗證
在瀏覽器上輸入http://服務器ip:4000,如果出現tomcat頁面則成功了
6.將容器打包成鏡像
docker commit -a "runoob.com" -m "my apache" 容器名稱或id 打包的鏡像名稱:標簽
OPTIONS說明:
-a :提交的鏡像作者;
-c :使用Dockerfile指令來創建鏡像;
-m :提交時的說明文字;
-p :在commit時,將容器暫停。
7.上傳至你的dockerhub
使用您的Docker ID登錄
如果您沒有Docker帳戶,請在cloud.docker.com注冊一個 。記下你的用戶名。
登錄到本地計算機上的Docker公共注冊表。
docker login
標記鏡像
將本地映像與注冊表上的存儲庫相關聯的符號是 username/repository:tag。該標簽是可選的,但推薦使用,因為這是注冊管理機構為Docker鏡像提供版本的機制。給存儲庫并為上下文標記有意義的名稱,例如 get-started:part2。這將把圖像放入get-started存儲庫并標記為part2。
現在,把它們放在一起來標記鏡像。運行docker tag image您的用戶名,存儲庫和標簽名稱,以便鏡像將上傳到您想要的目的地。該命令的語法是:
docker tag image username/repository:tag
例如:
docker tag friendlyhello john/get-started:part2
運行docker鏡像以查看新標記的鏡像。(你也可以用docker image ls。)
docker images
REPOSITORY TAG IMAGE ID CREATED SIZE friendlyhello latest d9e555c53008 3 minutes ago 195MB john/get-started part2 d9e555c53008 3 minutes ago 195MB python 2.7-slim 1c7128a655f6 5 days ago 183MB …
發布鏡像
將您的標記鏡像上傳到存儲庫:
docker push username/repository:tag
8.下載鏡像
一旦完成,這個上傳的結果是公開的。如果你登錄到Docker Hub,你將會看到那個新的鏡像和它的pull命令。
從遠程存儲庫中提取并運行映像
從現在起,您可以使用docker run此命令在任何機器上使用并運行您的應用程序:
docker run -p 4000:80 username/repository:tag
如果圖像在機器上本地不可用,Docker將從存儲庫中取出。
以上是“使用Docker部署一個web項目并打包成鏡像文件的案例”這篇文章的所有內容,感謝各位的閱讀!希望分享的內容對大家有幫助,更多相關知識,歡迎關注億速云行業資訊頻道!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。