DockerFile创建一个镜像过程

简介:

在/chentest/文件夹里建立一个dockerfile,内容如下:

1
2
3
4
5
FROM ubuntu:14.04
MAINTAINER Chris Chan  "chenx1242@163.com"
RUN apt-get update && apt-get  install  -y nginx
RUN  echo  "自由领导人民!"  /usr/share/nginx/html/index .html
EXPOSE 80

然后在/chentest里执行这个dockerfile,命令是# docker build -t="chenchen01/svs_batman" .,注意后面这个点,这个点是“当前文件夹”的意思,也就是说dockerfile是在当前文件夹里,由于我国的国情,可能会有这样的情况出现:

wKiom1g87aXz6vXRAACOJmN9qNE653.png


但是不要怕,重新再来过可能就会好了。如果还不行,就多试几次,然后会出现一连串的字符,也会生成一连串的镜像,如果正常的话,就会出现“Successfully built 镜像号”。


wKioL1g87sDAdS5VAAFGdHy2a3o508.png

可见“自由领导人民”这句话已经被写入了我们计划中的index.html里。


如果我们不是yum安装开源工具,而是公司自己的模块,那么也可以使用dockerfile进行制作镜像,在这里我们用mrs和zkclient为例子。


首先在/chentest里建立一个文件夹,比如叫mrstest,里面有mrs和zkclint两个子文件夹。然后再把这个mrstest进行打包,名字叫mrstest.tar.gz。如图:

wKioL1g-kAKy5UR-AAA-ANKWy10941.png


这个时候,来修改一下Dockerfile,内容如下:

1
2
3
4
5
6
7
8
FROM centos:7
MAINTAINER Chris Chan  "chenx1242@163.com"
RUN  mkdir  /mnt/hswx       #建立一个hswx的文件夹
ADD mrstest. tar .gz  /mnt/hswx     #ADD是把当前文件夹的文件复制到hswx文件夹里,同时拆包解压缩
RUN yum update && yum  install  -y vim*     #默认是不带vim的,这里安装一个
RUN  echo  "自由领导人民!"  /mnt/hswx/index .html   #同样这里家一句话
EXPOSE 9030
EXPOSE 2181


然后就依照这个东东,制作一个叫"stevencurry/gotowin"的镜像,命令是 # docker build -t="stevencurry/gotowin" .。然后会就会出现一步又一步的进程,最后出现“Successfully built 38d8ef9229fc”,我们这个编号为38d8ef9229fc的"stevencurry/gotowin"镜像成功了。


于是可以验证一下,如图:

wKioL1g-mw7ji_hjAAFf5oRRPTA514.png

可见vim 也好使了,但是要注意,vim这里还是不识别中文,打开的话是乱码,这里还需要进一步改进。


docker查询容器命令:docker ps -a

docker删除容器命令:docker rm 容器名/容器编号

docker查询镜像命令:docker images

eocker删除镜像命令:docker rmi 容器名


 本文转自 苏幕遮618 51CTO博客,原文链接:http://blog.51cto.com/chenx1242/1877621


相关文章
|
4月前
|
缓存 应用服务中间件 nginx
dockerfile构建镜像详细解释与应用
Dockerfile 是一种可被 Docker 程序解释的脚本,用于定义如何构建容器镜像。它通过一系列指令指定镜像的配置和定制需求,支持自动化构建,简化开发、测试和部署流程。
|
8月前
|
Ubuntu Java Linux
Dockerfile 自定义镜像
在这个快速发展的技术时代 , 我们经常面临着应用部署的复杂性、环境差异以及不同操作系统之间的兼容性问题 . 这些问题不仅消耗大量时间 , 还可能导致项目延期和成本增加 . Docker 的出现解决了我们在应用部署过程中遇到的障碍和挑战 . 通过将应用程序及其依赖环境封装在一个轻量级的、可移植的容器中 , Docker 不仅简化了开发和部署流程 , 还确保了不同环境间的无缝衔接和一致性 .
299 18
|
消息中间件 JavaScript 安全
使用 Dockerfile 构建生产环境镜像
1202 年了,如果你连 Docker 都不知道是什么,我建议买一本书看看——或者谷歌一下,博客已经写烂了。为什么有这篇文章,是因为我在真正做容器化改造的时候,发现公司生产环境存在大量的坑……
246 3
|
9月前
|
应用服务中间件 Shell nginx
制作docker镜像的dockerfile编写规则汇总
制作docker镜像的dockerfile编写规则汇总
159 0
|
9月前
|
缓存 Java 应用服务中间件
Docker 镜像构建的最佳做法
Docker 镜像构建的最佳做法
165 1
|
9月前
|
缓存 Ubuntu JavaScript
Docker自定义镜像-构建镜像-Dockerfile语法
Docker自定义镜像-构建镜像-Dockerfile语法
143 0
|
9月前
|
存储 缓存 Docker
Docker镜像构建:深入Dockerfile创建自定义镜像
Docker的强大之处在于其能够通过Dockerfile定义和构建自定义镜像,为应用提供独立、可移植的运行环境。在这篇博客文章中,将深入探讨Docker镜像构建的核心概念,通过更加丰富的示例代码,帮助大家全面理解和掌握构建自定义镜像的技术。
|
Docker 容器
将配置好的docker容器提交成新镜像、镜像导出、导入
将配置好的docker容器提交成新镜像、镜像导出、导入
212 1
|
9月前
|
Java Shell 应用服务中间件
DockerFile使用与自定义镜像详解
DockerFile使用与自定义镜像详解
746 0

热门文章

最新文章