简介

今天小区的超市买零食老板给我说再过几天可能就卖完了我有点诧异,老板又说厂家不生产了emmm

今天总算开始docker了!

1.Docker?

1.什么是Docker

  Docker 是一个开源的应用容器引擎,基于 Go 语言 并遵从 Apache2.0 协议开源。 Docker 可以让开发者打包他们的应用以及依赖包到一个轻量级、可移植的容器中,然后发布到任何流行的 Linux 机器上,也可以实现虚拟化。 容器是完全使用沙箱机制,相互之间不会有任何接口(类似 iPhone 的 app),更重要的是容器性能开销极低。 Docker 从 17.03 版本之后分为 CE(Community Edition: 社区版) 和 EE(Enterprise Edition: 企业版),我们用社区版就可以了。

1.1docker基本组成

  Docker Client 客户端
  Docker Daemon守护进程
  Docker Images 镜像
  Docker Container 容器
  Doceker Registry 镜像仓库

  

2.Docker应用场景

  应用程序打包和发布
  应用程序隔离
  持续集成
  部署微服务
  快速搭建测试环境
  提供PassS产品(平台即服务)

3.Docker的优点

Docker 是一个用于开发,交付和运行应用程序的开放平台。Docker 使您能够将应用程序与基础架构分开,从而可以快速交付软件。借助 Docker,您可以与管理应用程序相同的方式来管理基础架构。通过利用 Docker 的方法来快速交付,测试和部署代码,您可以大大减少编写代码和在生产环境中运行代码之间的延迟。

不可变设施(Immutable Infrastructure)这一概念,指的是主机OS与服务运行环境(服务器程序、源代码、已编译的二进制文件)分离,只设置一次运行环境,之后不发生变更(Immutable)

  1.管理方便:由于服务运行环境以镜像形式存在,所以只要管理镜像本身即可。特别是可以集中管理镜像,实现系统部署管理。此外,镜像生成设置也以文件形式存在,可以灵活用于版本管理系统。

  2.扩展:可以利用一个镜像不断创建服务器。与云平台自动伸缩功能(Auto Scaling)配合使用,能够轻松实现服务扩展

  3.测试:只要在开发人员PC或者测试服务器中运行镜像,就可以搭建与实际服务运行环境一致的环境,非常容易测试

  4.轻量:分离操作系统与服务运行环境,实现轻量化,提供可以随时运行的环境

4.虚拟主机与Docker

2.Docker安装

linux自动安装脚本

sudo wget -qO- https://get.docker.com/ | sh

3.Docker镜像管理

镜像
docker镜像是一个不包含linxu内核而又精简的Linux操作系统

修改国内镜像源:

vi  /etc/docker/daemon.json
#添加后
{
"registry-mirrors": ["https://registry.docker-cn.com"],
"live-restore": true
}

我测试的时候不行用的是阿里云的镜像加速

sudo systemctl daemon-reload

sudo systemctl restart docker

1.使用search命令搜索镜像

docker search centos

  NAME: 镜像仓库源的名称

  DESCRIPTION: 镜像的描述

  OFFICIAL: 是否 docker 官方发布

  stars: 类似 Github 里面的 star,表示点赞、喜欢的意思。

  AUTOMATED: 自动构建

2.使用pull命令下载镜像 

docker pull ubuntu:latest   //命令格式:docker pull <镜像名称>:<标签> 如果设置latest代码就是下载最新版本 也可以给标签位置指定版本号eg:ubuntu:14.04

3.使用images命令列出镜像目录

docker image
  • REPOSITORY:表示镜像的仓库源

  • TAG:镜像的标签

  • IMAGE ID:镜像ID

  • CREATED:镜像创建时间

  • SIZE:镜像大小

  

docker image --help 查看帮助
docker image ls 查看当前镜像
docker image pull 下载镜像
docker image rm 删除镜像
docker tag 打tag标记
docker image save 保存一个镜像
eg :docker image save nginx:1.11>nginx1.11.tar
docker load 导入一个镜像
eg:docker load < nginx1.11.tar

4.使用rmi命令删除镜像

docker rmi <镜像名称>:<标签>
docker rmi ubuntu:latest

推荐学习文章:10张图带你深入理解Docker容器和镜像

