mosix7/mosresearch
0
1FROM alpine:latest
2
3# نصب پکیجهای ضروری و حذف کش برای کاهش حجم
4RUN apk add --no-cache ca-certificates curl unzip nginx
5
6# ایجاد کاربر با UID 1000 (استاندارد محیطهای ابری) و ساخت مسیرها
7RUN adduser -D -u 1000 xray && \
8 mkdir -p /www /etc/xray \
9 /var/log/nginx \
10 /var/cache/nginx \
11 /var/lib/nginx/tmp \
12 /var/lib/nginx/logs \
13 /var/run/nginx \
14 /tmp/nginx && \
15 chown -R xray:xray /www /etc/xray /var/log/nginx /var/cache/nginx \
16 /var/lib/nginx /var/run/nginx /tmp/nginx /tmp
17
18# دانلود هسته و تغییر نام برای استتار
19RUN mkdir /tmp/xray && \
20 curl -L -o /tmp/xray/xray.zip https://github.com/XTLS/Xray-core/releases/latest/download/Xray-linux-64.zip && \
21 unzip /tmp/xray/xray.zip -d /tmp/xray && \
22 mv /tmp/xray/xray /usr/local/bin/ai-core && \
23 chmod +x /usr/local/bin/ai-core && \
24 rm -rf /tmp/xray
25
26# انتقال فایلهای پروژه
27COPY index.html /www/index.html
28COPY entrypoint.sh /entrypoint.sh
29
30# تنظیم دسترسی اجرایی برای اسکریپت اصلی
31RUN chmod +x /entrypoint.sh
32
33# سوئیچ به کاربر غیر روت برای امنیت و تطابق با قوانین کانتینر
34USER xray
35EXPOSE 7860
36
37# بررسی سلامت کانتینر
38HEALTHCHECK --interval=30s --timeout=5s CMD wget --no-verbose --tries=1 --spider http://127.0.0.1:7860 || exit 1
39
40ENTRYPOINT ["/entrypoint.sh"]