Linux:dockerfile编写搭建nginx练习(8)

17 篇文章 0 订阅

 dockerfile是创建镜像的一种,通过已有镜像的基础上再在上面部署一些别的。


 在这个基础镜像上搭建,我这个是一个空的centos镜像


 我这里用http的yum仓库存放了nginx和rpm包

 


创建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/bak

ADD centos.repo /etc/yum.repos.d/centos.repo

#安装相关依赖包
RUN yum clean all ; yum -y install wget proc-devel net-tools gcc zlib zlib-devel make --skip-broken

#下载并解压nginx源码包
RUN wget http://192.168.6.1/nginx/nginx-1.12.0.tar.gz

RUN tar zxf nginx-1.12.0.tar.gz

#切换目录
WORKDIR nginx-1.12.0

#编译安装
RUN ./configure --prefix=/usr/local/nginx --without-http_rewrite_module && make && make install

#开启端口
EXPOSE 80
EXPOSE 443

#修改nginx文件,以非daemon方式启动
RUN echo "daemon off;" >>/usr/local/nginx/conf/nginx.conf

#复制服务启动脚本并设置权限
WORKDIR /root/nginx
ADD run.sh /run.sh
RUN chmod 775 /run.sh

#启动容器时执行脚本
CMD ["/run.sh"]

同时还要yum仓库和run文件

vim run.sh

写入


#!/bin/bash
/usr/local/nginx/sbin/nginx

还有repoyum仓库文件

vim centos.repo

写入

[local]
name=centos
baseurl=http://192.168.6.1/yum
enabled=1
gpgcheck=0

生成镜像

docker build -t nginx:nginx ./

通过centos基础镜像生成了个名为nginx的镜像

 全程没报错,基础的没问题

docker run -d -P nginx:nginx 

 

搭建成功 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值