Docker笔记--操作容器命令

创建容器

  • docker [container] create-- 创建容器,使用docker [container] create命令新建的容器处于停止状态,可以使用docker[container] start命令来启动它。

启动容器

  • docker [container] start--启动一个已经创建了的容器

    • -d后台运行
  • docker ps--查看一个运行中的容器

创建并启动容器

  • docker [container] run --创建并启动一个容器

    • -t选项让Docker分配一个伪终端(pseudo-tty)并绑定到容器的标准输入上
    • -i则让容器的标准输入保持打开。更多的命令选项可以通过man docker-run命令来查看。

可以按Ctrl+d或输入exit命令来退出容器

退出容器

  • ocker container wait CONTAINER [CONTAINER...]--等待容器退出

查看容器输出

  • docker [container] logs

    • -details:打印详细信息;
    • -f, -follow:持续保持输出;
    • -since string:输出从某个时间开始的日志;
    • -tail string:输出最近的若干日志;
    • -t, -timestamps:显示时间戳信息;
    • -until string:输出某个时间之前的日志。

停止容器

  • docker [container] pause CONTAINER [CONTAINER...]--暂停docker容器,处于paused状态的容器,可以使用docker [container] unpause CONTAINER[CONTAINER...]命令来恢复到运行状态。
  • docker [container] stop--该命令会首先向容器发送SIGTERM信号,等待一段超时时间后(默认为10秒),再发送SIGKILL信号来终止容器,此时,执行docker container prune命令,会自动清除掉所有处于停止状态的容器。
  • docker [container] kill--直接发送SIGKILL信号来强行终止容器
  • docker [container] restart--将一个运行态的容器先终止,然后再重新启动

当Docker容器中指定的应用终结时,容器也会自动终止

处于终止状态的容器,可以通过docker [container] start命令来重新启动

进入容器

在使用-d参数时,容器启动后会进入后台,用户无法看到容器中的信息,也无法进行操作。这个时候如果需要进入容器进行操作,推荐使用官方的attach或exec命令。

  • docker [container] attach--进入容器,注意多个窗口同时进入容器时,所有窗口会同步显示,只要有一个窗口发生了阻塞,则所有窗口都会阻塞

    • --detach-keys[=[]]:指定退出attach模式的快捷键序列,默认是CTRL-pCTRL-q;
    • -no-stdin=true|false:是否关闭标准输入,默认是保持打开;
    • --sig-proxy=true|false:是否代理收到的系统信号给应用进程,默认为true。
  • docker [container] exec--可以在运行中的容器中直接执行命令

    • -d, --detach:在容器中后台执行命令;
    • --detach-keys="":指定将容器切回后台的按键;
    • -e, --env=[]:指定环境变量列表;
    • -i, --interactive=true|false:打开标准输入接受用户输入命令,默认值为false;
    • --privileged=true|false:是否给执行命令以高权限,默认值为false;
    • -t, --tty=true|false:分配伪终端,默认值为false;
    • -u, --user="":执行命令的用户名或ID。

通过指定-it参数来保持标准输入打开,并且分配一个伪终端。通过exec命令对容器执行操作是最为推荐的方式。

删除容器

  • docker [container] rm--删除处于终止或退出状态的容器

    • -f, --force=false:是否强行终止并删除一个运行中的容器;
    • -l, --link=false:删除容器的连接,但保留容器;
    • -v, --volumes=false:删除容器挂载的数据卷。
  • docker rm $(docker ps -a -q)--删除所有处于终止或退出状态的容器

导入和导出容器

  • docker [container] export--导出一个容器,不管是运行还是终止状态,可以通过-o制定tar文件或者>重定向到tar文件

  • docker [container] import [-c|--change[=[]]] [-m [=MESSAGE]] FILE |URL| - [RESPONSITORY[:TAG]]--导入一个tar文件,使其变为镜像

    • -c, --change=[]选项在导入的同时执行对容器进行修改的Dockerfile指令

查看容器

  • docker [container] inspect--查看某容器的具体信息,会以json格式返回包括容器Id、创建时间、路径、状态、镜像、配置等在内的各项信息
  • docker [container] top--查看容器内进程,包括PID、用户、时间、命令等
  • docker [container] stats--显示容器CPU、内存、存储、网络等使用情况的统计信息
    • -a, -all:输出所有容器统计信息,默认仅在运行中;
    • -format string:格式化输出信息;
    • -no-stream:不持续输出,默认会自动更新持续实时结果;
    • -no-trunc:不截断输出信息。

容器其他命令

  • docker [container] cp--复制文件
  • docker [container] port--查看容器端口映射

