Docker常用命令《轉》

2021-09-07 07:29:59 字數 3726 閱讀 6045

建立redis服務端

docker run -p 6379:6379 -d --name redis-server docker.io/redis:3.0.7 redis-server --

port 6379

建立redis客戶端

docker run -it --name redis-client2 docker.io/redis:3.0.7 redis-cli -h 172.17.0.1 -p

6379

重進開啟redis客戶端

docker exec -it redis-client11 redis-cli -h 172.17.0.1 -p 6379

檢視容器的6380埠對應本地機器的ip和埠號

docker port redis-server2 6380

又把官方文件過了一遍,總結一下常用命令

安裝docker:

顯像管理

docker images:列出本地所有映象

docker search :查詢image

docker push :上傳image

docker rmi :刪除image

容器管理

docker run -i -t /bin/bash:-i:標準輸入給容器    -t:分配乙個虛擬終端    /bin/bash:執行bash指令碼

-d:以守護程序方式執行(後台)

-p:預設匹配docker容器的5000埠號到宿主機的49153 to 65535埠

-p ::指定埠號

- -name: 指定容器的名稱

- -rm:退出時刪除容器

docker stop :停止container

docker start :重新啟動container

docker ps - lists containers.

-l:顯示最後啟動的容器

-a:同時顯示停止的容器,預設只顯示啟動狀態

docker attach 連線到啟動的容器

docker logs : 輸出容器日誌

-f:實時輸出

docker cp :path hostpath:複製容器內的檔案到宿主機目錄上

docker rm :刪除container
docker rm `docker ps -a -q`:刪除所有容器
docker kill `docker ps -q`
docker rmi `docker images -q -a`
docker wait :阻塞對容器的其他呼叫方法,直到容器停止後退出
docker top :檢視容器中執行的程序
docker diff :檢視容器中的變化
docker inspect :檢視容器詳細資訊(輸出為json)
-f:查詢特定資訊,如docker inspect -f '}'

docker commit -m "comment" -a "author" ouruser/imagename:tag

docker extc -it :在容器裡執行命令,並輸出結果

網路管理

docker run -p:隨機分配埠號

docker run -p 5000:5000:繫結特定埠號(主機的所有網路介面的5000埠均繫結容器的5000埠)

docker run -p 127.0.0.1:5000:5000:繫結主機的特定介面的埠號

docker port 5000:檢視容器的5000埠對應本地機器的ip和埠號

使用docker linking連線容器:
docker為源容器和接收容器建立乙個安全的通道,容器之間不需要暴露埠,接收的容器可以訪問源容器的資料
docker run -d -p --name --link :

資料管理

data volumes:volume是在乙個或多個容器裡指定的特殊目錄

可以在容器啟動的時候新增-v引數指定容器卷,也可以在dockerfile裡用volumn命令新增

也可以將容器卷掛載到宿主機目錄或宿主機的檔案上,《容器目錄或檔案》的內容會被替換為《宿主機目錄或檔案》的內容,預設容器對這個目錄有可讀寫許可權
可以通過指定ro,將許可權改為唯讀
在乙個容器建立容器卷後,其他容器便可以通過--volumes-from共享這個容器卷資料,如下:
docker run -d -v /dbdata --name db1 training/postgres echo data-only container for postgres
首先啟動了乙個容器,並為這個容器增加乙個資料卷/dbdata,然後啟動另乙個容器,共享這個資料卷
docker run -d --volumes-from db1 --name db2 training/postgres
此時db2使用了db1的容器卷,當容器db1被刪除時,容器卷也不會被刪除,只有所有容器不再使用此容器卷時,才會被刪除
docker rm -v:刪除容器卷

除了共享資料外,容器卷另乙個作用是用來備份、恢復和遷移資料
docker run --volumes-from db1 -v /home/backup:/backup ubuntu tar cvf /backup/backup.tar /dbdata
啟動乙個容器資料卷使用db1容器的資料卷,同時新建立乙個資料卷指向宿主機目錄/home/backup,將/dbdata目錄的資料壓縮為/backup/backup.tar
docker run -v /dbdata --name dbdata2 ubuntu /bin/bash
docker run --volumes-from dbdata2 -v /home/backup:/backup busybox tar xvf /backup/backup.tar
啟動乙個容器,同時把backup.tar的內容解壓到容器的backup

倉庫管理

docker login:登入

** 

docker常用命令 Docker 常用命令筆錄

格式docker run 選項 映象 命令 引數.示例docker run it rm ubuntu 16.04 bash 示例解釋 it 這是兩個引數,乙個是 i,表示互動式操作,乙個是 t表示終端 rm 這個引數是說容器退出後隨之將其刪除 ubuntu 16.04 這是指用ubuntu 16.0...

docker常用命令

1.刪除已退出的容器 docker rm docker ps a q 2.強制刪除所有容器 docker rm f docker ps a 3.docker attach 進不去的時候可以用docker exec it containerid bin bash docker run it ubunt...

docker常用命令

docker常用命令 1.進入docker容器 sudo docker run it insaneworks centos bin bash 使用ctrl p或者ctrl q可以進入和退出容器 2.拉去乙個映象 docker pull insaneworks centos 檢視所有的映象 docke...