前端Docker教程

本文是一篇面向前端的Docker教程,介绍了Docker的基础概念、工作原理、安装配置、常用命令,以及在前端开发中的应用,包括快速部署、环境一致性、镜像管理和Docker-compose的使用,帮助前端开发者理解并掌握Docker容器技术。
摘要由CSDN通过智能技术生成

Docker教程前端有这篇就够了!!!

Docker

前言

日趋复杂的运维开发环境,对虚拟服务器及应用服务的要求更加的多元化。我们需要更加容易扩展、性能优越、方便监控的管理服务,容器化应用、容器化运维应运而生。

【工欲善其事,必先利其器】需要准备的环境(三选一):

  • Linux环境(Centos 7以上/Debian 8以上/Ubuntu 16.04LTS以上版本)
  • Windows 64位专业版/企业版/教育版(Build 15063以上)
  • macOS Sierra 10.12以上的版本

如果,你有了上面的环境,就可以很快速的学习。

【收获什么】:

  1. 理解/安装docker容器技术
  2. 秒级快速部署mysql、nginx、tomcat等服务
  3. 搭建自己的git服务器
  4. 使用容器技术发布nodejs + mongodb + koa + vue的应用

概念

1. 什么是容器化?

容器化是将应用程序或服务、其依赖项及其配置(抽象化为部署清单文件)一起打包为容器映像的一种软件开发方法。

软件容器充当软件部署的标准单元,其中可以包含不同的代码和依赖项。 按照这种方式容器化软件,开发人员和 IT 专业人员只需进行极少修改或不修改,即可将其部署到不同的环境。

容器化应用程序在容器主机上运行,而容器主机在 OS(Linux 或 Windows)上运行。因此,容器的占用比虚拟机 (VM) 映像小得多。

【容器化的特点】:

  • 一致的运行环境
  • 可伸缩性
  • 更方便的移植
  • 隔离性

2. 了解Docker

Docker是用GO语言开发的应用容器引擎,基于容器化,沙箱机制的应用部署技术。可适用于自动化测试、打包,持续集成和发布应用程序等场景,包括阿里云,亚马逊在内的云计算服务商都采用了docker来打造serverless服务平台。它不仅仅可以部署项目,还可以用于数据库搭建,nginx服务搭建,nodejs、php等编程语言环境搭建。

PS: docker现已改名为moby

Docker中的三个重要概念

镜像(image)

分片的(只读)文件系统,由Dockerfile创建,它独立、易扩展、更效率

容器(container):

由Docker进程创建和管理的:文件系统 + 系统资源 + 网络配置 + 日志管理 Docker是docker镜像的运行环境,所以容器的概念就比较好理解了

仓库(registry):

用来远端存储docker镜像版本控制、变更管理、为持续集成与快速部署提供便利

image.png

 容器与镜像的关系类似于面向对象编程中的对象与类。

Docker 使用客户端-服务器 (C/S) 架构模式,使用远程API来管理和创建Docker容器。

Docker 容器通过 Docker 镜像来创建。

image.png

image.png

3. Docker vs 虚拟机

image.png

【区别】:

  1. 容器是应用层的抽象,它将代码和依赖关系打包在一起。 多个容器可以在同一台机器上运行,并与其他容器共享操作系统内核,每个容器在用户空间中作为独立进程运行。 容器占用的空间比VM少(容器映像的大小通常为几十MB),可以处理更多的应用程序,并且需要更少的VM和操作系统。
  2. 虚拟机(VM)是物理硬件的抽象,将一台服务器转变为多台服务器。 管理程序允许多台VM在单台机器上运行。 每个VM都包含操作系统的完整副本,应用程序,必要的二进制文件和库 - 占用数十GB。 虚拟机也可能很慢启动。

【总结】:

特性 容器 虚拟机
启动 秒级 分钟级
硬盘使用 一般为 MB 一般为 GB
性能 接近原生 弱于
系统支持量 单机支持上千个容器 一般几十个
开发/环境定制 方便(命令行、面向对象式) 进入虚拟机

【相同点】:

  1. 文件隔离/文件共享(沙箱)
  2. 资源隔离
  3. 网络隔离
  4. 支持多种宿主环境(扩展)
  5. 快照/镜像(版本控制/变更管理)

【不同点】:

  1. 不同的资源管理/依赖//释放(虚拟机占用更多的系统资源)
  2. 不同的应用运行环境
  3. Docker是写时复制
  4. 不同的日志方式(Docker收集日志,而虚拟机需要在虚拟系统里面看日志)
  5. 不同的交互方式(D
  • 0
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值