Docker 和VM的区别

Docker就是类似于一个打包好的环境,相关的服务都安装在里面,可以直接使用的。

VM就相当于另外一套独立的系统,独立的IP,虚拟硬件。 要使用就需要单独构建一套才可以。

Docker就可以直接拉取使用。快速构建业务环境。

三块东西:

@1、Image,镜像

@2、容器操作。

Docker run --name container-name -d image-name  (自定义容器名,后台运行)

docker ps (查看运行中的容器)

docker stop container-name/container-id (停止运行的容器)

docker rm container-id (删除指定容器)

端口映射: -p 6379:6379

docker run -d -p 6379:6379  --name myredis  docker.io/redis

容器日志:  docker logs container-name/container-id

@3.容器注册中心。

Docker Hub 注册中心用于上传和下载镜像,分为公共注册中心和私有注册中心两种。

https://hub.docker.com/

Docker安装, Linux系统内核要高于3.10,否则会出现问题。

uname -r 查看

yum -y install docker 安装docker

启动Docker  systemctl start docker

设置Docker开机自启: systemctl enable docker

使用docker 安装一个mysql的命令

docker run -d -p 3307:3306 --name myMysql -e MYSQL_ROOT_PASSWORD=123456 53ebe3d4d330

运行之后会生成一个CONTAINER ID

docker ps  -a  可以查看所有 docker的运行状态

[root@VPN ~]# docker logs 209c6c8da98e

查看docker运行的日志记录。

举例使用Docker安装部署一个tomcat服务:

docker pull docker.io/bitnami/tomcat

docker run -d -p 8088:8080 950725979338

运行docker安装的tomcat服务。

然后在本地使用tcping 工具看8088 端口是否能ping通。

使用docker启动另外一个tomcat,端口8089

[root@VPN ~]# docker run -d -p 8089:8080 950725979338
41902506d388122fa3b2ff854f5369648b9757bbab02fb59585f113000a8e56c

可以查看docker启动的服务:

docker关闭指定的容器:

docker stop 容器id 关闭容器

Docker是容器管理工具, 轻量级,便携式,与外界隔离的容器。

所有容器磁盘操作其实都是对/var/lib/docker/的操作,

简介见:https://www.jianshu.com/p/f58eeaf73d69

容器和虚拟机的概念并不相同,容器也并不能取代虚拟机。

在容器中很方便地构建、传输、运行应用的引擎

Docker的部署目录:/var/lib/docker

Docker:

是容器管理工具

不是虚拟化引擎

使用层级的文件系统

可以节约时间 docker-compose up 命令。

可以节省开销

2. docker 解决什么问题

@1.解决虚拟机资源消耗问题。

@2.快速部署

@3.提供一次性环境

@4.提供弹性的云服务

@5.组建微服务架构

1. 安装 docker 引擎

2. 使用 docker

1. 理解 docker 的架构

2. docker 命令

3. 卷的概念

4. 自制镜像并发布

5. docker 网络

6. docker pipework

7. docker 网络端口映射

总结

