2025-09-16 21:25:24 +08:00

45 lines
1.1 KiB
Docker
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# 使用官方Nginx Alpine基础镜像更轻量
FROM nginx:1.24-alpine
# 维护者信息
LABEL maintainer="xiaomayicloud@163.com"
LABEL description="Nginx 1.24 for Node.js frontend deployment"
LABEL version="1.24"
# 安装必要的工具
RUN apk update && \
apk add --no-cache \
curl \
bash \
tzdata \
&& rm -rf /var/cache/apk/*
# 设置时区(可选,根据需要修改)
ENV TZ=Asia/Shanghai
RUN ln -snf /usr/share/zoneinfo/$TZ /etc/localtime && echo $TZ > /etc/timezone
# 创建应用目录
RUN mkdir -p /app/dist && \
mkdir -p /app/logs && \
mkdir -p /app/conf
# 移除默认的Nginx配置
RUN rm -rf /etc/nginx/conf.d/default.conf
# 复制自定义Nginx配置
COPY nginx.conf /etc/nginx/nginx.conf
COPY conf.d/ /etc/nginx/conf.d/
# 复制健康检查脚本
COPY healthcheck.sh /usr/local/bin/healthcheck.sh
RUN chmod +x /usr/local/bin/healthcheck.sh
# 暴露端口
EXPOSE 80 443
# 健康检查
HEALTHCHECK --interval=30s --timeout=10s --retries=3 \
CMD /usr/local/bin/healthcheck.sh
# 启动Nginx
CMD ["nginx", "-g", "daemon off;"]