Docker使用國內的源
- windows下使用 "everything"軟件 查找 daemon.json
- 修改為如下:
{"registry_mirrors": ["https://docker.mirrors.ustc.edu.cn"]
}
查看images(鏡像)
docker images
注: 看見的鏡像是已經下載好的,因此在沒有網絡的情況下也可以用
搜索鏡像
docker search 鏡像名稱
- 栗子: 搜索centOS
docker search centos
拉取鏡像
- 作用: 從遠程倉庫中拉取鏡像到本地中
- 語法: docker pull 鏡像名稱
- 栗子: 拉取 tutum/centos 鏡像到本地
docker pull tutum/centos
刪除鏡像
- 按鏡像ID刪除鏡像
docker rmi 鏡像ID
- 刪除所有鏡像
docker rmi `docker images -q`
注: docker images -q 列出了所有
查看容器
- 查看正在運行的容器
docker ps
- 查看所有容器
docker ps -a
- 查看最后一次運行的容器
docker ps -l
- 查看停止的容器
docker ps -f status = exited
創建與啟動容器
- 創建容器:
docker run
-
參數說明:
-i: 表示運行容器
-t: 表示容器啟動后會進入其命令行.
-it: 表示容器創建后就能登錄進去,即分配了一個偽終端
–name: 為創建的容器命名
-v: 表示目錄映射關系,可以使用多個 -v 做多個目錄或文件映射
-d: 創建一個守護式容器在后臺運行
-p: 表示端口映射,前面是宿主機端口,后面是容器映射的端口. -
語法:交互式方式創建容器
docker run -it --name='容器名稱' 鏡像名稱:標簽 /bin/bash
- 栗子: 創建一個可交互式的centos 7.x 的終端
docker run -it --name=mycentos centos:7 /bin/bash
注:
centos:7在本地images中并不存在,因此會自動從遠程倉庫中拉取
退回宿主機: exit
- 語法2: 守護式方式創建容器
docker run -id --name=容器名稱 鏡像名稱:標簽
- 登錄守護式容器方式:
docker exec -it 容器名稱(或者容器ID) /bin/bash
容器的停止與啟動
- 首先查看容器
docker ps
- 語法: 停止容器
docker stop 容器名稱(或者容器ID)
栗子: 關閉名稱為centos2(假設已開啟)的容器
docker stop centos2
- 語法: 啟動容器
docker start 容器名稱(或者容器ID)
栗子: 打開mycentos(假設存在)容器
docker start mycentos
栗子2: 進入剛才打開的mycentos
docker exec -it mycentos /bin/bash
文件拷貝
- 語法: 將文件拷貝到容器內
docker cp 需要拷貝的文件或目錄 容器名稱:容器目錄
- 語法2: 將文件從容器內拷貝出來
docker cp 容器名稱:容器目錄 需要拷貝的文件或目錄
目錄掛載
在創建容器的時候,將宿主機的目錄與容器內的目錄進行映射,這樣我們就可以通過修改宿主主機某個目錄的文件從而取影響容器
- 語法: docker run -id -v 宿主機(docker守護進程所在的機器)目錄:容器目錄 --name 容器名稱 鏡像名稱:標簽
- 栗子: 新建一個守護容器(mycentos3),它使用centos:7的鏡像,將本地桌面(C:\Users\Administrator\Desktop\myhtml) 和 容器(/usr/local/myhtml) 之間形成映射
docker run -it --name=mycentos3 -v C:\Users\Administrator\Desktop\myhtml:/usr/local/myhtml centos:7
權限不足,解決方案:
添加如下:
--privileged=true
查看容器ip地址
- 語法: docker inspect 容器名稱(容器ID)
- 栗子: 查看容器的所有信息
docker inspect mycentos
- 栗子2: 查看容器(mycentos)的ip地址
docker inspect --format='{{.NetworkSettings.IPAddress}}' mycentos
容器的刪除
- 語法: docker rm 容器名稱(容器ID)
- 栗子: 刪除mycentos
docker rm mycentos
注: 容器必須處于暫停狀態才能刪除