3-Docker常用命令

Docker常用命令

1.帮助启动类命令

  • 启动docker: systemctl start docker

  • 停止docker: systemctl stop docker

  • 重启docker: systemctl restart docker

  • 查看docker状态: systemctl status docker

  • 开机启动: systemctl enable docker

  • 查看docker概要信息:dockerinfo

  • 查看docker总体帮助文档: docker --help

  • 查看docker命令帮助文档:docker具体命令–help

2.镜像命令

  • 查看本地镜像:docker images

    • 参数:

      • -a:列出所有镜像(含历史)
      • -q:只显示镜像ID
    • 选项意义

      • REPOSITORY:表示镜像的仓库源
      • TAG:镜像的标签版本号
      • IMAGE ID:镜像ID
      • CREATED:镜像创建时间
      • SIZE:镜像大小
    • docker images -a
      docker images -q
      docker images -aq
      
      	
      * 在远程仓库搜索镜像:`docker search 镜像名`

      * ```shell
      docker search redis
  • 拉取镜像:docker pull 镜像名[:TAG]

    • 不加TAG默认latest,TAG是版本号
  • 查看镜像/容器/数据卷分别所占的空间:docker system df

  • 删除镜像:docker rmi 镜像ID 或者 docker rmi 镜像名

    • 先docker images查看,再docker rmi

    • 强制删除加参数-f

      •   docker rmi -f hello-world
          

        * 删除所有镜像

        * ```shell
        docker rmi -f $(docker images -a)

3.容器命令

  • 启动容器:docker run [OPTIONS] IMAGE [COMMAND][ARG]

    • options:

      • --name:为容器指定一个名字
      • -d:后台运行容器,同时返回容器ID
      • -i:以交互模式运行,一般与-t一起使用
      • -t:为容器分配一个伪输入终端,一般与-i一起使用
      • -P:大写,随机端口映射
      • -p:小写,指定端口映射
      • --net:使用宿主机的ip和端口
    • 案例:

      docker run -it --name=u1 ubuntu /bin/bash			#运行ubuntu,使用bash来解释
      docker ps #罗列正在运行的 容器
    • 查看容器:docker ps

    • option:

      • -a:查看历史容器记录
      • -l:查看最近的容器
  • 退出容器:exit 或者 ctrl+p+q

    • exitrun进去,容器退出;attach进去,容器退出;exec进去不退出
    • ctrl+p+qrun进去,容器不退出
  • 删除已停止的容器:docker rm 容器ID

    • option:

      • -f:删除正在运行的容器
    • 删除所有容器:

      docker rm -f $(docker ps -a -q)
  • 启动已停止的容器:docker start 容器ID

  • 强制停止容器:docker kill 容器ID

  • 进入容器:docker exec -it 容器ID /bin/bash 或者 docker attach 容器ID

  • 查看容器日志:docker logs 容器ID

    • 用于排查容器出问题的原因
  • 查看容器进程信息:docker top 容器ID

  • 查看容器详细信息:docker inspect 容器ID

4.容器备份

1.将容器内文件导出
docker cp 容器ID 原文件地址 目标文件地址
  • 原文件地址:在容器中的地址

  • 目标文件地址:在宿主机的地址

2.导入和导出容器
docker export 容器ID > 文件名.tar.gz		#导出容器到压缩文件

cat 压缩文件 | docker import - 用户名/镜像名[:TAG] #将压缩文件作为镜像导入到docker
docker run 镜像名

案例

docker export f62b5da39a4f > ubuntu.tar.gz

cat ubuntu.tar.gz | docker import - wen/ubuntu:1.0
docker run -it wen/ubuntu:1.0 /bin/bash