1.image 是什么

  是文件和 meta data 的集合 (root filesystem)

  是分层的,并且每一层都可以添加改变删除文件,成为一个新的image

  不同的image可以共享相同的layer #4 和 #2 可以共享 centos image

  image 本身是只读的

2.image的获取

  从文件( dockerFile )获取

    dockerFile内容如下

      FROM ubantu_16_04                  #基础 image 为 ubantu_16_04  类似于操作系统为 ubantu 16 04

      LABEL maintainer="eaon <eaon@163.com>"         #基本标识  例如作者和邮箱

      RUN apt-get update && apt-get install -y redis-server   #在 基础image 上运行一段 安装程序的命令

      EXPOSE 6379                     #要暴露的端口号

      ENTRYPOINT  [ "/usr/bin/redis-server" ]          # 程序的入口

    从 dockerFile 运行

      docker build -t eaon03/redis:latest  .   #表示从当前的 dockerFile 建立名为 eaon03/redis:latest 的镜像

  从 registry 拉取 ( 从远程仓库拉取 registry 类似与 github )

      如果 docker 太慢或者超时 可以切换docker源

      sudo docker pull hello-world

      (具体的镜像 可以从 hub.docker.com 上进行加下载)

      sudo docker image ls  查看本地的image列表

3.制作base image (例如 hello-world)

    创建一个hello-world 目录 并 进入

      mkdir hello-world

      cd hello-world

    写一个 .c 文件

      vim  hello.c

        #include<stdio.h>

        int main()

        {printf("hello docker!\n");}

    安装 gcc glibc-static

      sudo yum install -y gcc glibc-static

    编译 c 文件为二进制文件

      gcc -static hello.c -o hello
    编写Dockerfile

      vim Dockerfile

        FROM scratch

        ADD hello /

        CMD ["/hello"]

    添加镜像

      docker build -t eaon/hello-world .

    运行镜像

      docker run eaon/hello-world      

4.centos 虚拟机去除 sudo

  1. 添加docker 用户组

    sudo groupadd docker

  2.将vagrant 用户 添加到 docker 用户组内

      sudo gpasswd -a vagrant docker

  3.重启docker 进程

    sudo service docker restart

  4.重新登陆

5.docker image (镜像)的更多相关文章

  1. Docker:镜像操作和容器操作

    镜像操作 列出镜像: $ sudo docker images REPOSITORY TAG IMAGE ID CREATED VIRTUAL SIZE hello-world latest 0a6b ...

  2. Docker的镜像

    镜像是容器的运行基础,容器是镜像运行后台的形态 镜像的概念 镜像是一个包含程序运行必要依赖环境和代码的只读文件,它采用分层的文件系统,将每一次改变以读写层的形式增加到原来的只读文件上 镜像的系统结构 ...

  3. Docker - Docker国内镜像的配置及使用

    Docker国内镜像 DaoCloud - Docker加速器 阿里云 - 开发者平台 微镜像 - 希云cSphere 镜像广场 - 时速云 灵雀云 网易蜂巢 阿里云的Docker加速器 阿里云 - ...

  4. Docker image 镜像介绍

    操作镜像 使用 docker 命令行操作 docker 镜像 获取镜像 使用「docker pull +镜像名称」从网络上下载image镜像 core@localhost ~ $ docker pul ...

  5. Docker - 定制镜像

    Dockerfile Docker Hub拥有大量高质的官方镜像:可直接使用的服务类镜像.语言应用镜像.基础操作系统镜像等,满足绝大部分需求. 此外,可以通过定制镜像的方式来满足实际使用中的特定需求. ...

  6. 从零开始构建docker基础镜像

    段子 今年基本已经结束了,我问了很多朋友今年挣钱了没?大多朋友都有挣,而且挣得五花八门:有挣个屁的,有挣个锤子的,有挣个毛的,更有甚者挣个妹的,奢侈之极!最恐怖的是挣个鬼的!有的还可以,挣个球,下午我 ...

  7. Docker 基础 : 镜像

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

  8. 微服务架构 - 搭建docker本地镜像仓库并提供权限校验及UI界面

    搭建docker本地镜像仓库并提供权限校验及UI界面 docker本地镜像仓库的作用跟maven私服差不多,特别是公司级或者是小组级开发好的docker仓库可以上传到本地镜像仓库中,需要用时,直接从本 ...

  9. 使用Nexus3构建Docker私有镜像仓库

    一.安装Nexus3 Nexus3是Sonatype提供的仓库管理平台,Nuexus Repository OSS3能够支持Maven.npm.Docker.YUM.Helm等格式数据的存储和发布:并 ...

  10. Docker JDK镜像

    Docker jdk镜像 说明 使用alpine-glibc作为基础镜像 JAVA JDK/JRE以1.8为基准 下载文件 1.下载JDK/JRE压缩包. jre-8u201-linux-x64.ta ...

随机推荐

  1. zTree的学习

    最近要做一个有关权限的东西,原理和数据库都已经知道了,就是树状图困难. 原先是打算用layui的,因为我孤陋寡闻……吃了大亏,弄了3个小时,屁都没有.只能说是…… 后来百度找到了zTree,进去学习了 ...

  2. P 1020 月饼

    转跳点:

  3. P1018 锤子剪刀布

    转跳点:

  4. redis性能测试方法

    redis本身设计为单线程服务器,性能本身并不随着多核而提高,但是会随着cpu本身而改变,AMD的可能只有Intel一半的性能,Intel是最好的选择. 性能会随着连接数的增多而下降,30000大概只 ...

  5. ..\EEP\EEP.c(249): error: #268: declaration may not appear after executable statement in block

    主要原因:  ON_nWP;这个应该放在 unsigned char Delay; unsigned char ReData; 的后面. 修改成功.

  6. 洛谷 P2458 [SDOI2006]保安站岗

    题目传送门 解题思路: 树形DP 可知一个点被控制有且仅有一下三种情况: 1.被父亲节点上的保安控制 2.被儿子节点上的保安控制 3.被当前节点上的保安控制 我们设dp[0/1/2][u]表示u节点所 ...

  7. 大数据高可用集群环境安装与配置(08)——安装Ganglia监控集群

    1. 安装依赖包和软件 在所有服务器上输入命令进行安装操作 yum install epel-release -y yum install ganglia-web ganglia-gmetad gan ...

  8. SQL的7种连接查询详细实例讲解

    SQL的7种连接查询详细实例讲解 原文链接:https://mp.weixin.qq.com/s/LZ6BoDhorW4cSBhaGy8VUQ 在使用数据库查询语句时,单表的查询有时候不能满足项目的业 ...

  9. Pickle incompatibility of numpy arrays between Python 2 and 3

    Traceback (most recent call last): File "mnist.py", line 7, in <module> train_set, v ...

  10. 编写软件动态加载NT式驱动

    NT式设备驱动程序的动态加载主要是由服务控制管理程序(Service Control Manager,即SCM)系统组件来完成的. Windwos服务可以在系统启动时加载,用户也可以按需在服务控制平台 ...