chore: remove Docker support entirely from this fork

Never used by this fork's own distribution (install.sh/x-ui.sh is the
only supported install path), AmneziaWG structurally can't run in the
Alpine-based image anyway, and Docker Hub publishing was failing on
every release for lack of configured credentials. Removed Dockerfile,
docker-compose.yml, DockerEntrypoint.sh, DockerInit.sh, .dockerignore,
and the docker.yml CI workflow; dropped the now-dead "Docker" README
subsection (all 7 languages), the "Docker image"/"Docker Compose"
options from the issue/PR templates, and corrected claude-bot.yml's
now-stale references to the deleted files, the never-actually-ours
ghcr.io/mhsanaei/3x-ui image, and (caught in passing) an already-stale
claim that Windows is a supported platform.

Left untouched: generic container-runtime adaptations that apply
regardless of image source (x-ui.sh's running-in-docker detection,
the virtual-interface-name filters, the DNS-over-container-network
note) and deploy/test/smoke-noninteractive.sh, which uses Docker only
as its own test sandbox, not as something this repo ships.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
This commit is contained in:
Kuzz007
2026-07-27 01:13:04 +03:00
parent ea43571037
commit ea00e69d4d
21 changed files with 9 additions and 493 deletions
-17
View File
@@ -148,23 +148,6 @@ systemctl restart x-ui
يبقى ملف SQLite الأصلي دون تغيير؛ احذفه يدويًا بعد التحقق من الخلفية الجديدة.
### Docker
يستمر الأمر الافتراضي `docker compose up -d` في استخدام SQLite. للتشغيل مع خدمة PostgreSQL المرفقة، أزِل التعليق عن سطري متغيرات البيئة `XUI_DB_*` في `docker-compose.yml` وشغّل باستخدام البروفايل:
```bash
docker compose --profile postgres up -d
```
> [!NOTE]
> تحتاج اتصالات AmneziaWG الواردة إلى `awg-quick`/`awg` ووحدة نواة AmneziaWG على **المضيف** — وهذا بالضبط ما يوضحه قصد التصميم بدون Docker في قسم [ما الذي يختلف في هذه النسخة](#ما-الذي-يختلف-في-هذه-النسخة-amneziawg). لا يزال تشغيل اللوحة نفسها في Docker يعمل لأي بروتوكول آخر، لكن اتصال AmneziaWG الوارد المُنشأ من لوحة تعمل داخل حاوية ليس لديه مكان لرفع واجهته ما لم تحصل الحاوية على وصول شبكي/نواة على مستوى المضيف، مما يُبطل الغرض من الأساس. إذا كنت تنوي استخدام AmneziaWG، شغّله نيتيفيًا على المضيف.
تتضمن الصورة Fail2ban (مُفعَّل افتراضيًا) لفرض **حدود IP** لكل عميل. يحظر Fail2ban المخالفين باستخدام `iptables`، الذي يتطلب صلاحية `NET_ADMIN`. يمنح `docker-compose.yml` هذه الصلاحية مسبقًا عبر `cap_add`؛ إذا شغّلت الحاوية باستخدام `docker run` بدلاً من ذلك، فأضِف الصلاحيات بنفسك، وإلا فسيتم تسجيل عمليات الحظر دون تطبيقها أبدًا:
```bash
docker run -d --cap-add=NET_ADMIN --cap-add=NET_RAW ... ghcr.io/mhsanaei/3x-ui
```
## متغيرات البيئة
| المتغير | الوصف | الافتراضي |