-
docker啟動:
docker daemon -g /home/dockeruser/mydocker:在新的目錄中的啟動docker -
docker啟動容器:
-
docker run --detach(-d) --name web nginx:latest:創建守護行程 -
docker --interactive --tty(可以組合:-it) --link web:web --name web_test busybox:latest /bin/sh:創建虛擬終端,并系結標準輸入或輸出到運行中的容器
-
-
docker匯出:
- 匯出容器:
docker export 容器名稱(推薦)-o aaaaaa.tar - 匯出鏡像:推薦:
docker save 容器名稱 -o aaaaaa.tar;不推薦:docker save 鏡像ID(匯入時需要重新命名) -o aaaaa.tar
- 匯出容器:
-
docker匯入:
- 匯入鏡像(推薦):
docker load < fileName.tar或docker load -i fileName.tar - 匯入容器(生成的也是鏡像):
docker import fileName.tar REPOSITORY:TAG docker import:丟棄了所有的歷史記錄和元資料資訊,僅保存容器當時的快照狀態,在匯入的時候可以重新制定標簽等元資料資訊;docker load:將保存完整記錄,體積較大
- 匯入鏡像(推薦):
-
docker 命名:
- 鏡像命名:
docker tag 鏡像ID REPOSITORY:TAG - 容器重命名:
docker rename 原名稱 新名稱
- 鏡像命名:
-
docker容器中運行額外行程:
docker exec -d --name web busybox:latest /bin/sh -c "sleep 3000"
-
docker查看命令:
-
查看日志
docker logs 容器名稱 -
查看容器配置資訊:
docker inspect -f "{{json .Config.Env}}" centos8docker inspect -f "{{json .Mounts}}" centos8
-
-
創建只讀容器:
--read-only標志創建容器時,會將掛載的容器檔案系統設定為只讀,防止容器被修改
-
容器重啟策略:
--restart標志,系統故障時自動重試,時間間隔為上次重啟時間翻倍
-
docker專案設計:
-
鏡像適合打包和分發相對靜態的檔案,如程式;
-
存盤卷則持有動態或專門資料
- 系結掛載卷:指向主機檔案系統上用戶指定的位置
- 檔案映射:
docker run -d --name myweb -v /home:/usr/local/apache2/htdocs -p 80:80 httpd:latest冒號前本機路徑,冒號后docker的httpd運行的容器檔案路徑,可在頁面展示 - 檔案映射只讀模式:
docker run -d --name myweb -v /home:/usr/local/apache2/htdocs/:ro -p 80:80 httpd:latest
-
創建一個與宿主機共享卷容器
docker run -itd -v /home:/home/gy -v ~/web-logs-example:/home/web-logs-example --name myos1 0d120b6ccaa8 /bin/bash -
復制任何本卷所有參考的源容器到新的容器中
docker run --name myos2 --volumes-from myos --volumes-from myos1 0d120b6ccaa8 ls -l /home/
-
-
docker容器洗掉:
-
洗掉所有未運行的容器和卷,
-v防止產生孤立卷docker rm -v $(docker ps -aq) -
洗掉虛懸鏡像(這個鏡像既沒有倉庫名,也沒有 標簽,均為
<none>)docker image prune或者docker rmi $(docker images -q -f dangling=true)
-
-
docker網路設定:
docker -d -icc=false:跨容器通信被禁止,除非被顯式允許的流量
-
docker容器八個命名空間(可能會有更新):
- MNT:檔案系統 訪問和結構
- NET:網路訪問和結構
- UTS:主機和域名
- USR:用戶名和識別符號
- IPC:通過共享記憶體進行通訊
- PID:行程識別符號和行程能力
Cgroups:資源保護chroot():控制檔案系統跟目錄的位置
-
docker添加私有倉庫:
-
vim /etc/docker/daemon.json #添加資訊,遠程倉庫和私有倉庫 { "registry-mirrors": [ "https://pak31uuv.mirror.aliyuncs.com", "https://registry.docker-cn.com" ], #私有倉庫地址 "insecure-registries": [ "私有倉庫IP地址" ] } #重啟docker systemctl restart docker
-
-
問題:
- 已經創建的容器可以修改那些引數?
- 多個容器之間怎么相互通訊關聯?
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/291280.html
標籤:其他
下一篇:應急回應排查思路
