[Linux] 编写Dockerfile文件自动构建镜像

Dockerfile是一个文本文件,按顺序包含构建给定镜像所需的所有命令
Docker通过读取Dockerfile中的指令自动构建图像 。 Dockerfile遵循特定的格式和指令集,您可以在Dockerfile引用中找到它们。 Docker镜像由只读层组成,每个层都代表一个Dockerfile指令。这些层是堆叠的,每个层都是前一层变化的增量

在Ubunu镜像的基础上,安装nginx,并且拷贝本地文件到镜像,创建一个Dockerfile文件到目录下,并且建一个1.txt的文件

# 基础镜像
FROM ubuntu:latest
# 维护者信息
MAINTAINER [email protected]

# 运行命令
RUN apt-get -yqq update && apt-get install -yqq nginx
# 拷贝文件
COPY 1.txt /var/www/html
CMD ["/usr/sbin/nginx"]

docker build -f 可以指定dockerfile文件的路径

docker build -t 可以设置镜像的名称

docker build -t taoshihan/myimage .

镜像构建成功

运行镜像, -it可以进入交互式环境

docker run -it taoshihan/myimage bash

  

原文地址:https://www.cnblogs.com/taoshihan/p/11537894.html

时间: 2024-10-31 11:02:43

[Linux] 编写Dockerfile文件自动构建镜像的相关文章

Windows与Linux之间的文件自动同步

问题:在工作中遇到一个场景,需要每天定时将Linux机器上的文件自动同步到Windows机器上. 解决方案有两个: 1.在Windows 机器上设置共享目录,然后在Linux机器上挂载共享 目录,每天将文件写入共享目录即可. 命令: mount -t cifs -o username=administrator,password=XXX //WIN IP/WINDOWS共享的目录名 /sample/ 2.在Linux上搭建Ftp服务器,然后在windows上通过定时任务执行脚本来下载 文件. 第

编写Dockerfile文件,构建自己的centos镜像

#自定义mycentos目的使我们自己的镜像具备如下功能:1.登录后的默认路径2.可以使用vim 编辑器3.能够使用查看网络配置的ifconfig命令#编写[[email protected] ~]# cd /mydocker[[email protected] mydocker]# lltotal 4-rw-r--r-- 1 root root 137 Jan 12 15:37 Dockerfile[[email protected] mydocker]# vim Dockerfile2 FR

关于linux tmp下文件自动删除的问题

近日发现有一台机器tmp 下放置的文件无辜丢失,而且排查发现是自动丢失,并且,只是删除10天之前的文件.... 本来以为是哪位写了一个自动执行脚本, find 了一下10天前的文件删除了.... 结果,排查所有用户的crontab 计划,没有任何用户执行了自动脚本 监测了一下服务器登录情况,在删除文件期间也没有任何人登录 最终,通过不懈的百度,终于找到正解 从/var/log/cron 日志中发现,服务器除了调用用户的计划任务外,还会执行系统自己的,比如: /etc/cron.hourly /e

根据Dokerfile文件自定义tomcat镜像

准备jdk和tomcat压缩包 编写Dockerfile文件 #基于centos镜像来构建 FROM centos MAINTAINER quan<[email protected]> #将宿主机下的文本拷贝到容器/usr/local/路径下 COPY cp.txt /usr/local/cpContainer.txt #把jdk和Tomcat添加到容器中 ADD jdk-8u181-linux-x64.tar.gz /usr/local/ ADD apache-tomcat-9.0.30.t

根据Dockerfile构建镜像

根据Dockerfile构建出一个镜像Dockfile是一种被Docker程序解释的脚本,Dockerfile由一条一条的指令组成,每条指令对应Linux下面的一条命令.Docker程序将这些Dockerfile指令翻译真正的Linux命令.Dockerfile有自己书写格式和支持的命令,Docker程序解决这些命令间的依赖关系,类似于Makefile.Docker程序将读取Dockerfile,根据指令生成定制的image.相比image这种黑盒子,Dockerfile这种显而易见的脚本更容易

使用Dockerfile构建镜像并push到私有仓库

环境:OS X 10.10.5 maven 3.3.9 Docker version 1.12.2 docker-machine version 0.8.2 程序示例为http://www.cnblogs.com/modprobe/p/6001333.html 中提到的服务发现程序 相关代码:https://github.com/li-hong/spring-cloud-demo 一.准备工作,安装docker-toolbox 方法:http://www.docker.com/products/

docker Dockerfile文件的编写部分命令

镜像的构建过程:编写dockerfile文件,执行docker build 进行构建镜像,最后docker run 运行容器镜像实例. docker build -t mycentos:1.01 . 构建镜像,最终的名字为mycentos,docker build -f /root/firstdockerfile/Dockerfile2 -t cmdtest . -f参数需要加绝对路径,当当前没有dockerfile文件时需要使用这个参数. docker run -it mycentos:1.0

Linux下Dockerfile搭建lnmp(目前只有n和p)

# 一:环境准备centos7.4以及搭建好的Docker [[email protected] ~]# cat /etc/redhat-release CentOS Linux release 7.4.1708 (Core)[[email protected] ~]# docker -vDocker version 17.03.2-ce, build f5ec1e2 # 二:搭建nginx和php的镜像1.nginx创建基础镜像 [[email protected] /]# vim Docke

Dockerfile创建自定义Docker镜像以及CMD与ENTRYPOINT指令的比较

1.概述 创建Docker镜像的方式有三种 docker commit命令:由容器生成镜像: Dockerfile文件+docker build命令: 从本地文件系统导入:OpenVZ的模板. 关于这三种方式的大致说明请参考yeasy/docker_practice的创建镜像. 最近学习了Dockerfile文件的相关配置,这里做一下简单的总结,并对之前一直感到有些迷惑的CMD和ENTRYPOINT指令做个差异对比. 2.Dockerfile文件总结 Dockerfile 由一行行命令语句组成,