本文地址:https://www.cnblogs.com/veinyin/p/10406378.html 

Docker 是一个容器,可以想象成一个轻便的虚拟机,但不虚拟硬件和操作系统。

优点:启动快、占用内存小、运行环境一致,便于开发测试、便于维护。

基本概念:镜像、容器、仓库

镜像:一个特殊的文件系统,提供容器运行时所需文件以及运行时的配置参数,不包含动态数据,内容在构建之后不改变,由多层文件系统联合而成。

容器:相当于镜像的一个实例,实质是进程。容器应将数据写入数据卷中,避免写入容器存储层。

仓库:存储、分发镜像,可以在其他服务器上使用某个镜像。

安装

macOS

1. homebrew 下载安装

brew cask install docker

2. 安装完成后,在应用程序中点击 docker 图标,运行 docker

3. 打开终端,输入以下命令,出现版本号(必须有第2步操作)

docker --version

4. 在终端中继续输入以下命令,出现 docker 相关信息

docker info

5. 运行 Nginx 服务器,访问 http://localhost 出现 Welcome to nginx! 则docker 安装成功

docker run -d -p 80:80 --name webserverName nginx

6. 停止与删除命令

docker stop webserverName
docker rm webserverName

Linux (Ubuntu)

以下命令全部加 sudo 或者以 root 身份操作

1. 由于apt官方库里的docker版本可能比较旧,卸载旧版本

sudo apt-get remove docker docker-engine docker-ce docker.io

2. 安装可选内核模块包

sudo apt-get update
sudo apt-get install linux-image-extra-$(uname -r) linux-image-extra-virtual
3. 安装使用 HTTPS 传输的协议包和 CA 证书 
sudo apt-get install -y apt-transport-https ca-certificates curl software-properties-common

4. 添加 Docker 官方的 GPG 秘钥

curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -

5. 向 source.list 中添加 Docker 软件源

sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable"

stable 指稳定版,edge 最新版,test 测试版

6. 安装 Docker CE

sudo apt-get update  // 更新 apt 索引包
sudo apt-get install docker-ce

Docker CE 可能需要安装特定版本,下面命令会列出可用版本

apt-cache madison docker-ce

安装某个特定版本的 Docker CE

sudo apt-get install docker-ce=version
7. 启动
sudo systemctl enable docker
sudo systemctl start docker
sudo docker run hello-world

看到输出 Hello from Docker!则安装成功

 

镜像加速

macOS

任务栏 docker 图标 > Perferences > Daemon > Registry mirrors 填入加速器地址,点击 Apply & Restart 按钮

https://registry.docker-cn.com

打开终端,输入 docker info,如果倒数几行出现如下内容,则配置成功

Registry Mirrors:
https://registry.docker-cn.com

Ubuntu

在 /etc/docker/deamon.json 中写入以下内容并重启服务,如文件不存在则新建文件

{
"Registry Mirrors": [
"https://registry.docker-cn.com"
]
}

必须要用双引号引起来!这是 json 文件,必须符合 json 规范,否则会出错!

END~~~≥ω≤

