開發者必備Docker命令
原創: 夢想de星空 macrozheng 6月10日java
本文主要講解Docker環境的安裝以及Docker經常使用命令的使用,掌握這些對Docker環境下應用的部署具備很大幫助。linux
Docker 簡介
Docker 是一個開源的應用容器引擎,讓開發者能夠打包他們的應用以及依賴包到一個可移植的鏡像中,而後發佈到任何流行的 Linux或Windows機器上。使用Docker能夠更方便低打包、測試以及部署應用程序。nginx
Docker 環境安裝
1.安裝yum-utils:docker
yum install -y yum-utils device-mapper-persistent-data lvm2
2.爲yum源添加docker倉庫位置:centos
yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
3.安裝docker:bash
yum install docker-ce
4.啓動docker:網絡
systemctl start docker
Docker 鏡像經常使用命令
搜索鏡像
docker search java
下載鏡像
docker pull java:8
如何查找鏡像支持的版本
因爲docker search命令只能查找出是否有該鏡像,不能找到該鏡像支持的版本,因此咱們須要經過docker hub來搜索支持的版本。app
- 進入docker hub的官網,地址:https://hub.docker.com
- 而後搜索須要的鏡像:
- 查看鏡像支持的版本:
- 進行鏡像的下載操做:
docker pull nginx:1.17.0
列出鏡像
docker images
刪除鏡像
- 指定名稱刪除鏡像
docker rmi java:8
- 指定名稱刪除鏡像(強制)
docker rmi -f java:8
- 強制刪除全部鏡像
docker rmi -f $(docker images)
Docker 容器經常使用命令
新建並啓動容器
docker run -p 80:80 --name nginx -d nginx:1.17.0
- -d選項:表示後臺運行
- --name選項:指定運行後容器的名字爲nginx,以後能夠經過名字來操做容器
- -p選項:指定端口映射,格式爲:hostPort:containerPort
列出容器
- 列出運行中的容器:
docker ps
- 列出全部容器
docker ps -a
中止容器
# $ContainerName及$ContainerId能夠用docker ps命令查詢出來docker stop $ContainerName(或者$ContainerId)
好比:測試
docker stop nginx#或者docker stop c5f5d5125587
強制中止容器
docker kill $ContainerName(或者$ContainerId)
啓動已中止的容器
docker start $ContainerName(或者$ContainerId)
進入容器
- 先查詢出容器的pid:
docker inspect --format "{{.State.Pid}}" $ContainerName(或者$ContainerId)
- 根據容器的pid進入容器:
nsenter --target "$pid" --mount --uts --ipc --net --pid
刪除容器
- 刪除指定容器:
docker rm $ContainerName(或者$ContainerId)
- 強制刪除全部容器;
docker rm -f $(docker ps -a -q)
查看容器的日誌
docker logs $ContainerName(或者$ContainerId)
查看容器的IP地址
docker inspect --format '{{ .NetworkSettings.IPAddress }}' $ContainerName(或者$ContainerId)
同步宿主機時間到容器
docker cp /etc/localtime $ContainerName(或者$ContainerId):/etc/
在宿主機查看docker使用cpu、內存、網絡、io狀況
- 查看指定容器狀況:
docker stats $ContainerName(或者$ContainerId)
- 查看全部容器狀況:
docker stats -a
進入Docker容器內部的bash
docker exec -it $ContainerName /bin/bash
修改Docker鏡像的存放位置
- 查看Docker鏡像的存放位置:
docker info | grep "Docker Root Dir"
- 關閉Docker服務:
systemctl stop docker
- 移動目錄到目標路徑:
mv /var/lib/docker /mydata/docker
- 創建軟鏈接:
ln -s /mydata/docker /var/lib/docker