docker安裝
安裝docker
docker官網: 在 CentOS 上安裝 Docker 引擎 |Docker 文檔
1, 舊版本的 Docker 過去了 或 . 在嘗試安裝新版本之前,請先卸載任何此類舊版本, 以及關聯的依賴項。
sudo yum remove docker \ docker-client \ docker-client-latest \ docker-common \ docker-latest \ docker-latest-logrotate \ docker-logrotate \ docker-engine2 安裝軟件包(提供實用程序)并設置存儲庫。
sudo yum install -y yum-utilssudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
3 安裝 Docker Engine、containerd 和 Docker Compose
sudo yum install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
4.啟動Docker
sudo systemctl start docker
5 通過運行映像來驗證 Docker 引擎安裝是否成功
sudo docker run hello-world
安裝docker出現的問題
GPG key retrieval failed: [Errno 12] Timeout on https://download.docker.com/linux/centos/gpg: (28, 'Operation timed out after 30001 milliseconds with 0 out of 0 bytes received')
【原因】
由于國內訪問不到docker官方鏡像的緣故
【解決】
執行命令
sudo yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
執行后結果:

其本質是修改了docker-ce.repo文件,文件路徑:/etc/yum.repos.d/docker-ce.repo
docker基本命令
docker version 查看docker版本號docker info 查看docker基本信息docker run hello-world 運行hello-world鏡像docker image lsdocker container ls --allsudo systemctl restart docker docker服務重啟,關閉命令
docker 命令 --help
鏡像命令:
鏡像(images):
容器(container):
倉庫(repository):存放鏡像的地方
docker images 列出所有鏡像
docker search centos 列出下載鏡像
docker search ${iamge:V} 搜索鏡像
docker pull centos 下載
docker pull ${iamge:V} 搜索鏡像
docker rim ${iamge:V} 刪除鏡像
容器命令
docker ps 列出運行中的容器
docker ps -a 列出所有狀態的容器
docker ps -q 列出運行中的容器id
docker run ${iamge:v} 通過鏡像啟動容器
-d: 后臺方式運行
-it:交互方式運行,能夠進入容器查看內容
-p: 端口映射,映射形式${主機端口:容器端口}
exit 退出容器
ctrl+Q+P 退出但不停止容器
docker inspect ${containerId} 查看容器信息
docker rm ${containerID} 刪除容器
docker stop ${containerID} 停止正在運行的容器
docker kill ${containerID} 強制停止正在運行的容器
docker start ${containerID} 啟動容器
docker restart ${containerID} 重啟容器
docker exec -it ${containerID} /bin/bash 進入一個正在運行中的容器
擴展命令
docker cp sourcePath ${containerId}:destinationPath 宿主機拷貝到容器
docker cp ${containerId}:destinationPath sourcePath 容器拷貝到宿主機
docker commit ${containerId} image:v 保存一個congtainer到image
docker save -o destinationPath imageName 保存一個image
docker load -i sourcePath 加載一個文件到image
docker run -d --name dvwa -p 8080:80 -p 33060:3306 sagikazarmark/dvwa
物理機8080端口映射dvwa的80端口,物理機33060端口映射數據庫3306端口
|
命令
|
意思
|
| docker run centos |
啟動centos
|
|
docker run -d centos
|
在后臺啟動centos
|
|
docker ps -aq
|
列出所有容器的ID
|
|
docker rm -r ${docker ps -aq}
|
刪除(列出所有容器的ID)
|
|
|
|

浙公網安備 33010602011771號