是時候Docker: 3 Docker小例項
阿新 • • 發佈:2019-12-31
Docker小例項
原文再續,就書接上一回。今天我們說說Docker映象容器的相關操作
目錄
- 是時候Docker: 1 Docker導學
- 是時候Docker: 2 安裝並取消sudo執行docker
- 是時候Docker: 3 Docker小例項
- 是時候Docker: 3.1 Docker19 命令速查表
- 是時候Docker: 4 Dockerfile建立映象
- 是時候Docker: 5 Volume 獨立於容器外的持久化儲存
建立檔案
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 |