114 lines
3.0 KiB
Markdown
114 lines
3.0 KiB
Markdown
````markdown
|
||
# Gitea Backup Script (Docker + FTP + SMS Notification)
|
||
|
||
پروژهای برای بکاپگیری خودکار از Gitea نصبشده با Docker، انتقال فایل به سرور دوم از طریق FTP و ارسال پیامک وضعیت بکاپ با استفاده از پنل SMS IPPanel.
|
||
|
||
---
|
||
|
||
## 📦 نیازمندیها
|
||
|
||
- سیستمعامل لینوکسی (Debian,Ubuntu ترجیحاً)
|
||
- نصب `docker` و `docker-compose` (برای اجرای Gitea)
|
||
- اکانت FTP برای انتقال بکاپ
|
||
- پنل IPPanel برای ارسال پیامک (اختیاری ولی توصیهشده)
|
||
- curl، tar، gzip
|
||
|
||
---
|
||
|
||
## ⚙️ تنظیمات اولیه
|
||
|
||
۱. فایل `gitea_backup.sh` را ویرایش کرده و مقادیر زیر را به نیاز خود تنظیم کنید:
|
||
|
||
```bash
|
||
FTP_HOST="ftp.example.com"
|
||
FTP_USER="ftpuser"
|
||
FTP_PASS="ftppassword"
|
||
FTP_DIR="/backups/gitea"
|
||
|
||
PHONE="+98912xxxxxxx" # شماره مقصد پیامک
|
||
API_KEY="your_ippanel_api_key" # کلید API پیامک
|
||
SENDER="+983000505" # خط ارسال پیامک (از IPPanel)
|
||
````
|
||
|
||
---
|
||
|
||
## 🚀 اجرای دستی
|
||
|
||
برای اجرای دستی اسکریپت:
|
||
|
||
```bash
|
||
chmod +x gitea_backup.sh
|
||
./gitea_backup.sh
|
||
```
|
||
|
||
اسکریپت موارد زیر را انجام میدهد:
|
||
|
||
* ایجاد فایل بکاپ از `/data` کانتینر Gitea
|
||
* انتقال فایل به FTP
|
||
* ارسال پیامک نتیجه موفق یا ناموفق بودن
|
||
|
||
---
|
||
|
||
## ⏰ اجرای خودکار با Cron
|
||
|
||
برای تنظیم بکاپ روزانه، ابتدا ابزار cron را نصب کن:
|
||
|
||
```bash
|
||
apt install cron -y
|
||
```
|
||
|
||
سپس کرونجاب را اضافه کن:
|
||
|
||
```bash
|
||
crontab -e
|
||
```
|
||
|
||
و این خط را اضافه کن (مثلاً ساعت ۲ بامداد هر شب):
|
||
|
||
```bash
|
||
0 2 * * * /root/Git/gitea-backup/gitea_backup.sh >> /var/log/gitea_backup.log 2>&1
|
||
```
|
||
|
||
---
|
||
|
||
## 📲 ارسال پیامک با IPPanel
|
||
|
||
در صورت موفق یا ناموفق بودن عملیات، اسکریپت یک پیامک با محتوای وضعیت ارسال میکند.
|
||
|
||
### مثال محتوای پیامک موفق:
|
||
|
||
```
|
||
✅ بکاپ Gitea با موفقیت در تاریخ 2025-05-30 02:00 انجام شد.
|
||
```
|
||
|
||
### مثال محتوای پیامک ناموفق:
|
||
|
||
```
|
||
❌ بکاپ Gitea با خطا مواجه شد در تاریخ 2025-05-30 02:00 . لطفاً بررسی شود!
|
||
```
|
||
|
||
> برای استفاده از IPPanel نیاز به API Key معتبر دارید.
|
||
|
||
---
|
||
|
||
## 📞 دریافت پنل پیامکی IPPanel
|
||
|
||
اگر پنل پیامکی نیاز دارید، تماس بگیرید:
|
||
|
||
* **📱 09303063007**
|
||
(تأمین پنل رسمی IPPanel با دسترسی به خطوط خدماتی)
|
||
|
||
---
|
||
|
||
## 👨💻 توسعهدهنده
|
||
|
||
با همکاری GPT و تیم حفظ
|
||
🔗 [https://git.hefzteam.ir](https://git.hefzteam.ir)
|
||
|
||
```
|
||
|
||
---
|
||
|
||
بگو اگه بخوای این رو مستقیم توی پروژهت کامیت کنیم، یا بخش دیگهای هم اضافه کنیم مثل restore یا encryption.
|
||
```
|