Docker
組成
-
鏡像(image)
-
容器(Container)
-
倉庫(Repository)
安裝步驟(centos7)
- 能上網
- yum -y install gcc
- yum -y install gcc-c++
- 安裝需要的軟件 yum install -y yum-utils device-mapper-persistent-data lvm2
- 設置stable鏡像倉庫爲阿里雲倉庫:yum-config-manage --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
- 更新yum軟件包索引 yum makecache fast
- 安裝Docker CE : yum -y install docker-ce
- 啓動docker:systemctl start docker
- 測試:docker version / docker run hello-world
- 卸載:systemctl stop docker/yum -y remove docker-ce/rm -rf /var/lib/docker
配置加速器
- https://dev.aliyun.com/search.html
- 登錄獲取加速器地址,下方有配置步驟,安裝提示操作
常用明令
-
幫助命令
- docker version
- docker info
- docker help
-
鏡像命令
- docker images 列出本地鏡像信息
REPOSITORY: 表示鏡像的倉庫源
TAG:鏡像標籤,表示版本
IMAGE ID:鏡像ID
CREATED:鏡像創建時間
SIZE:鏡像大小
參數OPTIONS說明:
-a: 列出本地所有的鏡像(含中間映像層)
-q:值顯示鏡像ID
–digests:先許鏡像的摘要信息
–no-trunc:顯示完整的鏡像信息- docker search + image_name 搜索鏡像
OPTIONS說明:
–no-trunc:顯示完整的鏡像信息
-s:列出收藏數不小於指定值的鏡像
–automated:只列出automated build類型的鏡像- docker pull + image_name[:TAG] 下載鏡像
- docker rmi + image_name_id(使用名字也可以)
-f :強制刪除
刪除多個:鏡像之間加空格即可 docker rmi image_name1 image_name2
刪除全部:docker rmi -f $(docker images -qa) -
容器命令
- 新建並啓動容器:docker run [OPTIONS] image [COMMAND] [ARG…]
OPTIONS參數說明:
–name=“newname” 指定容器名稱
-d:後臺運行容器 注意:容器後臺運行,必須有一個前臺進程,否則會自動關閉容器,例如 docker run -d centos /bin/sh -c “while true; do echo hello; sleep 2; done”
-i:以交互模式運行容器,通常與-t同時使用
-t:爲容器分配一個僞輸入終端,通常與-i同時使用
-P:隨機端口映射
-p:指定端口,格式爲:ip:hostPort:containerPort / ip::containerPort / hostPort:containerPort- 列出當前所有正在運行的容器:docker ps [OPTIONS]
OPTIONS參數說明:
-a:列出所有,正在運行+歷史運行
-l:顯示最近創建容器
-n:顯示最近n個 docker ps -n 3
-q:靜默顯示,只顯示容器編號
–no-trunc:不截斷輸出- 退出容器:exit 停止並退出 / ctrl+P+Q 容器不停止退出
- 啓動容器:docker start 容器ID或容器名
- 重啓容器:docker restart 容器ID或容器名
- 停止容器:docker stop 容器ID或容器名
- 強制停止容器:docker kill 容器ID或容器名
- 刪除已停止的容器:docker rm 容器ID / 刪除多個 docker rm -f $(docker ps -qa)
- 查看容器日誌:docker logs -f -t --tail 容器ID
-f:跟隨最新日誌打印
-t:加入時間戳
–tail 數字:顯示最後多少條- 查看容器內運行的進程:docker top 容器ID
- 進入運行的容器並以命令行交互:docker exec -it 容器ID /bin/bash // docker exec -it 容器ID ls -l /tmp
- 重新進入容器:docker attach 容器ID