Docker笔记--操作容器命令的更多相关文章

  1. Docker 笔记一相关命令

    Centos 7 : Service network restart 重启网络 Ip addr 查看ip地址 Uname -r 查看内核版本 Yum install docker 安装docker 命 ...

  2. Docker中进入容器命令行及后台运行

    Docker中我们一般会有两种执行命令的方式,一种是直接进入容器的命令行,在终端执行并查看结果,一种是在后台执行,并不会在终端查看结果. 1.进入容器命令行 su root docker run -i ...

  3. docker 常用的容器命令

    容器命令 # --name 给容器起名 # -p 端口映射 # -d 后台启动 # -it 交互模式启动 # 交互模式启动 # docker run -it 镜像名/id /bin/bash # do ...

  4. Docker镜像与容器命令(转)

    Docker是一个开源的引擎,可以轻松的为任何应用创建一个轻量级的.可移植的.自给自足的容器.开发者在笔记本上编译测试通过的容器可以批量地在生产环境中部署,包括VMs(虚拟机).bare metal. ...

  5. Docker学习总结(4)——Docker镜像与容器命令

    Docker是一个开源的引擎,可以轻松的为任何应用创建一个轻量级的.可移植的.自给自足的容器.开发者在笔记本上编译测试通过的容器可以批量地在生产环境中部署,包括VMs(虚拟机).bare metal. ...

  6. Docker镜像与容器命令 专题

    https://yeasy.gitbooks.io/docker_practice/content/install/mirror.html docker的工作流程图: 至少需要配备三样东西去使用doc ...

  7. Docker笔记:常用命令汇总

    Docker常用命令汇总 启动服务 [root@localhost ~]# service docker start Redirecting to /bin/systemctl start docke ...

  8. docker启动各种容器命令大全

    安装步骤梳理 搜索镜像 拉取镜像 查看镜像 启动镜像 停止容器 移除容器 安装tomcat docker hub好查找tomcat镜像  docker search tomcat 从docker hu ...

  9. docker 创建各容器命令合集

    学习中...持续更新 docker-compose安装: curl -L https://github.com/docker/compose/releases/download/1.27.4/dock ...

随机推荐

  1. spring-第三章-jdbc

    一,回顾 aop:面向切面编程,就是将一些和主业务流程没有关系的公共代码,提取封装到切面类,通过切入点规则,可以对目标方法进行功能增强;也就是可以再目标方法执行的前后添加一段额外逻辑代码; 二,Jdb ...

  2. windows下安装python 且 安装pip

    1.安装python 第一步,windows下面的Python安装一般是通过软件安装包安装而不是命令行,所以我们首先要在Python的官方主页上面下载最新的Python安装包.  下载地址是:http ...

  3. 用户添加到sudoer列表## Allow root to run any commands anywhere root ALL=(ALL) ALL Iron ALL=(ALL) ALL

    将用户添加到sudoer列表 李序锴关注 2017.12.20 15:03:25字数 605阅读 4,067 默认情况下,linux没有将当前用户列入到sudoer列表中(在redhat系列的linu ...

  4. nohup /usr/local/node/bin/node /www/im/chat.js >> /usr/local/node/output.log 2>&1 &

    nohup和&后台运行,进程查看及终止   &后台运行 登出ssh终端,进程会被自动kill掉 但是nohup >>XX.log 2>&1 & 登出终 ...

  5. WPS-插入-公式-菜单 怎样在EXCEL中使用PRODUCT函数

    怎样在EXCEL中使用PRODUCT函数 ################   WPS2018 -插入-公式-[专门有公式菜单] 插入函数       ##################       ...

  6. 置的测试文件的大小一定要大过你的内存(最佳为内存的两倍大小),不然linux会给你的读写的内容进行缓存,会使数值非常不准确。

    使用iozone测试磁盘性能   IOzone是一个文件系统测试基准工具.可以测试不同的操作系统中文件系统的读写性能.可以通过 write, re-write, read, re-read, rand ...

  7. 攻防世界(二)Training-WWW-Robots

    攻防世界系列:Training-WWW-Robots 1.查看robots.txt的要求  补充: 什么是robots.txt协议? Robots.txt是放在网站根目录下的一个文件,也是搜索引擎在网 ...

  8. Linux ll查看文件属性详解-软硬链接详解

    Linux文件属性及类型 [root@localhost ~]# ll anaconda-ks.cfg 文件类型 权限 硬连接数 文件的大小 文件的创建,修改时间 - rw-------. 1 roo ...

  9. 【转】Jquery 使用Ajax获取后台返回的Json数据后,页面处理

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...

  10. 简单读读源码 - dubbo多提供者(provider)配置方法

    简单读读源码 - dubbo多提供者(provider)配置方法 消费者端dubbo的yml配置 dubbo: consumer: timeout: 300000 protocol: name: du ...