dockerfile

dockerfile文件

以centos7.9为基础镜像构建nginx方向代理

dockerfile 复制代码
# 使用官方的CentOS 7.9基础镜像
FROM centos:7.9.2009

# 设置维护者信息
LABEL maintainer="dan"
# 备份yum源
RUN  mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.backup
# 下载国产yum源
RUN  curl -o /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
# 更新yum源
RUN yum clean all && yum makecache

# 创建非特权用户 
RUN groupadd -r nginx && useradd -r -g nginx -s /sbin/nologin nginx 
 
# 拷贝Nginx
COPY nginx /usr/local/nginx
RUN chmod +x /usr/local/nginx/sbin/nginx

RUN chmod -R 755 /usr/local/nginx/logs && chown -R nginx:nginx /usr/local/nginx 
 
WORKDIR /usr/local/nginx/sbin
 
VOLUME /usr/local/nginx/conf /usr/local/nginx/logs

# 暴露端口8099
EXPOSE 8099

# 设置容器启动时执行的命令
USER nginx 
CMD ["./nginx", "-g", "daemon off;"]

构建镜像

bash 复制代码
# 在dockerfile文件目录下构建
docker build -t 镜像名:镜像版本 .
# 在dockerfile文件目录下,不适用缓存构建
docker build --no-cache -t 镜像名:镜像版本 .

试运行镜像看能否达到要求

bash 复制代码
docker run -it --rm -p 宿主机端口:容器端口 -v 宿主机目录:容器目录 镜像名:镜像版本 /bin/bash
相关推荐
ALex_zry13 分钟前
MySQL运维管理技术手册:从监控到自动化实战
运维·mysql·自动化
似水流年 光阴已逝25 分钟前
用架构图理解k8s系列
云原生·容器·kubernetes
小雪_Snow36 分钟前
CentOS 7 安装 docker 教程
linux·docker·centos
凤凰战士芭比Q1 小时前
Linux部署基于Django的博客系统
linux·运维·django
源来猿往1 小时前
高并发之nginx架构
运维·nginx
Kt&Rs1 小时前
从问题驱动技术的角度对k8s技术的思维层面理解
云原生·容器·kubernetes
边疆.2 小时前
【Linux】进程创建、进程终止、进程等待和进程程序替换
linux·运维·服务器·vim·进程控制·进程等待·进程替换
Y淑滢潇潇2 小时前
RHCE Day5 SELinux
linux·运维·rhce
是垚不是土2 小时前
运维新人踩坑记录:Redis与MySQL生产故障排查&优化手册
运维·数据库·redis·mysql·云计算·bootstrap
snpgroupcn3 小时前
如何在SAP中实现数据验证自动化?5天缩短验证周期,提升转型效率的3大关键策略
运维·人工智能·自动化