docker命令记不住?docker常用操作命令大全

746 阅读3分钟

这是我参与8月更文挑战的第7天,活动详情查看:8月更文挑战

Docker 是一个开源项目,诞生于 2013 年初,最初是 dotCloud 公司内部的一个业余 项目。它基于 Google 公司推出的 Go 语言实现。项目后来加入了 Linux 基金会,遵从了 Apache 2.0 协议,项目代码在 GitHub 上进行维护。

Docker 项目的目标是实现轻量级的操作系统虚拟化解决方案,使用Docker,开发和测试可以快速部署和迁移环境,并且能保证环境的一致性,从而提升软件的开发和维护效率。

与虚拟机相比,docker有优点也有缺点,具体可以看下图:

img点击并拖拽以移动

正好最近在部署环境,就把docker常用的操作和命令给大家做一个总结:img点击并拖拽以移动

docker进程相关命令

  • systemctl start docker #启动docker服务
  • systemctl stop docker #停止docker服务
  • systemctl restart docker#重启docker服务
  • systemctl status docker #查看docker服务状态
  • systemctl enable docker#设置开机启动服务

docker容器管理命令

docker run --name={your_name} --d {image_name} # 运行容器

参数说明:

-i:保持容器运行。通常与 -t 同时使用。加入it这两个参数后,容器创建后自动进入容器中,退出容器后,容器自动关闭。

-t:为容器重新分配一个伪输入终端,通常与 -i 同时使用。

-d:以守护(后台)模式运行容器。创建一个容器在后台运行,需要使用docker exec 进入容器。退出后,容器不会关闭。

-it 创建的容器一般称为交互式容器,-id 创建的容器一般称为守护式容器

--name:为创建的容器命名。

  • docker ps # 查看正在运行的容器
  • docker ps -s -a #查看当前所有容器
  • docker stop容器名称 #停止容器
  • docker restart 容器名称 #重启容器
  • docker kill 容器名称 #杀死容器
  • docker rm -f 镜像ID或者镜像名#删除已经停止的容器

如果容器是运行状态则删除失败,需要停止容器才能删除

docker镜像管理命令

  • docker images #查看当前机器的所有镜像
  • docker images –q # 查看所用镜像的id
  • docker search 镜像名称 #搜索镜像,网络中查找需要的镜像
  • docker pull 镜像名称 #从Docker仓库拉取镜像,名称:版本号
  • docker push 镜像名称 #推送镜像
  • docker rmi 镜像名称/镜像id #删除本地机器的镜像
  • docker rmi docker images -q # 删除所有本地镜像
  • docker tag 镜像名称:tag 镜像名称:tag #为一个镜像打tag
  • docker save {image_name} > {new_image_name}.tar #镜像打包成一个tar包
  • docker load < {image_name}.tar #解压一个镜像tar包

docker查看日志信息

  • docker logs -f 容器名称 #查看容器日志
  • docker info #查看docker服务的信息
  • docker inspect 容器名称 # 获取镜像的元信息,详细信息

与容器交互的命令

进入正在运行的容器

docker exec -it 容器ID或者容器名 /bin/bash

exec的意思是在容器中运行⼀个命令。/bin/bash是固有写法,作用是因为docker后台必须运行一个进程,否则容器就会退出,在这里表示启动容器后启动 bash。

退出容器

exit #退出也关闭容器;

Ctrl+P+Q #退出不关闭容器

创建启动容器时,使用–v参数设置数据卷

docker run ... –v 宿主机目录/文件:容器内目录/文件

数据卷是宿主机的一个目录或文件

目录必须是绝对路径

如果目录不存在,会自动创建

可以挂载多个数据卷

拷贝文件

docker cp 主机文件路径 容器ID或容器名:容器路径 #宿主机文件拷贝到容器中

docker cp 容器ID或容器名:容器路径 主机文件路径 #容器文件拷贝到宿主机中

整理不易,觉得有用,记得点个赞img