Docker学习笔记一 概念、安装、镜像加速的更多相关文章

  1. docker学习笔记(3)- 镜像

    简介 在docker学习笔记(1)- 架构概述一节中可以看到镜像是docker三大组件之一,可以将Docker镜像类比为虚拟机的模版. 镜像由多个层组成,每层叠加之后从外部看就像一个独立的对象,镜像的 ...

  2. docker学习笔记1-- 用Toolbox安装Docker--介绍Docker Machine

    使用的是Docker Toolbox,非Docker for Windows 一.docker的认识与安装(windows安装) http://blog.csdn.net/tina_ttl/artic ...

  3. Docker学习笔记 - 创建私有的镜像仓库

    一.查找镜像仓库 https://hub.docker.com/ 二.下载镜像仓库 docker pull registry:2.6.2 三.安装镜像仓库 docker run -d -p 6000: ...

  4. Docker学习笔记之创建安装了nginx服务器的镜像

    操作步骤: 1. 编辑Dockerfile 2. 使用build命令创建镜像 3. 使用run命令测试创建的镜像 编辑Dockerfile 首先,需要使用文本编辑器编辑Dockerfile文件(注意没 ...

  5. docker学习笔记7:发布镜像到docker hub上

    镜像创建好后,很重要的一个操作就是共享和发布.可以将自己创建的镜像发布到docker hub上,也可以发布到自己的私有docker hub上. 要想发布镜像到dokcer hub上,首先要在dokce ...

  6. Docker学习笔记_删除某个镜像

    实验:删除某个镜像 sudo docker rmi [Image ID] 1.查看镜像的ID                  sudo docker images 2.删除镜像            ...

  7. docker学习笔记-1

    docker学习笔记一:安装 mac安装docker docker官方文档上有这么一段话: Because the Docker daemon uses Linux-specific kernel f ...

  8. Docker:学习笔记(1)——基础概念

    Docker:学习笔记(1)——基础概念 Docker是什么 软件开发后,我们需要在测试电脑.客户电脑.服务器安装运行,用户计算机的环境各不相同,所以需要进行各自的环境配置,耗时耗力.为了解决这个问题 ...

  9. Docker学习笔记之-在CentOS中安装Docker

    上一节演示了如何 通过Xshell连接CentOS服务,链接:Docker学习笔记之-通过Xshell连接 CentOS服务 本节将演示 如何在CentOS中安装 Docker 第一步:更新系统包到最 ...

随机推荐

  1. EOS开发基础之六:使用cleos命令行客户端操作EOS——智能合约之eosio.msig和eosio.system

    上一节我们搞了老半天,也没整明白Exchange这个合约到底干啥用的.就它官方提供的说法,是用于货币的创造和交易.我没整明白,所以去看了下代码,发现代码头文件里面有下面这段话: This contra ...

  2. 1086. Tree Traversals Again (25)-树的遍历

    题意:用栈的push.pop操作给出一棵二叉树的中序遍历顺序,求这棵二叉树的后序遍历. 需要一个堆结构s,一个child变量(表示该节点是其父亲节点的左孩子还是右孩子),父亲节点fa对于push v操 ...

  3. linux内核分析第一次实验

    http://blog.sina.com.cn/s/blog_78e559950102wneg.html

  4. DirectoryEntry_Properties属性的遍历(win2003)

    DirectoryEntry root = new DirectoryEntry(@"IIS://localhost/W3SVC"); string PInfo = "& ...

  5. SQL Server Collation解惑

    某些产品会有固定的DB Collation,如果提前创建DB的时候没有按照要求指定对应的Collation,这个时候就会报错,提示你Collation不匹配.在安装SQL Server的时候有时候需要 ...

  6. iOS—— iOS 内存管理:增长+泄漏

    1.如果是循环中局部变量data没有释放导致的,给NSData 手动添加释放池 @autoreleasepool { your code } 2.url 转变字典key值的时候出现内存暴增! //设置 ...

  7. BZOJ 3171 循环格(费用流)

    题意 一个循环格就是一个矩阵,其中所有元素为箭头,指向相邻四个格子.每个元素有一个坐标(行,列),其中左上角元素坐标为(0,0).给定一个起始位置(r,c),你可以沿着箭头防线在格子间行走.即如果(r ...

  8. 51nod 1480 打广告(二分+线段树)

    题意 给出n个区间和m个区间,从这n个区间里选一个区间a,这m个区间选一个区间b,使得a&b的长度*c最大. 思路 如果这n个区间里有一个区间包含另一个区间,那另外一个区间就可以忽略掉,进行\ ...

  9. Python学习--------------Atm+购物车系统

    一.程序需求 模拟实现一个ATM + 购物商城程序: 1.额度 15000或自定义 2.实现购物商城,买东西加入 购物车,调用信用卡接口结账 3.可以提现,手续费5% 4.每月22号出账单,每月10号 ...

  10. SSM 全局异常

    转载: http://blog.csdn.net/m13321169565/article/details/7641978 废话不多,直接说重点. 一  创建异常拦截类 (这里将  webapi 和 ...