怎么创建一个新的Docker镜像
发表于:2024-11-11 作者:千家信息网编辑
千家信息网最后更新 2024年11月11日,本篇内容介绍了"怎么创建一个新的Docker镜像"的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!我们在
千家信息网最后更新 2024年11月11日怎么创建一个新的Docker镜像
本篇内容介绍了"怎么创建一个新的Docker镜像"的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!
我们在使用Dockerfile构建docker镜像时,一种方式是使用官方预先配置好的容器镜像。优点是我们不用从头开始构建,节省了很多工作量,但付出的代价是需要下载很大的镜像包。
比如我机器上docker images返回的这些基于nginx的镜像,每个都超过了100MB,而一个简单的Ubuntu的容器超过了200MB,如果安装了相关的软件,尺寸会更大。
如果我们的需求是在构建一个符合我们实际业务需求的Docker镜像的前提下,确保镜像尺寸尽可能的小,应该怎么做呢?
思路是使用空镜像scratch。
新建一个文件夹,用wget下载rootfs.tar.xz压缩包。
wget -O otfs.tar.xz https://github.com/debuerreotype/docker-debian-artifacts/raw/b024a792c752a5c6ccc422152ab0fd7197ae8860/jessie/rootfs.tar.xz
这个将近30MB的压缩包是个什么东东?
解压之后看内容就知道了,包含了操作系统大部分常用命令。
wget -O nginx.conf https://github.diablo.corp/raw/slvi/docker-k8s-training/master/docker/res/nginx.conf
新建一个dockerfile文件,将下列内容粘贴进去:
FROM scratch# set the environment to honour SAP's proxy serversENV http_proxy http://sap.corp:8080ENV https_proxy http://sap.corp:8080ENV no_proxy .sap.corp# give yourself some creditLABEL maintainer="Jerry Wang"# add and unpack an archive that contains a Debian root filesystemADD rootfs.tar.xz /# use the apt-get package manager to install nginx and wgetRUN apt-get update && \apt-get -y install nginx wget# use wget to download a custom website into the imageRUN wget --no-check-certificate -O /usr/share/nginx/html/cheers.jpg https://github.diablo.corp/raw/slvi/docker-k8s-training/master/docker/res/cheers.jpg && \wget --no-check-certificate -O /usr/share/nginx/html/index.html https://github.diablo.corp/raw/slvi/docker-k8s-training/master/docker/res/cheers.html# copy the custom nginx configuration into the imageCOPY nginx.conf /etc/nginx/nginx.conf# link nginx log files to Docker log collection facilityRUN ln -sf /dev/stdout /var/log/nginx/access.log && \ln -sf /dev/stderr /var/log/nginx/error.log# expose port 80 - the standard port for webserversEXPOSE 80# and make sure that nginx runs when a container is createdCMD ["nginx", "-g", "daemon off;"]
执行命令进行镜像的构建:
docker build -t nginx-from-scratch2.0 .
产生的日志:
最后看到镜像成功构建的消息。
基于这个名为nginx-from-scratch的镜像启动一个新的nginx容器:
localhost:1083, 看到首页,说明这个新构建的镜像工作正常。
"怎么创建一个新的Docker镜像"的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识可以关注网站,小编将为大家输出更多高质量的实用文章!
镜像
内容
容器
命令
实际
尺寸
文件
更多
知识
需求
工作
实用
很大
成功
学有所成
接下来
操作系统
不用
业务
从头
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
网络安全包括网络运行安全
师生网络安全意识淡薄
ftp服务器都有什么
平板登录服务器 输入法英文
嵌入式软件开发商防水材料
大学数据库及其应用学什么
10m带宽服务器
华为云rds数据库事务
网页版流媒体服务器
江西智能养老软件开发
dnf手游服务器名单
中北大学网络安全专业考研考哪些
丰台区信息化网络技术服务平台
小学生网络安全手抄报绘画
软件开发矩阵制
国家网络安全审查平台
深圳爱生活网络技术有限公司
防火墙显示网络安全警报
解放车数据库
robot系统软件开发
服务器管理器用户和组
加强办公系统网络安全
数据库 共享
九江安达网络技术
网吧网络安全模式
本地电脑怎么设置为网页服务器
金蝶服务器换硬盘后重新验证
mRNA之间的关系用什么数据库
广州创业软件开发
县网络安全和信息化中心