当前位置: 首页 > news >正文

Linux:docker镜像的创建(5)

1.基于已有镜像创建 

 步骤:

1.将原始镜像加入容器并运行

2.在原始镜像中部署各种服务

3.退出容器

4.使用下面命令将容器生成新的镜像

 现在我们在这个容器里做了一些配置,我们要把他做成自己镜像

docker commit -m "centos7_123" -a "tarro" 6025e38d6e59 docker:centos7
# docker commit -m "说明"      -a "作者"   基于容器ID    生成后的镜像名称和标签

执行完docker commit 以后就会通过容器制作一个镜像了

docker inspect 镜像ID

就能看到详细的信息了,比如作者什么的


2.基于本地模板创建

 Download/template/precreated - OpenVZ Virtuozzo Containers Wikiicon-default.png?t=N7T8https://wiki.openvz.org/Download/template/precreated下载一个模板

我这里随便下了个debian的模板并导入了系统中

cat debian-7.0-x86_64-minimal.tar.gz | docker import - docker:debain
# cat 模板                           | docker import - 创建的镜像名和标签


3.基于Dockerfile创建

我们要创建一个http的容器,需要使用到ftpyum仓库

我们要使用这个centos镜像

首先先去编译Dockerfile

vim Dockerfile写入#设置基础镜像
FROM centos#维护该镜像的用户信息
MAINTAINER tarro#设置本地yum源
RUN mkdir /etc/yum.repos.d/bak ; mv /etc/yum.repos.d/*.repo /etc/yum.repos.d/bakADD centos.repo /etc/yum.repos.d/centos.repo#清除缓存
RUN yum clean all# 安装apache服务
RUN yum -y install httpd#开启端口80
EXPOSE 80#复制位置网站首页文件
ADD index.html /var/www/html/index.html#复制执行脚本到镜像中
ADD run.sh /run.shRUN chmod 755 /run.sh #启动容器时执行脚本(制作镜像中不运行)
CMD ["/run.sh"]
vim run.sh写入#!/bin/bash
# 清理httpd的缓存
rm -fr /run/httpd/*
# 启动apache服务
exec /usr/sbin/apachectl -D FOREGROUND
echo "hello world" > index.html
vim centos.repo写入[123]
name=123
baseurl=ftp://192.168.6.1/ck
enabled=1
gpgcheck=0

在上面的dockerfile中使用到了,yum仓库,网页,还有一个shell脚本用来设置同容器一起启动,编写完以后即可开始制作

docker build -t apache:ly ./

docker run -d -p 8888:80 --name httpd apache:ly

开启一下,再进行一个端口转换看看效果

http://www.lryc.cn/news/253435.html

相关文章:

  • 数据结构与算法-D2D3线性表之顺序表
  • 01_W5500简介
  • 异常 Exception 练习题 (未完成)
  • Linux系统编程:并发与信号总结
  • Jmeter 接口-加密信息发送(一百九十九)
  • 微信小程序nodejs+vue+uniapp视力保养眼镜店连锁预约系统
  • 掌握Vue侦听器(watch)的应用
  • SAP-PP:PP顾问管理系统的相关建议
  • Unity资源路径与读取
  • “大+小模型”赋能油气行业高质量发展
  • 【win32_004】字符串处理函数
  • 如果不小心修改了按钮的名字并且忘记了原名字
  • opencv阈值处理
  • html之JS
  • SQL Server的安装和首个库的创建
  • STM32下载程序的五种方法
  • 基于springboot + vue大学生竞赛管理系统
  • 【详解】Spark数据倾斜问题由基础到深入详解-完美理解-费元星
  • xss漏洞后端进行html消毒
  • [论文精读]利用大语言模型对扩散模型进行自我修正
  • CTF特训日记day(4-6)
  • 【深度学习笔记】09 权重衰减
  • 三大兼容 | 人大金仓兼容+优化MySQL用户变量特性
  • Git介绍与安装使用
  • 理解DuLinkList L中的“”引用符号
  • 前端并发多个请求并失败重发
  • 【Qt开发流程】之对象模型2:属性系统
  • PHP之curl详细讲解
  • R语言30分钟上手
  • 上下拉电阻会增强驱动能力吗?