You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
|
|
# Hướng dẫn chạy ứng dụng Flask ngầm với PID File
|
|
|
|
|
|
## 1️⃣ Chạy ứng dụng ngầm và lưu PID
|
|
|
Bạn có thể chạy ứng dụng Flask (`app.py`) dưới nền và lưu PID vào file để dễ dàng quản lý.
|
|
|
|
|
|
```bash
|
|
|
nohup python3 app.py > output.log 2>&1 & echo $! > servermanagement.pid
|
|
|
```
|
|
|
|
|
|
### 🔍 Giải thích lệnh:
|
|
|
- `nohup python3 app.py > output.log 2>&1 &` → Chạy `app.py` ngầm, không bị dừng khi thoát terminal.
|
|
|
- `echo $! > servermanagement.pid` → Lưu **Process ID (PID)** vào file `servermanagement.pid`.
|
|
|
|
|
|
---
|
|
|
|
|
|
## 2️⃣ Dừng ứng dụng bằng file PID
|
|
|
Để dừng ứng dụng, sử dụng lệnh:
|
|
|
|
|
|
```bash
|
|
|
kill $(cat servermanagement.pid)
|
|
|
rm servermanagement.pid
|
|
|
```
|
|
|
|
|
|
### ✅ Giải thích:
|
|
|
- `cat servermanagement.pid` → Đọc **PID** từ file.
|
|
|
- `kill $(cat servermanagement.pid)` → Dừng tiến trình ứng dụng.
|
|
|
- `rm servermanagement.pid` → Xóa file PID sau khi dừng.
|
|
|
|
|
|
---
|
|
|
|
|
|
## 3️⃣ Đổi tên file PID
|
|
|
Bạn có thể đổi tên file PID theo ý muốn, ví dụ `myservermanagement.pid`:
|
|
|
|
|
|
```bash
|
|
|
nohup python3 app.py > output.log 2>&1 & echo $! > myservermanagement.pid
|
|
|
```
|
|
|
|
|
|
Dừng ứng dụng:
|
|
|
|
|
|
```bash
|
|
|
kill $(cat myservermanagement.pid)
|
|
|
rm myservermanagement.pid
|
|
|
```
|
|
|
|
|
|
---
|
|
|
|
|
|
## 4️⃣ Quản lý nhiều ứng dụng cùng lúc
|
|
|
Nếu bạn chạy nhiều ứng dụng Flask, hãy sử dụng file PID riêng cho từng ứng dụng:
|
|
|
|
|
|
```bash
|
|
|
nohup python3 service1.py > service1.log 2>&1 & echo $! > service1.pid
|
|
|
nohup python3 service2.py > service2.log 2>&1 & echo $! > service2.pid
|
|
|
```
|
|
|
|
|
|
Dừng từng ứng dụng:
|
|
|
|
|
|
```bash
|
|
|
kill $(cat service1.pid) && rm service1.pid
|
|
|
kill $(cat service2.pid) && rm service2.pid
|
|
|
```
|
|
|
|
|
|
---
|
|
|
|
|
|
⚡ **TIP:** Bạn có thể tạo script tự động Start/Stop ứng dụng bằng PID để tiện sử dụng! 🚀
|
|
|
|
|
|
|