Docker学习笔记

38 阅读2分钟

简介

概念:

用于构建,运行,传送应用程序的平台,将应用程序和它运行时,所需要的各种依赖包,第三方软件库和配置文件打包在一起,以便在任何环境都可以正确运行

docker和虚拟机的区别:

虚拟机:可以将一台服务器虚拟为多台服务器,每个虚拟化服务器都有自己的操作系统

docker:是容器的一种实现,是一个容器化的解决方案和平台,使用宿主机的操作系统,启动速度快,需要的资源更少,所以可以在一台物理服务器上,运行更多的容器

基本原理和概念

概念:(镜像,容器,仓库)

体系结构:

镜像:只读的模板,可以用来创建容器

容器:docker的运行实例,提供一个独立的可移植的环境,可以在这个环境中运行应用程序

仓库:用来存储docker镜像的地方;DockerHub(集中管理和存储镜像,实现镜像的共享和复用)

安装和配置

官网:docker.com

  1. 安装完需要启动(右上角能看到docker的小图标)
  •    window系统需要先开启HyperV
    
  1. 启动后可以在终端输入各种命令

容器化和Dockerfile

容器化:将应用程序打包成镜像,然后再容器中运行应用程序的过程

步骤:

  1. 创建一个Dockerfile

  2. 使用Dockerfile构建镜像

  3. 使用镜像创建和运行容器

实践环节

编写dockerfile,创建镜像,启动容器

举例:

如果我们需要再另一个环境中运行这个某个程序,需要执行的步骤包括:

  1. 安装操作系统

  2. 安装运行环境

  3. 复制应用程序,依赖包,配置文件

  4. 执行启动命令运行程序

在dockerfile中先指定基础镜像,镜像是按层次结构来构建的,每一层都是基于上一层的

DockerDesktop

封装了常用功能

Docker Compose

  1. 用于定义和运行多容器Docker应用程序的工具

  2. 使用yaml文件来配置应用程序的而服务

  3. 一条命令可创建并启动所有服务

举例:

比如前端,后端,数据库,缓存,nginx等分别在不同服务器上,服务之间的关联关系就是Docker Compose要解决的问题,通过docker-compose.yaml的配置文件;将互相关联容器组合在一起,使用一条命令就可以启动,停止或重建这些服务。

执行$ docker compose up 后就可以自动安装各种依赖和配置运行环境