Browse Source

fix bug

main
xiaoz 12 months ago
parent
commit
191158a667
  1. 18
      nginx/Dockerfile
  2. 14
      nginx/sh/install_nginx.sh

18
nginx/Dockerfile

@ -1,15 +1,19 @@
#基于哪个镜像制作,3.14会有问题 #基于哪个镜像制作,3.14会有问题
FROM alpine:3.13 FROM alpine:3.13
RUN addgroup -S nginx && adduser -S nginx -G nginx
USER nginx
#工作目录 #工作目录
WORKDIR /root WORKDIR /opt
#复制脚本到root目录 # 确保 nginx 用户有权限访问复制的文件
COPY sh/* /root/ COPY --chown=nginx:nginx sh/* /opt/
#复制配置文件
COPY conf/* /root/
#执行安装脚本 #执行安装脚本
# 切换到 root 用户进行安装
USER root
RUN sh install_nginx.sh RUN sh install_nginx.sh
#暴露站点文件夹
VOLUME /data/xcdn # 切换回 nginx 用户
USER nginx
#健康检查 #健康检查
HEALTHCHECK --interval=10s --timeout=5s \ HEALTHCHECK --interval=10s --timeout=5s \
CMD curl -fs http://localhost/ || exit 1 CMD curl -fs http://localhost/ || exit 1

14
nginx/sh/install_nginx.sh

@ -37,9 +37,9 @@ set_time(){
install_before(){ install_before(){
#脚本添加执行权限 #脚本添加执行权限
chmod +x /root/*.sh chmod +x /opt/*.sh
cp /root/run.sh /usr/sbin/ cp /opt/run.sh /usr/sbin/
cp /root/xc.sh /usr/sbin/ cp /opt/xc.sh /usr/sbin/
#创建软连接 #创建软连接
ln -s /usr/local/nginx/sbin/nginx /usr/sbin/nginx ln -s /usr/local/nginx/sbin/nginx /usr/sbin/nginx
#创建缓存文件夹 #创建缓存文件夹
@ -61,6 +61,8 @@ install_nginx(){
#环境变量与服务 #环境变量与服务
echo "export PATH=$PATH:/usr/local/nginx/sbin" >> /etc/profile echo "export PATH=$PATH:/usr/local/nginx/sbin" >> /etc/profile
export PATH=$PATH:'/usr/local/nginx/sbin' export PATH=$PATH:'/usr/local/nginx/sbin'
# 设置权限
chown -R nginx:nginx /usr/local/nginx
#日志分割 #日志分割
#wget --no-check-certificate https://raw.githubusercontent.com/helloxz/nginx-cdn/master/etc/logrotate.d/nginx -P /etc/logrotate.d/ #wget --no-check-certificate https://raw.githubusercontent.com/helloxz/nginx-cdn/master/etc/logrotate.d/nginx -P /etc/logrotate.d/
@ -74,15 +76,15 @@ install_nginx(){
add_crontab() { add_crontab() {
echo "添加定时任务" echo "添加定时任务"
# 检测配置文件和SSL证书变化 # 检测配置文件和SSL证书变化
echo "*/3 * * * * /root/xc.sh check_change" >> /etc/crontabs/root echo "*/3 * * * * /opt/xc.sh check_change" >> /etc/crontabs/opt
# 日志分割 # 日志分割
echo "50 23 * * * /usr/sbin/logrotate -f /etc/logrotate.d/nginx" >> /etc/crontabs/root echo "50 23 * * * /usr/sbin/logrotate -f /etc/logrotate.d/nginx" >> /etc/crontabs/opt
} }
#清理工作 #清理工作
clean_work(){ clean_work(){
rm -rf /var/cache/apk/* rm -rf /var/cache/apk/*
rm -rf /root/.cache rm -rf /opt/.cache
rm -rf /tmp/* rm -rf /tmp/*
} }

Loading…
Cancel
Save