檢視命令: docker --help
docker run --name centos -d -h centos --rm -v /opt/:/opt/ wenbronk/centos /bin/bash
總得來說, docker的命令為以下幾種:
1a), 輸出hellowork, 執行後立馬退出, 搜尋映象
docker search alpine
2docker pull apline
3, 檢視映象
docker images
4, 刪除映象
docker rmi apline
docker run centos /bin/echo 'b), 開啟終端並保持在容器中helloworld
'
docker run --name centos -d -it centos /bin/bash
引數解釋: --name: 指定執行名字,
--i: 始終保持鏈結狀態
-t: 開啟偽終端並繫結在docker上
/bin/bash: 需要執行的命令
c), 後台執行: 加-d
d), 埠對映: 不加的話, 隨機對映, 使用:
-p 主機埠:容器埠
docker run -d --name nginx -p 81:80 nginx使用 -p ip:hostport:containerport 可以指定主機的多個ip:port
也可以使用 -p 指定多個 埠
docker stop container_id | containe_name
docker ps -a # -a指檢視所有, 不加只檢視正在執行的
docker exec -it /bin/bash container_name-i: 始終開啟鏈結docker attach contain_id: 進入後退出, 容器會退出
-t: 開啟偽終端使用繫結在docker上
/bin/bash: 需要docker容器執行的命令
需要工具包:
yum install -y util-linux檢視docker 的pid
docker inspect --format "使用 nsenter 進入容器}" container_id | container_name
nsenter --target 23907 --mount --uts --ipc --net --pid寫成指令碼鏈結進容器:
# /bin/bash
cname=$1
if [ ! -n "$1" ]; then
echo the param container_id or container_name is must
exit 0
ficpid=$(docker inspect --format "}" $cname)
nsenter --target "$cpid" --mount --uts --ipc --net --pid
docker start contain_id
docker rm
docker commit -m '資料卷是經過特殊設計的容器, 可繞過聯合檔案系統(uts), 為乙個或多個容器提供服務yourtags
' container_id wenbronk/contaner_name
目的是資料的永久化, 完全獨立於容器生命週期, 不會存在類似垃圾**機制
可新增 -v /data:/opt/nginx/log:ro 新增 ro 引數 使得容器內唯讀
可通過 docker inspect container_id 檢視是否掛載資料卷
docker run -d --name=tomcat -v /b2b:/test -it centos /bin/bash此時操作本地的 /b2b 目錄, 就會在docker容器下看到 相應的檔案管理
會自動建立 /b2b目錄
dockerfile中使用 [volume] 掛載資料卷, 但不可以是本地存在的, 啟動時會建立相同名字的資料卷
相同映象的不同容器, 建立的資料卷不同, 因此使用資料卷容器
命名的容器掛載資料卷, 其他容器通過掛載容器掛載資料卷,
# 啟動乙個容器作為資料卷容器docker run -it -v /b2b:/test --name datatest centos /bin/bash
# 啟動兩外兩個容器鏈結資料卷docker run -it --volumes-from datatest --name db1 centos
docker run -it --volumes-from datatest --name db2 centos這樣 db1 和 db2 都可以訪問該目錄, 且做的更改對其他容器是可見的
即使刪除了容器 datatest, db1, 和db2 也可以正常進行資料共享, 資料卷容器的存在僅僅為了配置資訊傳遞
避免暴露伺服器真是路徑
備份
docker run --volumes-from dbdata -v $(pwd):/backup --name worker centos tar zcf /backup/backup.tar.gz /dbdata建立資料卷容器:
docker run -v /dbdata/dbdata --name db centos /bin/bash進行資料恢復
docker run --volumes-from db -v $(pwd):/backup centos tar xf /backup/backup.tar.gz
Docker基礎命令
下面簡單介紹一下docker常用的一些基礎命令 在ubuntu中安裝docker sudo apt get install docker.io 檢視docker的版本資訊 docker version 檢視安裝docker的資訊 docker info 檢視本機docker中存在哪些映象 docke...
docker基礎命令
刪除存在的 sudo apt get remove docker docker engine docker.io sudo apt get update 安裝依賴 新增docker 公共金鑰 curl fssl sudo apt key add 設定版本庫型別 ubuntu18.04對應版本 bio...
Docker基礎命令
命令的詳細說明與演示,可以參考 systemctl start docker 啟動docker服務 service docker start systemctl stop docker 關閉docker服務 service docker stop systemctl restart docker 重...