制作 docker 镜像
admin
2023-04-10 08:23:50
0次

基础环境说明

# cat /etc/redhat-release
CentOS release 6.8 (Final)

设置 docker 镜像源#

# yum install -y yum-priorities && rpm -ivh http://dl.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm && rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-6

安装 docker-io 和 febootstrap,用来制作centos镜像,生成centos的镜像#

# yum install docker-io -y #安装docker
# service docker start #启动docker
# yum install febootstrap #制作镜像工具

制作CentOS镜像文件 centos6-image 目录#

# febootstrap -i bash -i wget -i yum -i iputils -i iproute -i man -i vim -i openssh-server -i openssh-clients -i tar -i gzip centos6 centos6-image http://mirrors.aliyun.com/centos/6/os/x86_64/

-i : 安装的软件包

centos6 : 系统版本

centos6-image : 生成的目录名称

也可以制作CentOS7的镜像 将地址更换为CentOS7的地址,例如

# febootstrap -i bash -i net-tools -i wget -i yum -i iputils -i iproute -i man -i vim -i openssh-server -i openssh-clients -i tar -i gzip centos7 centos7-image https://mirrors.aliyun.com/centos/7/os/x86_64/

设置ssh 进入镜像的时候直接进入root 目录(如果不做这一步则直接进入到 / 目录)

# cd centos6-image && cp etc/skel/.bash* root/

生成基础镜像 base#

# cd centos6-image && tar -c . |docker import - centos6-base

查看镜像

# docker images

根据基础镜像制作 http 的docker 镜像#

# cat Dockerfile

FROM centos6-base # 表示以此镜像为基础镜像进行制作
MAINTAINER bamboo # 表示镜像制作者的信息
RUN yum install -y yum-priorities && rpm -ivh http://dl.fedoraproject.org/pub/epel/6/x86_64/Packages/e/epel-release-6-8.noarch.rpm && rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-6
RUN yum install tar gzip vim wget httpd httpd-* -y
RUN sed -i 's/#ServerName www.example.com:80/ServerName www.example.com:80/' /etc/httpd/conf/httpd.conf
EXPOSE 80 # 表示开启的端口号
CMD ["/usr/sbin/httpd","-D","FOREGROUND"] #表示在启动镜像的时候执行的命令 一个Dockerfile只能写一个CMD命令,多个CMD执行最后的那一条
#ENTRYPOINT ["/usr/sbin/httpd","-D","FOREGROUND"] # 和CMD 用法一样

build 镜像#

# cd centos6-image && docker build -t centos6-httpd /root/bamboo
-t 后面跟的是即将生成镜像的名字也就是上面的 centos6-httpd
最后跟的是 Dockerfile的目录,是目录

查看和测试#

# docker images # 查看新生成的镜像centos6-httpd
# docker -d --name http -p 800:80 centos6-http
# docker ps -a # 可以查看到运行的镜像 以及端口映射情况
# 访问 curl http://ip:800 可以看到http默认的欢迎页面

相关内容

热门资讯

空调连续工作多久需要停机休息 空调连续工作的时间取决于多个因素,包括空调的型号、功率、使用环境和维护情况等。一般来说,空调可以连续...
空调哪个符号是除湿的 空调除湿功能通常用一个水滴形状的符号表示。不同品牌和型号的空调遥控器可能会有所差异,但一般来说,除湿...
格力空调多长时间加一次氟利昂 1、一般情况下,空调对氟利昂的使用量是非常小的,所以在空调使用了四年左右的时候再考虑加也没问题。2、...
空调用多长时间需要加氟一次 一般情况下是五年。当出现以下这几种情况时,空调才需要加氟。1、空调的室内机和室外机各有两个接口,当接...
格调生活·C标思享荟:卡萨帝在... 9月12日的郑州龙湖金融岛,夜风轻拂,灯光璀璨。“C标时刻共传奇——卡萨帝思享荟暨20周年品牌盛典郑...
品牌价值破千亿、高端份额持续领... 9月12日,“C标时刻共传奇——卡萨帝思享荟暨20周年品牌盛典郑州站”在郑州龙湖金融岛举办。2026...
空调主板坏了修800还是换新的 空调主板坏了是修还是换新,需要考虑多个因素,以下是一些建议:1. 维修成本:如果维修费用较低,比如 ...
空调开多久需要休息多长时间 问题:空调开多久需要休息多长时间回答:1、在使用空调的过程中,一般空调开7~8个小时左右需要休息2~...
中央空调多长时间清洗一次 1、一般空调开机前清洗一次即可,空调开机中间时段再清洗一次,空调关机时清洗一次,这样比较合理。2、空...
中央空调氟利昂多久加一次 看空调制热和制冷程度,很多人的观点认为氟利昂必须一年放一次,其实这个观点是错误的,理解上面有点偏差,...