docker有三个基本概念:镜像/容器/仓库

镜像:一个完整的root文件系统,但并非一个iso的打包文件,而是使用分层存储。构建镜像时,是一层一层的。新的镜像,也可以在原有镜像上添加新层。

容器:是镜像运行的实体。可以进行创建/删除,启动/停止等操作。容器是一个具有独立命名空间的进程,可以有自己的root fs,网络配置,用户。由于和宿主机系统隔离,在容器中封装运行的应用,相比宿主机更加安全。容器运行时,是在镜像上在创建一层容器存储层,其生命周期和容器一致。基于数据安全考虑,容器存储层不应存放应用数据,数据应存放在独立于容器存在的数据卷(相当于虚拟化中的持久盘)上。

仓库:一个集中存储,用于分发镜像到宿主机。一个 Docker Registry上可以有多个仓库,仓库以软件名命名,每个仓库下有多个子标签,对应软件的不同版本。Docker Registry是多用户环境。通过国内的一些加速器,可以访问公共镜像。自己搭建的是私有仓库。

版本:ce(community edition),免费,支持周期三个月。ee(enterprice edition),收费,一年支持。17.3版就是17年三月发布。ce和ee命名方式一致。

docker安装

在生产环境中离线安装比较好。docker-ce安装依赖于container-selinux。所以要先安装container-selinux。

rpm -ivh container-selinux-2.21-1.el7.noarch.rpm docker-ce-17.06.0.ce-1.el7.centos.x86_64.rpm
systemctl start docker
docker run hello-world

镜像加速器

vim /etc/docker/daemon.json
{
"registry-mirrors": [
"https://registry.docker-cn.com"
]
}

创建私有registry

实际上就是从共有仓库上pull一个镜像下来

docker run -d -v /docker-repos -p 5000:5000 --restart=always --privileged=true --name registry registry:latest

创建一个nginx容器

首先宿主机上有一个fc挂过来的目录,比如/docker,然后里面建立nginx1目录。

docker run -d -v /docker/nginx2:/www --name nginx2 nginx

container设定name,设定持久盘挂载点,设定基础镜像,后台启动。

使用docker volume inspect my-vol可以查看该vol在宿主机中的位置。使用docker inspect nginx1可以看到mount一栏,巡察具体的挂载信息。

1-docker基础的更多相关文章

  1. Docker - Docker基础命令及使用

    Docker Docker - 官网 Docker - Hub GitHub - Docker Docker中文社区 Docker基础命令 Docker 查看帮助信息:docker --help 查看 ...

  2. 【云计算】Docker云平台—Docker基础

    Docker云平台系列共三讲,此为第一讲:Docker基础 参考资料: Docker官方文档:https://docs.docker.com/ Docker从入门到实践:https://yeasy.g ...

  3. Docker基础技术:Linux Namespace(下)

    在 Docker基础技术:Linux Namespace(上篇)中我们了解了,UTD.IPC.PID.Mount 四个namespace,我们模仿Docker做了一个相当相当山寨的镜像.在这一篇中,主 ...

  4. Docker 基础技术:Linux Namespace(下)

    导读 在Docker基础技术:Linux Namespace(上篇)中我们了解了,UTD.IPC.PID.Mount 四个namespace,我们模仿Docker做了一个相当相当山寨的镜像.在这一篇中 ...

  5. Docker基础入门及示例

    Docker近几年的发展可谓一日千里,特别从是2013年随着一个基于LXC的高级容器引擎开源,到现在,其在linux和windows上都有了很好的支持,并且已经有很多公司将docker用于实际的生产环 ...

  6. Docker 基础 : 镜像

    目录 获取镜像 查看镜像信息 搜索镜像 删除镜像 创建镜像 导出和导入镜像 上传镜像 总结 镜像是 Docker 的三大核心概念之一.Docker 运行容器前需要本地存在对应的镜像,如果本地没有对应的 ...

  7. Docker 基础技术之 Linux cgroups 详解

    PS:欢迎大家关注我的公众号:aCloudDeveloper,专注技术分享,努力打造干货分享平台,二维码在文末可以扫,谢谢大家. 推荐大家到公众号阅读,那里阅读体验更好,也沉淀了很多篇干货. 前面两篇 ...

  8. docker 基础知识分享ppt

    给团队做的docker基础分享ppt, 见下面的附件. https://files.cnblogs.com/files/harrychinese/docker_intro.pptx

  9. 中标麒麟龙芯平台--docker基础镜像制作

    Docker 是一个开源的应用容器引擎,基于 Go 语言 并遵从Apache2.0协议开源.Docker 的出现为开发人员和运维人员带来了极大的便利.Docker在X86下常见的发行版Linux如Ub ...

  10. Docker系列03—Docker 基础入门

    本文收录在容器技术学习系列文章总目录 1.概念介绍 1.1 容器 1.1.1 介绍 容纳其它物品的工具,可以部分或完全封闭,被用于容纳.储存.运输物品.物体可以被放置在容器中,而容器则可以保护内容物. ...

随机推荐

  1. OpenStack源码系列---起始篇

    近一年来我负责公司云点的自动化部署工作,包括公司自有云平台方案.XenServer.vSphere.Ovirt和OpenStack的自动化安装部署,目前已经到了OpenStack这一部分.自动化部署首 ...

  2. Centos-tomcat-安装配置apr

    [root@zyzzw_jk tools]# tar -zxvf apr-1.5.2.tar.gz[root@zyzzw_jk tools]# tar -zxvf apr-util-1.5.4.tar ...

  3. Unity3D游戏开发之粒子系统实现具体解释

     今天为大家分享的是Unity3D中的粒子系统.粒子系统通经常使用来表现烟雾.云等高级效果.是一个十分注重制作技巧的部分.今天我们将以一个气泡的演示实例来一起学习怎样在Unity3D中使用粒子系统 ...

  4. eclipse debug configurations arguments指定文件路径参数

    1 eclipse debug configurations arguments指定文件路径参数 使用绝对路径,但是这个文件必须要放在该project的源码路径的外面才行,否则eclipse不认这个文 ...

  5. sql insert and update

    1 二者的区别 insert是插入一条新的数据,它会创建一条新的记录:update是更新一条已经有的数据,它不会创建新的记录. update需要where来指示更新那条记录,否则会更新所有的记录. 2

  6. Python 中的字节与字节数组

    Python 中的字节与字节数组 - Python - 伯乐在线 http://python.jobbole.com/84839/

  7. object equal

    package equals; public class EqualsTest { public static void main(String[] args) { Employee alice1 = ...

  8. Get Luffy Out (poj 2723 二分+2-SAT)

    Language: Default Get Luffy Out Time Limit: 2000MS   Memory Limit: 65536K Total Submissions: 7969   ...

  9. x$kccle视图深入剖析

       今天是2014-05-27,实在无聊顺便研究一下x$kccle的内容吧.例如以下所有是自己分析和实验结果,真实可靠.   1.怎样获得v$log的底层表?我们能够通过autotrace完毕查看如 ...

  10. gnss到底是什么呢

    GNSS Global Navigation Satellite System 全球卫星导航系统:提到这个很多人会不明白GNSS倒是是个啥东西呢,和北斗,GPS, GLONASS,Galileo系统有 ...