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

  • A+
所属分类:linux技术
摘要

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


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环境安装,镜像和容器常用命令

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

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

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

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