必備Docker命令

文章來源:https://macrozheng.github.io/mall-learning/#/reference/dockerjava

開發者必備Docker命令

本文主要講解Docker環境的安裝以及Docker經常使用命令的使用,掌握這些對Docker環境下應用的部署具備很大幫助。linux

Docker 簡介

Docker 是一個開源的應用容器引擎,讓開發者能夠打包他們的應用以及依賴包到一個可移植的鏡像中,而後發佈到任何流行的 Linux或Windows機器上。使用Docker能夠更方便低打包、測試以及部署應用程序。nginx

Docker 環境安裝

  • 安裝yum-utils:
    yum install -y yum-utils device-mapper-persistent-data lvm2
  • 爲yum源添加docker倉庫位置:
    yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
  • 安裝docker:
    yum install docker-ce
  • 啓動docker:
    systemctl start docker

Docker 鏡像經常使用命令

搜索鏡像

docker search java

展現圖片

下載鏡像

docker pull java:8

如何查找鏡像支持的版本

因爲docker search命令只能查找出是否有該鏡像,不能找到該鏡像支持的版本,因此咱們須要經過docker hub來搜索支持的版本。git

  • 進入docker hub的官網,地址:https://hub.docker.comgithub

  • 而後搜索須要的鏡像: 展現圖片docker

  • 查看鏡像支持的版本: 展現圖片centos

  • 進行鏡像的下載操做:bash

    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)
  • 動態查看日誌
    docker logs $ContainerName(或者$ContainerId) -f
    展現圖片

    查看容器的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
    展現圖片展現圖片
相關文章
相關標籤/搜索