『中级篇』手动建立一个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");
}

3.编译程序gcc

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

4.创建编辑Dockerfile

vim Dockfile
FROM scratch
ADD hello /
CMD ["/hello"]
docker build -t liming/hello .
#查看分层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 程序是一样的。

原文发布于微信公众号 - 编程坑太多(idig88)

原文发表时间:2018-06-12

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏顶级程序员

Git 12 岁了,为你送上 12 个 Git 的使用技巧!

源 / 开源中国 使用这12个Git的诀窍与技巧来令你的版本控制经验更加有用。 Git,一个分布式版本控制系统,它已经成为了开源世界的源码控制默认工具,在4月...

3455
来自专栏24K纯开源

使用Qt installer framework制作安装包

一、介绍     使用Qt库开发的应用程序,一般有两种发布方式: (1)静态编译发布。这种方式使得程序在编译的时候会将Qt核心库全部编译到一个可执行文件中。其优...

2408
来自专栏任浩强的运维生涯

Jenkins的初级应用(1)-Publish Over SSH

    作为Jenkins最基本的应用也是重要的一环就是可以把文件传到服务器上面,或者在服务器上面远程执行命令。一个可在在远程分发了文件之后就控制远程服务器的操...

560
来自专栏FreeBuf

如何恢复Linux中的误删文件

写在前面的话 在开始教程之前我有必要提醒大家,使用窗口管理器(GUI)删除文件和使用命令行工具(CLI)删除文件这两种方法之间是有区别的。 当我们使用窗口管理器...

2068
来自专栏散尽浮华

centos下部署redis服务环境的操作记录

Redis是一个开源的使用ANSI C语言编写、支持网络、可基于内存亦可持久化的日志型、Key-Value数据库,并提供多种语言的API。从2010年3月15日...

16210
来自专栏任浩强的运维生涯

sentinel监控redis高可用集群(一)

一、首先配置redis的主从同步集群。 1、主库的配置文件不用修改,从库的配置文件只需增加一行,说明主库的IP端口。如果需要验证的,也要加多一行,认证密码。 s...

3654
来自专栏FreeBuf

如何开始对Android应用的逆向分析?

本文是我的关于如何开始Android逆向系列文章的第一部分。在文末提供了一个文档,你可以根据该文档说明部署同我一样的实验环境。

693
来自专栏刺客博客

详细记录Nginx配置Https过程

2114
来自专栏jouypub

CentOS7上配置Swap交换空间

swap通常在传统机械硬盘上表现更好,在SSD上使用swap可能会造成问题,尤其是硬件老化之后。所以,对于DigitalOcean以及其他使用基于SSD的云主机...

1220
来自专栏岑志军的专栏

使用Cocoapods创建私有库

1093

扫码关注云+社区