一、docker的简介

docker应用集装箱原理解决了不同开发与应用环境下程序部署运行的调试问题。它将各种程序标准化,使您能够将应用程序与基础架构分离,以便您可以快速交付软件。

  • docker较VMWare更轻量级

    Docker本身并不是容器,容器是App(应用)和lib(运行库)的组合,也就是Docker图标里面的一个集装箱,其作用是让所有的应用使用同一个的操作系统减少硬件资源的浪费,同时又能避免包括运行库运行库在内的软件冲突。docker是创建容器的工具,是应用容器引擎。

一、docker的原理

开发者可以通过docker build创建镜像,通过docker push上传镜像,用户通过docker pull下载镜像,用docker run运行应用。用户不需要再去关心如何搭建环境,如何安装,如何解决不同发行版的库冲突——而且通常不会需要消耗更多的硬件资源,不会明显降低性能。

docker技术的三大核心概念分别是:

  • 镜像(image):Docker Registry服务存储管理docker镜像,不是所有镜像都能注册到docker注册表中,用于排除问题镜像。Docker Hub 是一个任何人都可以使用的公共注册表,并且 Docker 默认配置为在 Docker Hub 上查找图像。您甚至可以运行自己的私有注册表。
  • 容器(container):容器是镜像的可运行实例。
  • 仓库(Repository)

可以通过两句口号快速理解docker:

  • Build, Ship and Run——搭建(build 创建镜像)、发送(pull,registry将镜像推送到容器中)、运行(run运行容器)
  • Build once,Run anywhere——搭建一次,到处能用

docker架构如下:

docker 一个容器里运行cmd docker一个容器跑一个应用吗_docker


容器有7种状态:

docker 一个容器里运行cmd docker一个容器跑一个应用吗_下载安装_02

一、docker的简单使用

docker桌面安装(Windows):参照官网下载安装

docker 一个容器里运行cmd docker一个容器跑一个应用吗_docker 一个容器里运行cmd_03


安装中我们选择使用 WSL 2 替换 Hyper-V(不选择在下载后会提示docker运行内存不足,自己试过修改docker的Settings.json文件,后来docker desktop一直停留在starting状态,启动失败),安装成功并启动后,若因wsl为旧版本导致docker desktop无法启动,则根据页面提示下载安装Linux内核更新包,并按个人所需下载安装相应的Linux发行版。

docker desktop是docker的图化工具,学习简单。但对于初学者建议使用命令操作,通过命令操作打印出的日志,能够反馈给我们更多有关docker的信息,而不是一个简单的成功或失败信息。有关docker的详细命令网上搜索便能查到,小编这里就不继续写了。