Docker学习第一天(Docker入门&&Docker镜像管理)的更多相关文章

  1. Docker学习(三)认识Docker和常用命令

    Docker学习(三)认识Docker和常用命令 Docker体系结构 docker服务端,作为服务的提供方,核心进程 docker daemon,所有docker命令都是通过这个进程完成的 REST ...

  2. Docker学习笔记之通过 Dockerfile 创建镜像

    0x00 概述 由于 Docker 镜像的结构优势,使它的占用空间远小于普通的虚拟机镜像,而这就大幅减少了 Docker 镜像在网络或者其他介质中转移所花费的时间,进而提高了我们进行迁移部署的效率.不 ...

  3. docker学习笔记4:利用docker hub上的mysql镜像创建mysql容器

    docker hub上有官方的mysql镜像,我们可以利用它来创建mysql容器,作为一个服务容器使用. 1.下载mysql镜像 docker pull mysql 2.创建镜像 docker run ...

  4. docker学习---第一章节

    一.docker的应用场景有哪些 Web 应用的自动化打包和发布 自动化测试和持续集成.发布 在服务型环境中部署和调整数据库或其他的后台应用 从头编译或者扩展现有的OpenShift或Cloud Fo ...

  5. docker学习篇(一) ----入门篇

    什么是docker docker自2013年诞生以来已有5年了,最初基于Google公司的go语言实现的,项目代码在GitHub上进行维护. 项目地址:https://github.com/moby/ ...

  6. Docker学习笔记之保存和共享镜像

    0x00 概述 让 Docker 引以为傲的是它能够实现相比于其他虚拟化软件更快的环境迁移和部署,在这件事情上,轻量级的容器和镜像结构的设计无疑发挥了巨大的作用.通过将容器打包成镜像,再利用体积远小于 ...

  7. Docker学习总结(4)——Docker镜像与容器命令

    Docker是一个开源的引擎,可以轻松的为任何应用创建一个轻量级的.可移植的.自给自足的容器.开发者在笔记本上编译测试通过的容器可以批量地在生产环境中部署,包括VMs(虚拟机).bare metal. ...

  8. [置顶] Docker学习总结(1)——Docker实战之入门以及Dockerfile(一)

    一.Docker是什么? 首先Docker是软件工业上的集装箱技术 回顾,在没有集装箱出现以前,传统运输行业中,会存在这些问题: 在运输过程中,货物损坏 装卸.运输货物,效率低下 运输手续繁多及运输环 ...

  9. 【docker学习一】CentOS7.5+Docker安装及使用「安装、查看、pull、创建、进入镜像」

    记录安装配置以及使用的过程,可能会有多处摘抄,已注明照抄地址,侵删. 是什么:个人理解,是一种移植性很强的虚拟机,支持版本控制(类似于git),同一个服务器可以运行多个docker容器,每个docke ...

随机推荐

  1. C++switch结构

  2. 《Kafka笔记》4、Kafka架构,与其他组件集成

    目录 1 kafka架构进阶 1.1 Kafka底层数据的同步机制(面试常问) 1.1.1 高水位截断的同步方式可能带来数据丢失(Kafka 0.11版本前的问题) 1.1.2 解决高水位截断数据丢失 ...

  3. hystrix线程池隔离的原理与验证

    引子 幸福很简单: 今天项目半年规划被通过,终于可以早点下班.先坐公交,全程开着灯,买了了几天的书竟然有时间看了.半小时后,公交到站,换乘大巴车.车还等着上人的功夫,有昏暗的灯光,可以继续看会儿书.过 ...

  4. Python基础知识,新手入门看过来

    1 下载和安装Python 在开始编程之前,你需要安装Python解析器软件(这里你可能需要找人帮忙).解析器是一个可以理解你用Python语言写的指令的程序.如果没有解析器,你的计算机不会理解这些指 ...

  5. apktool重新打包添加签名

    一.生成apk apktool b 反编译后项目目录 -o 新apk名称.apk 二.生成签名 keytool -genkeypair -alias 新apk名称.apk -keyalg RSA -v ...

  6. cao 啥时候能系统地复习一下数据结构 我光学数学去了

    最近有功夫的话再敲敲数据结构复习复习

  7. 论文解读《ImageNet Classification with Deep Convolutional Neural Networks》

    这篇论文提出了AlexNet,奠定了深度学习在CV领域中的地位. 1. ReLu激活函数 2. Dropout 3. 数据增强 网络的架构如图所示 包含八个学习层:五个卷积神经网络和三个全连接网络,并 ...

  8. C语言之 Switch和?:运算符的反汇编

    Switch条件语句 通过上面一篇了解了条件语句的使用,接下来就直接进行反汇编学习 #include <stdio.h> void print() { int b = 1; switch ...

  9. c++ 让你的应用支持相对路径

    std::string GetCurrentExeDir(){ char szPath[1024] = { 0 };#ifdef WIN32 GetModuleFileName(NULL, szPat ...

  10. java线程池拒绝策略使用实践

    前言 线程池是开发过程中使用频率较高的一个并发组件之一,本篇会结合踩刀哥之前的实践经验来分享一下线程池拒绝策略的真实使用场景,至于线程池内部原理只会简单介绍,有需要的可以自行上网学习. 线程池工作机制 ...