Docker容器:container

基本概念

  容器是镜像的运行实例,一般来说,镜像是一个只读文件,而容器运行时会带有可写的文件层。

基础命令

新建容器并运行

  command: docker [container] create [options] imageName [command] [arg…]
  options: docker [container] create --help
  根据本地已经存在的镜像来创建容器,如果本地镜像不存在,将会自动尝试从远程仓库获取镜像。
  新建的容器是处于停止状态,需要用其他命令启动:
  command: docker [container] start [options] createdContainerId
合并两个操作:
  command: docker run [options] createdContainerId/imageName
  options: man docker-run
  实际上docker run createdContainerId/imageName 可以直接创建容器并运行,在这里有两个常用的选项 -i:让容器的标准输入保持打开,-t:给容器分配一个伪终端。这两个命令一般一起使用,让用户能够与容器进行交互。
从容器创建到运行完成 系统做的步骤:

  1. 检查本地是否存在指定的镜像,不存在则从远程仓库拉取
  2. 利用指定的镜像创建一个容器并运行
  3. 给容器分配一个文件系统,并在只读镜像的外层挂载一个可读写的层
  4. 从宿主主机配置的网桥接口中桥接一个虚拟的接口到容器
  5. 从网桥的地址池中分配一个IP给容器
  6. 执行用户指定的程序
  7. 容器完成任务停止

查看容器输出
  command: docker [container] logs [options] containerId

进入容器

  运行容器时使用-d选项可使容器进入后台运行
  command: docker [container] attach [options] containerId
  command: docker [container] exec [options] containerId command [arg…]
  第一个命令多个窗口是同步的,第二个则每个窗口独立,具体的差别用的时候在去体会。

停止容器

暂停容器
  command: docker [container] pause [options] containerId
恢复执行
  command: docker [container] unpause [options] containerId
终止容器
  command: docker [container] stop [options] containerId
  这里可以通过选项,设置在一段时间(默认10秒)后再停止容器的运行,选项嘛就看man手册。
  强制终止:docker [container] kill containerId
清除所有为停止状态的容器
  command: docker container prune

删除容器

  command: docker [container] rm [options] containerId
  默认情况下,只能删除停止状态的容器,要删除运行的容器需要加-f选项,此时会先停止容器并删除。

导出容器

  command: docker [container] export [options] containerId
  导出一个已经创建的容器,容器在运行状态时也能导出。用选项-o指定导出的文件名,也可以使用重定向。
  导出容器和镜像的区别:
  导出镜像会完整保存记录,包括历史记录,元数据等,而导出容器时这些数据都会丢失。

导入容器

  command: docker [container] import [options] containerId

查看容器

  • 查看容器详情:
    command: docker [container] inspect [options] containerId
  • 查看容器内进程
    command: docker [container] top [options] containerId
  • 查看统计信息
    command: docker [container] stats [options] containerId

其他命令

  • 容器和本地主机之间复制数据
    command: docker [container] cp [options] containerId:src dest
    command: docker [container] cp [options] dest containerId:src
  • 查看变更
    command: docker [container] diff [options] containerId
  • 查看端口配置
    port
  • 更新配置
    update

命令使用细节,用到时再找资料



参考

[1] http://www.dockerinfo.net

[2] Docker技术入门技术与实战 .第三版

发布了48 篇原创文章 · 获赞 3 · 访问量 5155

猜你喜欢

转载自blog.csdn.net/ydeway/article/details/100098317
今日推荐