构建docker基本镜像

准备:

创建一个目录oldboy-hello

编写Dockerfile

内容如下,只有三行

FROM scratch

ADD hello /

CMD ["/hello"]

当前目录下的文件

[root@linux-node1 oldboy-hello]# ls

Dockerfile hello

构建docker镜像

[root@linux-node1 oldboy-hello]# docker build -t oldboyedu/hello .

Sending build context to Docker daemon 4.608kB

Step 1/3 : FROM scratch

--->

Step 2/3 : ADD hello /

---> 0018e580ccaf

Removing intermediate container 64b74f2071e1

Step 3/3 : CMD /hello

---> Running in 6438314dc49d

---> 4a047322f97d

Removing intermediate container 6438314dc49d

Successfully built 4a047322f97d

Successfully tagged oldboyedu/hello:latest

启动容器

[root@linux-node1 oldboy-hello]# docker run --rm -it oldboyedu/hello

Welcome oldboy education!

补充

hello的是使用C语言编译之后的二进制程序

[root@linux-node1 opt]# cat hello.c

//#include <unistd.h>

#include <sys/syscall.h>

#ifndef DOCKER_IMAGE

#define DOCKER_IMAGE "hello-world"

#endif

#ifndef DOCKER_GREETING

#define DOCKER_GREETING "Welcome oldboy education!"

#endif

const char message[] =

DOCKER_GREETING "\n";

void _start() {

//write(1, message, sizeof(message) - 1);

syscall(SYS_write, 1, message, sizeof(message) - 1);

//_exit(0);

syscall(SYS_exit, 0);

}

编译命令gcc -o hello -static -nostartfiles hello.c

测试执行

[root@linux-node1 oldboy-hello]# ./hello

Welcome oldboy education!

如果编译出错

[root@linux-node1 ~]# gcc -o hello -static -nostartfiles hello.c

/usr/bin/ld: cannot find -lc

collect2: error: ld returned 1 exit status

安装glibc-static

yum install glibc-static gcc -y

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 3.7 Nova compute计算节点的部署 •图解Nova cpmpute • • src="http://c...
    mark_meng阅读 1,712评论 0 0
  • 第九天预习笔记 一、Vim/vi纯文本编辑器 1、vi是Linux命令行界面下的重要文件编辑器,vim是vi的加强...
    开忌阅读 647评论 0 0
  • 修改密码信息与用户切换相关权限 目录 一.chage修改密码过期信息 1 二.su用户身份切换 3 三.SUID与...
    高博666阅读 304评论 0 0
  • 编译的时候遇到了这个问题。搜索了一下说是有jar包或者依赖冲突了。我查看了一下依赖关系。发现并不是这个问题。 搜索...
    pdog18阅读 4,962评论 1 1
  • 茶 香 味 正 浓 ——黄桷树茶馆周年记千年古树,千年古镇,千年古树陪古镇百岁黄...
    刘立志阅读 267评论 0 0

友情链接更多精彩内容