首页/系统工具/内容

在Linux系统中怎样使Docker镜像变小

系统工具2024-01-17 阅读()
Linux,全称GNU/Linux,是一种免费使用和自由传播的类UNIX操作系统,其内核由林纳斯·本纳第克特·托瓦兹于1991年10月5日首次发布,它主要受到Minix和Unix思想的启发,是一个基于POSIX的多用户、多任务、支持多线程和多CPU的操作系统。

  在Linux中镜像往往非常大,但是使用Docker镜像是以个例外。使用Linux Docker制作的镜像,小的可能只有几M。本文就来介绍一下在Linux系统中如何使Docker镜像变小的方法。

在Linux系统中如何使Docker镜像变小

  传统的镜像写法:

  FROM ubuntu:12.04

  RUN apt-get update

  RUN apt-get install -y nginx zip curl

  RUN echo “daemon off;” 》》 /etc/nginx/nginx.conf

  RUN curl -o /usr/share/nginx/www/master.zip -L https://codeload.github.com/gabrielecirulli/2048/zip/master

  RUN cd /usr/share/nginx/www/ && unzip master.zip && mv 2048-master/* 。 && rm -rf 2048-master master.zip

  EXPOSE 80

  CMD [“/usr/sbin/nginx”, “-c”, “/etc/nginx/nginx.conf”]

  Linux使Docker镜像变小的方法

  基于ubuntu12.04,先来一个更新,然后安装nginx、zip、curl,配置nginx,下载2048代码,解压再放到指定位置,删除原始文件,抛出80端口,最后是执行命令。

  这样的dockerfile再熟悉不过了吧,随便docker hub或者其他教学文档都是这样,接下来,我们来谈谈中间的毛病。

  1、pull一个ubuntu需要多少时间,占多大的空间?(初学者好多在这一步就头痛)2、ubuntu在没有添加中国镜像源的情况,更新是个多么痛苦的事?3、配置 4、整个生成的镜像硕大无比,玩个2048不需要这么复杂。

  光提问题,不给解决方案就是耍流氓,还是看dockerfile:

  FROM alpine:latest

  MAINTAINER alex alexwhen@gmail.com

  RUN apk --update add nginx

  COPY 。 /usr/share/nginx/html

  EXPOSE 80

  CMD [“nginx”, “-g”, “daemon off;”]

  极简化的利用dockerfile和base镜像和github的特性,能少一句就少一句,动动手试一下,这样build出来,整个镜像不超过10M,回过头来看看前面的镜像,光一个ubuntu得多大啊,实在是居家必备。

  以上就是在Linux系统中如何使Docker镜像变小的方法介绍了,Linux镜像越小占用空间就越少,而且安装就更快。


Linux是一套免费使用和自由传播的类Unix操作系统



……

相关阅读