1. 程式人生 > 程式設計 >是時候Docker: 3 Docker小例項

是時候Docker: 3 Docker小例項

Docker小例項

原文再續,就書接上一回。今天我們說說Docker映象容器的相關操作

目錄

建立檔案

vim index.html

<html>
<h1>docker is fun!</h1>
</html>
複製程式碼

部署Nginx

// -p 8081:80  8081 對映到 80 | -d 守護程式
docker run -d -p 8080:80 nginx   // 驗證 curl http://127.0.0.1:8080

docker ps
CONTAINER ID        IMAGE               COMMAND                  CREATED             STATUS              PORTS                  NAMES
19d1b0186d1a        nginx               "nginx -g 'daemon of…"   12 seconds ago      Up 11 seconds       0.0.0.0:8081->80/tcp   nginxserver
複製程式碼

複製檔案到docker內

docker exec -it [CONTAINER ID] bash  // 用下面命令進入容器內部,查詢nginx目錄,find . -name "nginx"                 // 將目前目錄及其子目錄下所有名稱是 nginx 的檔案列出來
exit                                 // 退出

docker cp index.html 19d1b0186d1a://usr/share/nginx/html
// 驗證 curl http://127.0.0.1:8080
複製程式碼

儲存容器內改動

docker commit -m 'add index.html2/usr/share/nginx/html' 19d1b0186d1a nginx-fun
// 返回:sha256:ddccfc4cb7bec3e81ffa580826096adb94b77c7b4e859521af32ad5fa68f9d5d

docker stop 19d1b0186d1a
docker run -d -p 8080:80 nginx-fun   // 驗證 curl http://127.0.0.1:8080
複製程式碼

命令小結

命令 說明
docker pull 獲取image
docker build 建立image
docker images 列出image
docker run [CONTAINER NAME] 執行container
docker container ls 列出正在執行container
docker container ls -a 列出所有container(終止狀態的容器)
docker container stop [CONTAINER ID] 終止container
docker container logs 獲取容器輸出資訊
docker ps 列出container
docker rm 刪除container
docker rmi 刪除image
docker exec -it [CONTAINER ID] bash 進入container內部執行命令;不建議使用docker attach命令會在exit時終止容器
docker cp [SOURCE PATH] [CONTAINER ID]:/[TARGET PATH] 複製檔案到容器內部
docker commit -m '[MESSAGE]' [CONTAINER ID] [IMAGE NAME] 儲存改動為新 image

更多內容下回分解

原創不易,如果你覺得我的文章對你有幫助,請點贊鼓勵