初玩Docker的更多相关文章

  1. 用前端姿势玩docker【四】基于docker快速构建webpack的开发与生产环境

    目录 用前端姿势玩docker[一]Docker通俗理解常用功能汇总与操作埋坑 用前端姿势玩docker[二]dockerfile定制镜像初体验 用前端姿势玩docker[三]基于nvm的前端环境构建 ...

  2. 用前端姿势玩docker【五】快速构建中类Unix系统与Windows系统的差异化处理

    目录 用前端姿势玩docker[一]Docker通俗理解常用功能汇总与操作埋坑 用前端姿势玩docker[二]dockerfile定制镜像初体验 用前端姿势玩docker[三]基于nvm的前端环境构建 ...

  3. 【Howie玩docker】-windows下玩docker

    Windows下安装toolbox一直没成功,于是投机取巧,用虚拟机手工打造玩docker的方法. 步骤: 安装虚拟机,安装centos 在win下建立共享文件夹,假如是 f:/share 在cent ...

  4. d4d#9 玩Docker只要浏览器就够了,PWD是个神奇的网站

    本文是d4d系列的第9篇,在这一篇中给大家介绍一个学习Docker最为快捷高效的方式,你不需要自己搭建环境,也不用担心把自己的开发环境搞乱,你需要的只是一个浏览器,就可以立即开始学习Docker的常用 ...

  5. 好久没玩docker了,温下手

    好久没玩docker了,温下手 安装 Docker Docker 软件包已经包括在默认的 CentOS-Extras 软件源里.因此想要安装 docker,只需要运行下面的 yum 命令: yum i ...

  6. 用前端姿势玩docker【二】dockerfile定制镜像初体验

    前言 书接上文,关于dockerfile指令的api在此处不做赘述,在此只是记录下注意事项: '示坑以埋之'. 配置指令 FROM dockerfile必须以此开头 一个dockerfile可执行添加 ...

  7. 【Howie玩docker】-命令行只显示-bash-4.1#

    灵雀云上面用docker建了个centOS的实例,首个免费,正好当云主机来玩. 但是,打开有个问题,命令行不显示当前用户和路径. 只显示: -bash-4.1# 简单,配置文件不全而已. 下面对其重新 ...

  8. 用前端姿势玩docker【一】Docker通俗理解常用功能汇总与操作埋坑

    前言 首先一句话表达个人对docker的理解:与传统虚拟技术基于硬件及物理资源的虚拟化相比,Docker更加轻量化,docker为基于操作系统或内核级别的虚拟化,并且提供了从各种机制与操作以满足从开发 ...

  9. 【Howie玩docker】-Centos 7 docker 启动容器iptables报No chain/target/match by that name

    重启了一下服务器,以前能运行的docker网络应用都不能正常开启了. 因为用的是centos7,所以猜测有可能是iptables的问题. docker start 或者run 后总是提示类似的错误: ...

随机推荐

  1. leetcode 29 两数相除

    问题描述 给定两个整数,被除数 dividend 和除数 divisor.将两数相除,要求不使用乘法.除法和 mod 运算符. 返回被除数 dividend 除以除数 divisor 得到的商. 示例 ...

  2. Starling 环形进度条实现

    项目初期想实现这个效果来着,查了很多资料(包括式神的<神奇的滤镜>),也没找到完美的实现方法,,当时时间紧迫,就找了传统的进度条来代替实现. 最近偶然心血来潮,查了各方面资料,终于找到实现 ...

  3. 每个程序员都可以「懂」一点 Linux

    提到 Linux,作为程序员来说一定都不陌生.但如果说到「懂」Linux,可能就没有那么多人有把握了.到底用 Linux 离懂 Linux 有多远?如果决定学习 Linux,应该怎么开始?要学到什么程 ...

  4. Tomcat源码分析 (四)----- Pipeline和Valve

    在 Tomcat源码分析 (二)----- Tomcat整体架构及组件 中我们简单分析了一下Pipeline和Valve,并给出了整体的结构图.而这一节,我们将详细分析Tomcat里面的源码. Val ...

  5. Docker入门-docker compose的使用

    Compose简介 Compose项目是Docker官方的开源项目,负责实现对Docker容器集群的快速编排.其代码目前在https://github.com/docker/compose 上开源. ...

  6. (18)ASP.NET Core 基于现有数据库创建EF模型(反向工程)

    1.简介 Entity Framework Core可通过数据库提供给应用程序的插件访问许多不同的数据库.我们可以通过使用Entity Framework Core构建执行基本数据访问的ASP.NET ...

  7. Django+Vue前后端分离项目的部署

    部署静态文件: 静态文件有两种方式 1:通过django路由访问 2:通过nginx直接访问 方式1: 需要在根目录的URL文件中增加 url(r'^$', TemplateView.as_view( ...

  8. 【数据结构】8.java源码关于HashMap

    1.hashmap的底层数据结构 众所皆知map的底层结构是类似邻接表的结构,但是进入1.8之后,链表模式再一定情况下又会转换为红黑树在JDK8中,当链表长度达到8,并且hash桶容量超过64(MIN ...

  9. java 局部变量成员变量区别

    首先,成员变量可直接初始化(即赋值),也可不赋值,不赋值java按照以下类型自动赋值 局部变量调用前必须初始化(赋值),java不会自动处理 局部变量可以和成员变量重名(但不建议),如果在当前对象的方 ...

  10. Vue中 父子传值 数据丢失问题

    在Vue中,父子组件传值,子组件通过props接收父组件传递的数据 父组件 questionList  : 传递数据参数 questionsLists: 传递数据源 子组件 porps 接收父组件方式 ...