zoukankan      html  css  js  c++  java
  • docker容器的启动、停止、运行、导入、导出、删除

    运行容器:docker run -t -i  imagename  /bin/bash、docker run  imagename  /bin/bash

    参数-t让Docker分配一个伪终端并绑定在容器的标准输入上,-i让容器的标准输入保持打开。

    使用docker run命令来启动容器,docker在后台运行的标准操作包括
    1.检查本地是否存在指定的镜像,不存在则从公有仓库下载
    2.使用镜像创建并启动容器
    3.分配一个文件系统,并在只读的镜像层外面挂载一层可读可写层
    4.从宿主主机配置的网桥接口中桥接一个虚拟接口道容器中去
    5.从地址池分配一个ip地址给容器
    6.执行用户指定的应用程序
    7.执行完毕之后容器被终止

    docker start 直接将一个已经终止的容器启动运行起来

    docker restart 命令来重启一个容器


    docker stop 来终止一个运行中的容器。使用docker ps -a来看终止状态的容器。


    进入运行中的后台程序:有时候我们加了参数-d,这时容器自动进入后台运行。这个时候我们要再次进入容器,docker attach是Docker自带的命令,docker attach imagename,若有多个用户attach到一个容器,一个窗口命令阻塞,其他窗口都无法执
    行,nsenter命令:在util-linux包2.23版本后都有包含。nsenter可以访问另一个进程的名字空间

    docker ps查看正在运行的容器

    docker ps -a查看所有容器

    è¿éåå¾çæè¿°

    进程的PID# docker inspect -f {{.State.Pid}} c74e0f07a914

    或者:PID=$(docker-pid 5d1ba7f7affc)

    è¿éåå¾çæè¿°

    有了PID后,可以nsenter进入容器:nsenter --target 21140(得到的PID) --mount --uts --ipc --net --pid


    docker export 5d1ba7f7affc > ubuntu.tar:导出一个id为5d1ba7f7affc的容器为ubuntu.tar快照

    cat ubuntu.tar | docker import - test/ubuntu:7 导入容器快照作为镜像

    docker import http://xxxx.com/image_test.tgz test/image_test:导入一个url为镜像快照

    镜像快照load、容器快照import导入的区别

    docker中可以使用docker load来导入镜像,也可是使用docker import来导入一个容器快照到docker镜像。两者的区
    别是容器快照将丢弃所有的历史记录和元数据信息。而镜像保存完整的记录,因此要更大些。


    docker rm 容器id:来删除一个终止状态的容器,加-f强制删除

  • 相关阅读:
    android 如何添加第3方lib库到kernel中
    如何搭建modem编译环境
    /dev、/sys/dev 和/sys/devices 和udev的关系
    Makefile的obj-y 和 obj-m
    MTK Android添加驱动模块
    使用 /sys 文件系统访问 Linux 内核
    JNI设置C++与java的结合(2)
    android 常用方法集合
    操作系统(科普章节)
    前端面试之前要准备的那些事
  • 原文地址:https://www.cnblogs.com/onenoteone/p/12441691.html
Copyright © 2011-2022 走看看