docker环境安装,镜像和容器常用命令

docker学习笔记

1 docker环境安装

1.1 安装yum-utils

   yum install -y yum-utils device-mapper-persistent-data lvm2

1.2  为yum源添加docker仓库位置

yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo

1.3  安装docker

yum install docker-ce

1.4 启动docker

 systemctl start docker      

2 docker镜像常用命令

2.1 搜索镜像

 docker search mysql

2.2 查找镜像支持的版本

 

进入docker hub的官网,地址为:https://hub.docker.com,然后搜索需要的镜像

docker环境安装,镜像和容器常用命令_第1张图片

image-20200810135719724

 

docker环境安装,镜像和容器常用命令_第2张图片

image-20200810135737004

2.3 下载镜像

 

docker pull mysql:5.7

2.4 列出镜像

 

 docker images

2.5 删除镜像

  • 指定名称删除镜像:

      docker rmi mysql:5.7
    
  • 指定名称删除镜像(强制):

    docker rmi -f mysql:5.7
    
  • 删除所有没有引用的镜像

     docker rmi  $(docker images | grep none | awk '{print $3}')
    
  • 强制删除所有的镜像

      docker rmi -f $(docker images)
    

3 Docker容器常用命令

3.1 新建并启动容器

  docker run -p 3306:3306 --name mysql -d mysql:5.7
  • 参数解释

    -p  指定端口映射,格式为:hostPort:containerPort

    --name选项:指定运行后容器的名字为mysql,之后可以通过名字来操作容器

    -d 表示后台运行

3.2 列出运行中的容器

  docker ps 

3.3 列出所有的容器

 docker ps -a

3.4 停止容器

 docker stop containerName(containerId)
 

例如:docker stop mysql or docker stop b417ac5a44b0

3.5 强制停止所有的容器

  docker kill containerName(containerId) 
  

例如:docker kill mysql or docker kill b417ac5a44b0

3.6 启动停止的容器

 docker start containerName(container)
 

例如:docker start mysql docker start b417ac5a44b0

3.7 进入容器

  • 先查询出容器的pid

     docker inspect --format "{{.State.Pid}}" $ContainerName(或者$ContainerId)
    
    • 根据容器的pid进入容器

       

      nsenter --target 11239  --mount --uts --ipc --net --pid
      

3.8  删除容器

  • 删除指定容器

     docker rm $ContainerName(或者$ContainerId)
    
  • 按名称删除容器

     docker rm `docker ps -a | grep mysql* | awk '{print $1}'`
    
  • 强制删除所有的容器

      docker rm -f $(docker ps -a -q)
    

3.9 查看容器的日志

  • 查看当前容器日志

    docker logs containerName(containerId)
    
  • 动态查看当前容器日志

      docker logs containerName(containerId) -f
    

4.0 查看容器的ip地址

    docker inspect --format '{{ .NetworkSettings.IPAddress }}'  containerName(containerId)

4.1 修改容器的启动方法

docker container update --restart=always $ContainerName

4.2 启动容器时指定时区

  docker run -p 80:80 --name nginx \ -e TZ="Asia/Shanghai" \ -d nginx:1.17.0

4.3 在宿主机查看docker容器 cpu,内存,网络,io使用情况

  • 查看指定容器情况

      docker stats  containerName(containerId)
    
    • 查看所有容器情况

 

  docker stats  -a
  • 查看docker 磁盘使用情况

     

     docker system df
    

4.4  进入docker容器内部的bash

  docker exec -it $ContainerName /bin/bash
  • 使用root账户进入docker容器内部的bash

      docker exec -it --user root $ContainerName /bin/bash
    

4.5 创建外部网络

 

 docker network create -d bridge my-bridge-network

4.6 修改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

你可能感兴趣的:(docker环境安装,镜像和容器常用命令)