什么是docker?
docker是目前linux最流行的容器技术,Docker 将应用程序与该程序的依赖,打包在一个文件里面。运行这个文件,就会生成一个虚拟容器。程序在这个虚拟容器里运行,就好像在真实的物理机上运行一样 优点:占用资源小,启动快,体积也小
docker容器与虚拟机有什么区别?
虚拟机(virtual machine)就是带环境安装的一种解决方案,本质上是一个文件夹 虚拟机运行的时候独占系统资源,因为它运行的环境是一个完整的操作系统,我们在运行之前会给虚拟机提前配置相应的物理机的硬盘,cpu和内存等资源,一旦虚拟机运行起来,这些资源他将独自占有 缺点:占用资源多,操作复杂,启动慢
docker和虚拟环境virtualenv有什么区别?
virtualenv只是针对python的隔离工具,是借助语言层面的虚拟机来实现的,不具有通用性。Docker是更底层的虚拟化技术,它是进程级的,也就是说不管什么语言编写的程序都会得到相应的服务
Docker 的主要用途,目前有三大类。
(1)提供一次性的环境。比如,本地测试他人的软件、持续集成的时候提供单元测试和构建的环境。
(2)提供弹性的云服务。因为 Docker 容器可以随开随关,很适合动态扩容和缩容。
(3)组建微服务架构。通过多个容器,一台机器可以跑多个服务,因此在本机就可以模拟出微服务架构。
Image
docker运行前的docker叫做image,Docker 把应用程序及其依赖,打包在 image 文件里面,image也就是docker容器的镜像文件,也可以说是模板,一个image可以生成多个不同的docker实例,image像类一样可以继承
Docker的常用操作
docker version 查看本地docker的版本
docker image ls 列出本地镜像列表
docker image rmi [imageName] 删除镜像
docker image pull library/hello-world 从仓库抓取镜像到本地(由于Docker 官方提供的 image 文件都放在library组里面,可以写成:docker image pull hello-world)
docker container ls -a 列出所有状态的容器实例(运行状态和未运行状态都会列出来)
docker container run hello-world 生成docker实例(如果本地不存在hello-world镜像,则会从仓库自动抓取)
docker container start [containerID] 开始一个停止的docker实例
docker container stop [containerID] 让docker容器停止运行服务
docker container kill [containerID] 让docker容器停止运行服务
docker container logs [containerID] 查看 docker 容器的输出
docker container exec 进入一个正在运行的 docker 容器
例如:$ docker container exec -it [containerID] /bin/bash 一旦进入了容器,就可以在容器的 Shell 执行命令了。
docker container cp 从正在运行的 Docker 容器里面,将文件拷贝到本机
例如:$ docker container cp [containID]:[/path/to/file] . #注意看后面有个点哟
添加国内docker镜像源,让我们拉取镜像变得更快
sudo vim /etc/docker/daemon.json 然后添加下面代码: { "registry-mirrors": ["https://y0qd3iq.mirror.aliyuncs.com"] }
docker info|grep Mirrors -A 1 查看镜像源是否成功添加 docker search mysql 从docker镜像源查看是否有mysql
 
更多docker命令请参考https://github.com/KeKe-Li/docker-directive
>>>>下一篇构建自己的docker容器,并且上传至DockerHub>>>>

