1. 什么是container

  通过 image 创建 (copy得到的)

  在 image layer (在image 层) 上 增加了一层 container layer (container 层 该层可读可写)

  类比面对对象: 类(image) 和 实例 (container)

  Image 负责 app 的存储和分发 , Container 负责运行

2.交互 container

  运行cenos image 就进入了 centos 内 然后可以进行一些操作

  docker run -it centos

3.docker 的一些命令  (具体查看 https://docs.docker.com/engine/reference/commandline/container/)

  使用 docker --help 进行查看

  docker container rm  容器的ID  (或 docker rm 容器的 ID)  即可删除容器

  docker container ls  (或 docker ps)                查看正在运行的容器

  docker container ls -a  (或 docker ps -a)         查看所有容器

  docker image rm 镜像的id (或 docker rmi 镜像的ID)          即可删除image

  docker contaner ls -aq                  列举所有的container id

  docker rm $(docker contaner ls -aq)           清理所有的container

  docker container ls -f 'status=exited' -q         列出所有状态为 exited 的容器

  docker stop [container_id or container_name]        停止运行中的容器

  docker run -d [image_name]                后台运行 将要启动的contianer

  docker run --name=demo [image_name]          命名将要启动的容器名称为 demo

  docker inspect [container_id or container_name]     显示 容器 的一些详细信息

4. 操作运行中的容器

  docker exec -it [container_id] /bin/bash  #通过编写 shell 脚本进入容器

  docker exec -it [container_id] python    # 通过编写 python 进入容器

  docker exec -it [container_id] ip a     # 打印出运行容器的ip地址

5.docker 的两个命令

  1. 基于某个 image 创建了一个container 后面安装了一些软件 然后将这个container 重新发布为新的 image (不推荐)

  docker container commit  ( 简写成 docker commit )

    1. docker run -it centos  ( 运行centos )

    2. yum install -y vim ( 安装vim )

    3. exit  (退出运行的容器)

    4. docker container ls -a (查看所有的容器)

    5. docker commit [container的name] [新image的名字] (根据容器 创建一个新的 image)

    6. docker commit centos  zonehoo/centos-with-vim

  2. 创建一个 image 从 Docker file

  docker image build ( 简写成 docker build )

    1. mkdir docker-centos-vim && cd docker-centos-vim

    2. vim Dockerfile

      FROM centos        #选择基础镜像  base image

      RUN yum install -y vim     #在 base image 内 运行安装 vim

      保存退出

    3.创建 image 通过当前文件夹的 Dockerfile 并命名为 zonehoo/centos-vim-new

      docker build -t zonehoo/centos-vim-new .

    4.通过 docker images 查看生成的 image

      docker images

6.docker container的更多相关文章

  1. 使Docker Container支持运行SWT程序

    1, 下载安装JDK的docker container 我是从这个源下载已经做好的JDK8的container: https://registry.hub.docker.com/u/dockerfil ...

  2. Docker container network configuration

    http://xmodulo.com/networking-between-docker-containers.html How to set up networking between Docker ...

  3. 自动启动docker container

    当系统启动的时候要启动docker container, 可以利用systemctl来实现 比如拿mongodb为例 创建 /usr/lib/systemd/system/docker_mongodb ...

  4. 怎样从host之外连接到docker container

    启动docker的时候的指令使用 sudo docker -H tcp://0.0.0.0:4243 -H unix:///var/run/docker.sock -d & 这样就能使dock ...

  5. Docker4Windows -- 从外部(非本机host)访问 由docker container运行的程序

    背景 当我们在windows 上面运行docker container的时候,我们需要借助于模拟器(例如,Virtual box/Hyper V),她的目的主要是在我们的windows系统上面模拟出一 ...

  6. docker container(容器)

    docker 容器 Docker容器类似于一个轻量级的沙箱,Docker利用容器来运行和隔离应用 容器是从镜像创建的应用运行实例.它可以启动,开始,停止,删除,而这些容器都是彼此相互隔离,互不可见的. ...

  7. 如何在查看docker container内进程信息,与宿主机上进程信息的映射关系

    docker container内运行的进程,在宿主机上,通过ps也是能够查到的,但是在不熟悉命令的时候,无法快速找到他们的关系. 这里科普一个基础命令 docker top 1. 找到容器的id d ...

  8. Docker: docker container常用命令实战(2)-数据持久化

    应用服务是在容器中运行的,容器随时会被删除,如果是个mysql容器呢?数据存储在容器里,容器删除了,数据也没了,那就是个噩梦. 所以一些数据是需要存储在容器之外的,可以是宿主机,可以是网络存储位置上, ...

  9. Docker: docker container常用命令实战

    容器管理,容器常用选项 选项 描述 -i, –interactive 交互式 -t, –tty 分配一个伪终端 -d, –detach 运行容器到后台 -e, –env 设置环境变量 -p, –pub ...

  10. bridge br0 docker 网络问题 Docker Container与Docker Host

    Docker学习笔记:Docker 网络配置 - docker ppt - docker中文社区http://www.docker.org.cn/dockerppt/111.html Bridge t ...

随机推荐

  1. js 混合构造原型 运用

    1.给10个div添加点击事件 <body> <div class="sd">sdss</div> <div class="sd ...

  2. redis主要配置项

    目录 redisd配置 redis主要配置项 这里就列举两例示例,之后的实验会有详细的示例!! redisd配置 redis主要配置项 bind 0.0.0.0 #监听地址,可以用空格隔开后多个监听I ...

  3. ajax 跨域webapi 最简单的demo(只介绍Get)

    这几天遇到一个nodejs的项目,使用VSCode开发,需要连接数据库的,但是用nodejs连接数据库比较繁琐,需要安装很多东西,本人也懒得去研究了.后来想到建一个WebAPI然后用ajax来调用,避 ...

  4. HZNU-ACM寒假集训Day4小结 最短路

    最短路 1.Floy 复杂度O(N3)  适用于任何图(不存在负环) 模板 --kuangbin #include<iostream> #include<cstdio> #in ...

  5. VUE学习(一)——使用npm安装项目

    npm是node.js自带的功能 Node.js 安装配置 本章节我们将向大家介绍在 Windows 和 Linux 上安装 Node.js 的方法. 本安装教程以 Node.js v4.4.3 LT ...

  6. spring boot集成mybatis(2) - 使用pagehelper实现分页

    Spring Boot 集成教程 Spring Boot 介绍 Spring Boot 开发环境搭建(Eclipse) Spring Boot Hello World (restful接口)例子 sp ...

  7. c# 循环界面控件

    在 Winform 开发中,窗体(Form)就像一个大容器,可以装各种各样的控件,包括 Panel控件.如果窗体是 Winform 中的最大的容器,那么 Panel控件可以算是老二,它专门用于软件界面 ...

  8. BUUCTF-[HCTF 2018]WarmUp

    php中可以使用strpos函数与mb_strpos函数获取指定的字符串在别一个字符串中首次出现的位置,也可以使用它们判断一串字符串中是否包含别一个字符串. PHP strpos() 函数 查找 &q ...

  9. UVA - 1631 Locker(密码锁)(dp---记忆化搜索)

    题意:有一个n(n<=1000)位密码锁,每位都是0~9,可以循环旋转.每次可以让1~3个相邻数字同时往上或者往下转一格.输入初始状态和终止状态(长度不超过1000),问最少要转几次. 分析: ...

  10. BZOJ 4855 [Jsoi2016]轻重路径

    题解:用树链剖分来维护树链剖分 令d[x]=size[heavyson[x]]-size[lightson[x]] 当d[x]<0时轻重儿子关系改变 用数据结构维护d[x]并找到这些位置改变即可 ...