使用Dockerfile创建镜像

本文详细介绍了如何使用Dockerfile构建一个包含EPEL仓库配置的CentOS7基础镜像,然后安装Nginx并配置静态网页,最后通过Docker运行和测试。
摘要由CSDN通过智能技术生成
mkdir /dockerfile_test/nginx/ -p
cd /dockerfile_test/nginx/
vi Dockerfile
文件内输入内容:
FROM centos7:latest      #基于CentOS构建新的镜像

COPY epel.repo /etc/yum.repos.d/  
#这一行将宿主机中的epel.repo文件复制到新镜像的/etc/yum.repos.d/目录下。这个文件通常包含了EPEL软件仓库的配置信息,以便后续安装软件包。
RUN yum -y install nginx
COPY dest /usr/share/nginx/html 
#宿主机中的dest目录复制到新镜像的/usr/share/nginx/html目录下这个目录通常用于存放Nginx服务器的静态网页文件。

EXPOSE 80
CMD ["/usr/sbin/nginx","-g","daemon off;"]
#这一行指定了在容器启动时要执行的命令。这里启动了Nginx服务器,并使用daemon off;参数使Nginx在前台运行,以便容器不会在Nginx进程退出时终止。


wget -c http://mirrors.aliyun.com/repo/epel-7.repo  #epel-7.repo文件是一个YUM源配置文件
mv epel-7.repo epel.repo

mkdir dest
echo "This is nginx test page." > dest/index.html
ocker build -t node1.harbor.com/nginx:v1 ./   
#这条命令用于构建一个名为node1.harbor.com/nginx:v1的Docker镜像,

docker run -d -P --name web node1.harbor.com/nginx:v1
#指定要使用的镜像为node1.harbor.com/nginx的版本v1。

docker ps -a
CONTAINER ID   IMAGE                       COMMAND                   CREATED       STATUS       PORTS                                     NAMES
174cc059ffaa   node1.harbor.com/nginx:v1   "/usr/sbin/nginx -g …"   3 hours ago   Up 3 hours   0.0.0.0:32768->80/tcp, :::32768->80/tcp   web
查看随机端口,然后再浏览器上面输入ip加32768端口测试

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值