Docker - 安裝 與使用
阿新 • • 發佈:2021-12-24
安裝要求:
系統環境為CentOS 7,核心3.10以上
檢視當前核心:uname -r ,檢視系統版本:cat /etc/os-release
安裝docker:
1.解除安裝舊的版本
# yum remove docker \ docker-client \ docker-client-latest \ docker-common \ docker-latest \ docker-latest-logrotate \ docker-logrotate \ docker-engine
2.安裝基本環境與docker
# yum install -y yum-utils
# yum-config-manager \
--add-repo \
http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
3.更新yum軟體包索引
# yum makecache fast
4.安裝 Docker CE( ce社群版 ee企業版)
# yum install docker-ce docker-ce-cli containerd.io (安裝最新版)
# yum install docker-ce-version docker-ce-cli-version containerd.io (安裝指定版本(version))
5.檢視是否安裝成功
# docker version
6.啟動 Docker
# systemctl start docker
7.docker hello-word
# docker run hello-world
常用命令:
幫助命令
# docker version 顯示 Docker 版本資訊。
# docker info 顯示 Docker 系統資訊,包括映象和容器數。。
# docker --help 幫助
映象命令
# docker images 列出本地主機上的映象
解釋
REPOSITORY 映象的倉庫源
TAG 映象的標籤
IMAGE ID 映象的ID
CREATED 映象建立時間
SIZE 映象大小
同一個倉庫源可以有多個 TAG,代表這個倉庫源的不同版本,我們使用REPOSITORY:TAG 定義不同 的映象,如果你不定義映象的標籤版本,docker將預設使用 lastest 映象!
可選項
-a: 列出本地所有映象
-q: 只顯示映象id
--digests: 顯示映象的摘要資訊
# docker search mysql 搜尋映象
# docker search 某個映象的名稱 對應DockerHub倉庫中的映象
可選項
--filter=stars=50 : 列出收藏數不小於指定值的映象。
# docker pull mysql 下載映象 版本預設是latest(最新的)
# docker pull mysql:5.7 指定版本下載
刪除映象
docker rmi -f 映象id # 刪除單個
docker rmi -f 映象名:tag 映象名:tag # 刪除多個
docker rmi -f $(docker images -qa) # 刪除全部
容器命令
# docker run 啟動映象命令
常用引數說明
--name="Name" 給容器指定一個名字
-d 後臺方式執行容器,並返回容器的id!
-i 以互動模式執行容器,通過和 -t 一起使用
-t 給容器重新分配一個終端,通常和 -i 一起使用
-P 隨機埠對映(大寫)
-p 指定埠對映(小結),一般可以有四種寫法
# docker ps [OPTIONS] 列出所有執行的容器
常用引數說明
-a 列出當前所有正在執行的容器 + 歷史執行過的容器
-l 顯示最近建立的容器
-n=? 顯示最近n個建立的容器
-q 靜默模式,只顯示容器編號。
# exit 容器停止退出
# ctrl+P+Q 容器不停止退出
# docker start (容器id or 容器名) 啟動容器
# docker restart (容器id or 容器名) 重啟容器
# docker stop (容器id or 容器名) 停止容器
# docker kill (容器id or 容器名) 強制停止容器
# docker rm 容器id 刪除指定容器
# docker rm -f $(docker ps -a -q) 刪除所有容器
# docker ps -a -q|xargs docker rm 刪除所有容器
進入正在執行的容器
# docker exec -it 容器id
# docker attach 容器id
區別
exec 是在容器中開啟新的終端,並且可以啟動新的程序
attach 直接進入容器啟動命令的終端,不會啟動新的程序