首页 > 其他分享 >使用 Dockerfile 制作镜像

使用 Dockerfile 制作镜像

时间:2024-10-13 23:18:55浏览次数:10  
标签:RUN log 制作 --- nginx Step yum 镜像 Dockerfile

使用 Dockerfile 制作镜像

2.10.1. 基于 Dockerfile 创建镜像

为什么要自己创建镜像呢? 因为官方提供的镜像无法满足我们的需求,例如 nginx 镜像你会发现 ps, top 等等很多命令缺失。

2.10.1.1. 创建 Dockerfile 文件

需求基于centos7镜像创建nginx stable最新版本镜像

		
############################################################
# Dockerfile to build Nginx container
# Based on centos7
############################################################

FROM centos:latest

MAINTAINER Netkiller <[email protected]>

# Install EPEL
RUN yum install -y epel-release && yum clean all

# Update RPM Packages
RUN yum -y update

# Install Nginx
RUN rpm -ivh http://nginx.org/packages/centos/7/noarch/RPMS/nginx-release-centos-7-0.el7.ngx.noarch.rpm
RUN yum install -y nginx
RUN yum clean all

# forward request and error logs to docker log collector
RUN ln -sf /dev/stdout /var/log/nginx/access.log
RUN ln -sf /dev/stderr /var/log/nginx/error.log

# be backwards compatible with pre-official images
#RUN ln -sf ../share/nginx /usr/local/nginx

# prepare container

# add startup script
#ADD startup.sh /startup.sh
#RUN chmod 755 /startup.sh

VOLUME ["/etc/nginx"]
VOLUME ["/usr/share/nginx/html"]
VOLUME ["/var/www"]

EXPOSE 80 443

CMD ["nginx", "-g", "daemon off;"]
		
			
2.10.1.2. 创建镜像
		
# docker build -t "centos:nginx" .
Sending build context to Docker daemon 3.072 kB
Step 1/14 : FROM centos:latest
 ---> 3bee3060bfc8
Step 2/14 : MAINTAINER Netkiller <[email protected]>
 ---> Using cache
 ---> 8f351964d568
Step 3/14 : RUN yum install -y epel-release && yum clean all
 ---> Using cache
 ---> bf86eff77ff3
Step 4/14 : RUN yum -y update
 ---> Using cache
 ---> 4915172ac4f3
Step 5/14 : RUN rpm -ivh http://nginx.org/packages/centos/7/noarch/RPMS/nginx-release-centos-7-0.el7.ngx.noarch.rpm
 ---> Using cache
 ---> 4a919bd141c9
Step 6/14 : RUN yum install -y nginx
 ---> Using cache
 ---> 2718221eab8c
Step 7/14 : RUN yum clean all
 ---> Using cache
 ---> 62231a5f1d76
Step 8/14 : RUN ln -sf /dev/stdout /var/log/nginx/access.log
 ---> Using cache
 ---> 38be8f0cc782
Step 9/14 : RUN ln -sf /dev/stderr /var/log/nginx/error.log

标签:RUN,log,制作,---,nginx,Step,yum,镜像,Dockerfile
From: https://blog.csdn.net/u010604770/article/details/142846158

相关文章

  • ChatGPT官网中文版镜像网站整理(2024/10/13)
    一、什么是ChatGPT?ChatGPT是由OpenAI开发的一种基于GPT(GenerativePretrainedTransformer)模型的人工智能对话系统。它使用了深度学习技术中的一种叫做Transformer的架构,通过对大量文本数据进行预训练和微调,能够理解并生成自然语言。二、GPT工具跟国内AI大模型整理(一......
  • Hadoop单节点docker镜像
    用于个人学习构建,镜像地址如下:quanueilun/hadoop:singledockerfile,用来构建hadoop单节点镜像。FROMdragonwell-registry.cn-hangzhou.cr.aliyuncs.com/dragonwell/dragonwell:8RUNyummakecacheRUNyumupdate-yRUNyuminstall-yopenssh-servervimopenssh-cli......
  • ChatGPT 中文版镜像网站整理合集(2024/10/13)
    一、GPT中文镜像站① yixiaai.com 支持GPT4、4o以及o1,支持MJ绘画② chat.lify.vip 支持通用全模型,支持文件读取、插件、绘画、AIPPT③ AIChat 支持GPT3.5/4,4o以及MJ绘画1.什么是镜像站镜像站(MirrorSite)是指通过复制原始网站内容和结构,创建的备用网站。其主要目的......
  • 网站建设制作网页的基本步骤
    网站建设与制作网页通常遵循以下基本步骤:需求分析:明确网站的目标和功能。确定目标用户群体。分析竞争对手的网站。规划设计:制定网站结构图(Sitemap)。设计网站的视觉风格和布局。选择合适的颜色方案、字体等元素。原型设计:使用工具(如Sketch,Figma,Axure等)创......
  • 制作一个网站大概需要多少钱
    制作一个网站的成本取决于多种因素,包括但不限于网站类型、功能需求、设计复杂度以及是否需要定制开发等。以下是一些大致的价格范围供参考:模板网站:价格范围:几百元到几千元。特点:基于现有模板快速搭建,适合预算有限且对设计和功能没有特别要求的情况。定制网站:价格范围:......
  • Guitar Pro怎么制作伴奏谱,吉他谱制作软件guitar pro教程
    在诸多教学吉他谱制作软件中GuitarPro是一款非常优秀的软件,它是专为吉他和其他弦乐器设计,且能提供乐谱编辑、音轨录制和播放、和弦与音阶库等功能的强大软件。GuitarPro不仅具有强大的乐谱编辑功能,其用户界面也易于上手,更支持简谱编辑。在支持音轨录制和播放的同时,也提供了高......
  • 安卓手机数据恢复教程:使用 ADB 制作 data 分区镜像
    安卓手机数据恢复指南:使用ADB制作data分区镜像本文旨在为对安卓玩机有基本了解的用户提供一种使用ADB制作data分区镜像的方法,帮助您在数据没有多次覆写的情况下恢复安卓手机数据。adb制作data分区镜像,然后用数据恢复软件扫描镜像恢复前提条件安卓手机:您的设备......
  • [成] ArgoCD + "ArgoCD Image Updater小工具" 实现镜像仓库tag变更自动触发持续集成
    部署思路踩坑整理ArgoCD和ArgoCDImageUpdater是2个不同的程序。"ArgoCDImageUpdater小工具"没有集成在ArgoCD中需要单独部署。单独的ArgoCD能够实现基于git仓库变更作为应用部署的事实来源[参考子页:argocd根据镜像tag变化实现自动发布的2种方式];ArgoCD+"ArgoCDImage......
  • 排课系统的制作的前期准备
    classList=[{"ClassId":"1","Name":"20机电"},{"ClassId":"2","Name":"21高职电商"},{"ClassId":"3","Name":"22动漫"}]scheduleList=[{"ClassId&qu......
  • 修改Docker镜像和容器的默认存储目录(迁移原有数据)
    docker根目录占用的磁盘空间太大,将其迁移到新的磁盘上,后续的镜像和容器存储空间将在新的磁盘上1、查看docker现有的存储目录dockerinfo在打印的信息中查看DockerRootDir,即为当前的根目录,默认是/var/lib/docker,如下图:2、查看docker的service位置systemctlstatusdocker.s......