docker系列之一:初见docker的更多相关文章

  1. docker系列四之docker镜像与容器的常用命令

    docker镜像与容器的常用命令 一.概述   docker的镜像于容器是docker中两个至关重要的概念,首先给各位读者解释一下笔者对于这两个概念的理解.镜像,我们从字面意思上看,镜子里成像,我们人 ...

  2. 8天入门docker系列 —— 第一天 docker出现前的困惑和简单介绍

    docker出来也有很多年了,但用到的公司其实并不是很多,docker对传统开发是一个革命性的,几乎颠覆了之前我们传统的开发方法和部署模式,而大多 公司保守起见或不到万不得已基本上不会去变更现有模式. ...

  3. Docker系列(七):Docker图形化管理和监控

    Docker管理工具之官方三剑客 Docker Machine是什么鬼 从前 现在 你需要登录主机,按照主机及操作系统特有的安装以及配置步骤安装Docker,使其 能运行Docker容器. Docke ...

  4. Docker系列二:Docker的基本结构

    Docker的基本结构 Docker 的三大基础组件 Docker有三个重要的概念:仓库 , 镜像 和 容器 ,它们是Docker的三大基出组件 Docker的组织结构 Docker处于操作系统和虚拟 ...

  5. Docker系列一:Docker基本概念及指令介绍

    1. Docker是什么? Docker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的 Linux 机器上,也可以实现虚拟化.容器是完全使用 ...

  6. Docker系列一:Docker的介绍和安装

    Docker介绍 Docker是指容器化技术,用于支持创建和实验Linux Container.借助Docker,你可以将容器当做重量轻.模块化的虚拟机来使用,同时,你还将获得高度的灵活性,从而实现对 ...

  7. Docker系列(五):Docker网络机制(上)

    Linux路由机制打通网络 路由机制是效率最好的 docker128上修改Docker0的网络地址,与docker130不冲突 vi /usr/lib/systemd/system/docker.se ...

  8. Docker系列(三):Docker自定义容器镜像

    将容器编程镜像: docker commit [repo:tag] 网上有这句话:当我们在制作自己的镜像的时候,会在container中安装一些工具.修改配置,如果不做commit保存 起来,那么co ...

  9. Docker系列(二):Docker基础命令

    docker的部署安装(Linux kernel至少3.8以上): yum install docker docker1.8安装:(下面 是两个命令) # cat >/etc/yum.repos ...

  10. 土法搞docker系列之自制docker的graph driver vdisk

    写在最前 偶然整理,翻出来14年刚开始学docker的时候的好多资料.当时docker刚刚进入国内,还有很多的问题.当时我们的思考方式很简单,docker确实是个好的工具,虽然还不成熟.但是不能因为短 ...

随机推荐

  1. django+sqlite3进行web开发(一)

    服务器配置 安装django sudo apt-get install python-django -y 安装mysql(可选) 也可以直接使用sqlite sudo apt-get install ...

  2. Git创建与简单使用

    一. 服务器端 创建空的仓库(以项目tm201为例) 1. git账户登录 2. 新建仓库目录 mkdir tm101.git && cd tm201.git 3. git初始化新的空 ...

  3. 深度学习查看GPU实时使用情况

    1.CPU使用情况查看 动态查看 打开终端,输入: $  top按Ctrl+C退出查看. 即可看到实时的CPU使用情况. 查看版本 $ top -h 即可看到当前procps-ng的版本. 2. gp ...

  4. selenium webdriver使用的一些小技巧(持续更新中)

    1.开始结束时间只支持控件选择,不支持填写,怎么办? 如下图: 解决方案: 用javaScipt把开始结束时间的reaonly属性去除,然后再输入,举例如下 /**     * 输入开始日期     ...

  5. Mongo DB 下载安装

    目录 1.下载MongoDB 2.启动MongoDB 3.添加环境变量,添加启动服务 4.MongoDB操作 1.创建用户以及权限控制: 1.下载MongoDB MongoDB的官网 简单下载方法 w ...

  6. es4x 使用nodejs 开发vertx 应用框架试用

    es4x 是将vertx 的特性带到nodejs 的开发中,性能很不错,同时开发方式和nodejs 一样,可以加速vertx 应用的开发,同时也可以方便的集成java 软件包,提供的cli 工具也很方 ...

  7. SpringBoot配置文件加载位置与优先级

    1. 项目内部配置文件 spring boot 启动会扫描以下位置的application.properties或者application.yml文件作为Spring boot的默认配置文件 –fil ...

  8. day 19

    If you think you can, you can. And if you think you can't, you're right.

  9. Codeforces Round 561(Div 2)题解

    这是一场失败的比赛. 前三题应该是随便搞的. D有点想法,一直死磕D,一直WA.(赛后发现少减了个1……) 看E那么多人过了,猜了个结论交了真过了. 感觉这次升的不光彩……还是等GR3掉了洗掉这次把, ...

  10. linux脚本中有source相关命令时的注意事项

    写这个问题起因是因为一个同学去的java一键脚本环境变量设置问题, [root@localhost u01]# more 1.sh #!/bin/bash grep -q "export J ...