restart server automatis dan set windows
Untuk mengatur server Flask agar dapat restart secara otomatis pada Windows, Anda dapat menggunakan alat seperti python-dotenv dan watchdog. Berikut adalah langkah-langkah yang dapat Anda ikuti:
Langkah 1: Instalasi dependensi
Pastikan Anda telah menginstal Flask, python-dotenv, dan watchdog di lingkungan Python Anda. Anda dapat menginstalnya dengan menggunakan pip, dengan menjalankan perintah berikut di terminal atau command prompt:
Copy code
pip install flask python-dotenv watchdog
Langkah 2: Konfigurasi .env file
Buat file .env di direktori proyek Anda dan tambahkan baris berikut:
makefile
Copy code
FLASK_APP=app.py
FLASK_ENV=development
Pastikan untuk mengganti app.py dengan nama file Flask Anda yang sesuai.
Langkah 3: Membuat script run.py
Buat file Python baru (misalnya, run.py) dan buka dengan editor teks favorit Anda. Kemudian, tulis kode berikut:
python
Copy code
import os
from subprocess import Popen
from dotenv import load_dotenv
from watchdog.observers import Observer
from watchdog.events import FileSystemEventHandler
load_dotenv()
class RestartHandler(FileSystemEventHandler):
def on_modified(self, event):
if event.src_path == os.path.abspath('.env'):
print('Restarting server...')
os.kill(os.getpid(), 1)
def start_server():
cmd = ['flask', 'run']
Popen(cmd).wait()
if __name__ == '__main__':
event_handler = RestartHandler()
observer = Observer()
observer.schedule(event_handler, '.', recursive=False)
observer.start()
start_server()
Pada kode di atas, kami mengimpor modul yang diperlukan dan membaca konfigurasi dari file .env menggunakan load_dotenv().
Kemudian, kita mendefinisikan kelas RestartHandler yang akan mendeteksi perubahan pada file .env dan merestart server saat terjadi perubahan.
Fungsi start_server() digunakan untuk menjalankan server Flask menggunakan perintah flask run.
Kemudian, if __name__ == '__main__': digunakan untuk memastikan bahwa script hanya dijalankan saat file run.py dieksekusi langsung, bukan diimpor sebagai modul.
Langkah 4: Menjalankan server
Simpan file run.py dan jalankan perintah berikut di terminal atau command prompt:
arduino
Copy code
python run.py
Server Flask akan mulai berjalan dan akan secara otomatis restart setiap kali file .env berubah.
Ini adalah cara sederhana untuk mengatur server Flask agar dapat restart secara otomatis pada Windows menggunakan python-dotenv dan watchdog. Anda juga dapat melakukan penyesuaian lebih lanjut sesuai kebutuhan Anda, seperti menambahkan log atau konfigurasi tambahan.