NAYOTA开放平台 NAYOTA开放平台
首页
  • 主题初衷与诞生
  • 介绍
  • 快速上手
  • 目录结构
  • 核心配置和约定
  • 自动生成front matter
  • Markdown 容器
  • Markdown 中使用组件
  • 相关文章

    • 如何让你的笔记更有表现力
    • 批量操作front matter工具
    • 部署
    • 关于写文章和H1标题
    • 关于博客搭建与管理
    • 在线编辑和新增文章的方法
  • 主题配置
  • 首页配置
  • front matter配置
  • 目录页配置
  • 添加摘要
  • 修改主题颜色和样式
  • 评论栏
资源
问答
范例
开发学习资料
开放平台
首页
  • 主题初衷与诞生
  • 介绍
  • 快速上手
  • 目录结构
  • 核心配置和约定
  • 自动生成front matter
  • Markdown 容器
  • Markdown 中使用组件
  • 相关文章

    • 如何让你的笔记更有表现力
    • 批量操作front matter工具
    • 部署
    • 关于写文章和H1标题
    • 关于博客搭建与管理
    • 在线编辑和新增文章的方法
  • 主题配置
  • 首页配置
  • front matter配置
  • 目录页配置
  • 添加摘要
  • 修改主题颜色和样式
  • 评论栏
资源
问答
范例
开发学习资料
开放平台
  • 目录
  • Linux

    • 说明
    • service
    • linux系统坏道检测与修复
  • docker

    • docker介绍与安装
      • 简单理解Docker
      • Docker与传统虚拟机
      • Docker的使用
        • Docker的一些基本概念
        • 安装Docker引擎
        • ubuntu下镜像存储路径的修改
    • docker使用
    • 镜像创建
    • docker-compose介绍和使用
    • docker 日志查看命令
  • nodejs

    • node14的docker容器更新
    • 内存管理,泄露,调试
  • vue

    • vue3新特性
  • 微服务架构

    • redis介绍
    • seneca介绍
    • redis docker安装
  • 物联网通信

    • 物联网通信协议说明
  • mongodb数据库

    • mongo常用查询函数
  • 开发学习资料
  • docker
Nayota
2022-05-20

docker介绍与安装

# Docker学习

Docker由Linux容器技术( LXC )演化改进而来,IBM关于LXC的描述为:"容器有效地将由单个操作系统管理的资源划分到孤立的组中,以更好地在孤立的组之间平衡有冲突的资源使用需求.与虚拟化相比,这样既不需要指令级模拟,也不需要及时编译.容器可以在核心CPU本地运行指令,而不需要任何专门的解释机制"

# 简单理解Docker

可将Docke容器理解为一种轻量级的沙盒,每个容器内运行着一个应用,不同的容器相互隔离,拥有独立的内部环境,容器之间可以通过网络通信。

# Docker与传统虚拟机

avatar 上图为docker与传统虚拟机的结构区别,传统虚拟机在硬件层面实现虚拟化,需要额外的虚拟机管理器和虚拟机操作系统层,Docker容器是在操作系统层面实现的虚拟化,直接服用本地主机的操作系统,因而更加轻量级。

特性 容器 虚拟机
启动速度 秒级 分钟级
性能 接近原生 较弱
内存代价 很小 较多
硬盘使用 MB级 GB级
运行密度 单机上千个 单机几十个
隔离性 安全隔离 完全隔离
迁移性 优秀 较弱

# Docker的使用

# Docker的一些基本概念

  1. Docker镜像

镜像类似于安装操作系统用的ISO文件,是一个只读模板,用于创建Docker。 例如,一个镜像可以只包含一个Ubuntu18.04操作系统环境,这就是一个Ubuntu镜像; 或者另有一个镜像包含了ubuntu操作系统和Apache应用程序以及必要的依赖,这个镜像可被称作一个Apache镜像。

通过版本管理和增量文件系统,创建和更新镜像的机制非常简单,或者可以直接从网上下载已经打包好的开箱即用的Docker镜像。

  1. Docker容器

Docker容器是基于Docker镜像创建的运行实例,可以启动、停止、重启和删除,这些容器是互相隔离的、互不可见的,只有通过配置Docker网段才能使它们相互连接。

容器是由一个简易的Linux系统环境以及包含在其中的应用程序打包而成的盒子

  1. Docker仓库

Docker仓库类似于代码仓库(如github),是Docker集中存放镜像的场所。一个仓库注册服务器(Registry)内往往有多个仓库,用于分门别类存放镜像,仓库内的镜像用标签(tag)区分。

例如某个公开Registry内有Ubuntu和CentOS两个操作系统镜像仓库,每个仓库内部为了区分操作系统版本,给镜像文件打上18.04、16.04、6、7等tag

仓库分公开仓库和私有仓库,目前最大的公开仓库是官方提供的Docker Hub,一些较大的云服务商如阿里云和腾讯云等也提供了公开仓库服务。当然,Docker也支持用户自行搭建公开或私有仓库,官方也提供了用于搭建仓库的镜像,方便使用。

# 安装Docker引擎

  1. Mac 和 windows系统

https://www.docker.com/products/docker-desktop (opens new window)

访问网址下载对应版本

PS: 由于windows版本需求Hyper-V虚拟化技术,需要windows10专业版以上以及对应的Server系统,win7与win10家庭版不能使用docker

  1. Linux系统

https://docs.docker.com/install/linux/docker-ce/ubuntu/ (opens new window)

官方文档,以Ubuntu为例,安装docker-ce版本,链接中另有其它Linux版本的安装方式 为了提高下载速度,在安装的第三步时,将download.docker.com换成mirrors.aliyun.com/docker-ce

  1. apt-get update
  2. apt-get install
    apt-transport-https
    ca-certificates
    curl
    gnupg-agent
    software-properties-common
  3. curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
  4. apt-key fingerprint 0EBFCD88
  5. add-apt-repository
    "deb [arch=amd64] https://mirrors.aliyun.com/docker-ce/linux/ubuntu
    $(lsb_release -cs)
    stable"
  6. apt-get update
  7. apt-get install docker-ce docker-ce-cli containerd.io

# ubuntu下镜像存储路径的修改

  1. 停止docker进程
    systemctl stop docker
  2. 拷贝或移动docker文件至新目录
    mv /var/lib/docker/* /opt/docker/
  3. 修改docker配置文件
    /lib/systemd/system/docker.service
  4. 在里面的EXECStart的后面增加后如下:

ExecStart=/usr/bin/dockerd --graph /home/docker

  1. 重新enable 一下docker 服务 重新进行软连接 以及进行一次 daemon-reload

systemctl disable docker
systemctl enable docker
systemctl daemon-reload
systemctl start docker

上次更新: 2022/05/20, 14:54:51
linux系统坏道检测与修复
docker使用

← linux系统坏道检测与修复 docker使用→

Theme by Vdoing | Copyright © 2021-2023
  • 跟随系统
  • 浅色模式
  • 深色模式
  • 阅读模式