『中级篇』手动建立一个base Image(14)

这篇文章主要介绍了Docker Base Image创建具体实现的相关资料,这里提供了详细的具体步骤,需要的朋友可以参考下github:https://github.com/limingios/docker.git

如何制作一个base Image

base Image 之前讲过2种方式一种是通过pull docker官网获得,另一种是通过build的方式来获得。自己制作肯定是通过base Image的方式。

  • 通过pull的方式docker pull hello-world docker image ls docker run hello-world
  • 通过build的方式 1.创建文件 mkdir hello-world cd hello-world/ vim hello.c

2.编辑c文件

#include<stdio.h>
int main()
{
        printf("hello docker  微信公众号:编程坑太多\n");
}
image.png

3.编译程序gcc

sudo yum install -y gcc
sudo yum install -y glibc-static
 gcc -static hello.c -o hello
image.png

4.创建编辑Dockerfile

vim Dockfile
FROM scratch
ADD hello /
CMD ["/hello"]                    
  docker build -t liming/hello .           
image.png
#查看分层layer
   docker history a4cb86cc8d6b     

5.运行Image

docker run liming/hello
docker container ls -a

PS:hello.c 因为是c语言写的,我们把它打成一个Image,Image里面其实就是一个可以执行的文件,它其实依赖宿主机kernel,它虽然比较小,但是也能反映docker的架构,后面我们会使用mysql,nginx,tomcat其实他们的原理跟今天做的baseImage 里面的hello 程序是一样的。

往期精彩
  1. docker导学(一)
  2. 容器的技术概述(二)
  3. docker的魅力初体验-5分钟安装wordpress不走弯路(三)
  4. docker官网介绍(四)
  5. 如何在mac上安装docker(五)
  6. 如何在window上安装docker(六)
  7. 如何在mac上通过vagrant安装虚拟机(七)
  8. 如何在window上通过vagrant安装虚拟机(八)
  9. docker-Machine的本地使用(九)
  10. docker-Machine的本地使用(十)
  11. 在linux/mac下通过Docker-Machine在阿里云上的使用(11)
  12. docker架构和底层技术(12)
  13. docker Image概述(13)
image

原创声明,本文系作者授权云+社区发表,未经许可,不得转载。

如有侵权,请联系 yunjia_community@tencent.com 删除。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏魏艾斯博客www.vpsss.net

解决 windows VPS 远程连接出现关闭事件跟踪程序

932

Windows上的Docker Machine - 如何安装配置主机

最近我一直在研究Docker,原因有很多,但主要还是我比较喜欢研究前沿的技术,甚至还可以帮忙构建一个Demo(演示)或者一两个实验室。和其他人的做法有一点不...

25211
来自专栏Debian社区

Kubernetes 1.7 发布,安全强化、StatefulSet 更新及可扩展特性

Kubernetes 1.7已经发布,该版本聚焦于安全、存储和扩展性等交付特性,其中包括Network Policy API、StatefulSets自动升级策...

672
来自专栏沃趣科技

Docker,让数据库部署完成在弹指一挥间

容器技术并非Docker的创新,容器技术所依赖的一些基础技术,如namespace、cgroup、chroot等等,也都不是Docker的首创。

50312
来自专栏人工智能LeadAI

Keras深度学习框架配置

Please cite this paper(https://ejnmmires.springeropen.com/articles/10.1186/s1355...

5314
来自专栏数据和云

Oracle 11g R2 RAC 高可用连接特性 – SCAN 详解

许春植(Luocs) (阿里巴巴高级数据库管理员,7年以上数据库运维管理经验,擅长MySQL、Oracle及MongoDB数据库,目前主要研究并建设Mongo...

3595
来自专栏大魏分享(微信公众号:david-share)

在容器中部署MySQL和Hadoop集群(内含视频)

前言 之前,笔者发表的《非开发人员看Devops--从一张图谈起》的文章,在不到24小时内,阅读量已经达到1100,说明大家对DevOps和OpenShift此...

3306
来自专栏重庆的技术分享区

在API网关和微服务开发中使用Docker

原文地址:https://dzone.com/articles/using-docker-in-api-gateway-and-microservice-dev...

1694
来自专栏Laoqi's Linux运维专列

Kubernetes 1.8.6 集群部署–微服务持续集成→发布,拒绝停服(十五)

2394
来自专栏Tencentcloud

Docker,请做好自己的清理工作

最近,我们开始对一些应用程序进行docker化,不得不说,我简直爱上了Docker!这是一个非常棒的工程,在AWS EC2的软件运用的基础上,它让我们的生活变得...

7397

扫码关注云+社区