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. java菜鸡循环练习

    While 循环练习  输入3次密码,则打印密码锁定 package com.lv.test; import java.util.Scanner; public class DemoPass { pu ...

  2. jmeter --- 组件

  3. POJ 3253:Fence Repair

    Fence Repair Time Limit: 2000MS   Memory Limit: 65536K Total Submissions: 33114   Accepted: 10693 De ...

  4. 【golang】golang的一些知识要点

    特殊常量iota: 1.iota的值在遇到const关键字时将被重置为0 2.const中每新增一行常量声明将使iota计数一次,也就是自动加一. 3.iota只能在常量定义中使用. iota常见使用 ...

  5. mongodb replication set 主从切换

    今天被问到mongodb副本集主从切换的问题,然后发现没有相关命令的中文文档,这里翻译记录一下 rs.stepDown() rs.stepDown(stepDownSecs, secondaryCat ...

  6. 19 01 16 jquery 的 属性操作 循环 jquery 事件 和事件的绑定 解绑

    jquery属性操作 1.html() 取出或设置html内容 // 取出html内容 var $htm = $('#div1').html(); // 设置html内容 $('#div1').htm ...

  7. Diligent Engine学习笔记初衷

    2020年过去一个月了,回首过去的一年,工作确实很忙,但是自己个人的技术也没得到什么成长,项目当中一些比较难搞的问题也没得到更深入的研究.思来想去,希望新的一年能改变自己的工作方式,将工作上的事物进一 ...

  8. ABP框架没有httpPost,httpget,httpput特性

    需要引用一下组件, Microsoft.AspNetCore.Mvc

  9. .NET CORE部署各种问题

    1.安装运行时以后,执行dotnet --version查看版本提示  丢失api-ms-win-crt-runtime-l1-1-0.dll, 当本地api-ms-win-crt-runtime-l ...

  10. nginx log 切割

    /logs/nginx/*/*access.log { daily rotate 30 missingok dateext #compress notifempty sharedscripts pos ...