- SSH hozzáféréssel rendelkező szerver
- A szerveren futó Nginx webkiszolgáló (telepítés lefedett)
- Piton
- Ön sudo felhasználó.
A szerver beállítása
Most kezdjük el beállítani azt a kiszolgáló környezetet, amelyet a szerverünk fogadásához fogunk használni. Ez az oktatóanyag az Ubuntu szervert használja. Először frissítse a tárakat, és telepítse a Python3 és a Pip programot.
sudo apt-get frissítéssudo apt-get upgrade -y
sudo apt-get install python3 python3-pip -y
Ezután létre kell hoznunk egy könyvtárat a projekt tárolására.
sudo mkdir / var / www / applicationcd / var / www / application
Könyvtár tulajdonjogának és engedélyeinek módosítása:
sudo chown -R www-data: www-data / var / www / alkalmazás /Ezután telepítse a csomagokat az apt (flask és Gunicorn) használatával
sudo apt-get install python3-flask python3-gunicornMost folytassuk a lombik alkalmazás inicializálását. Kezdje a fő létrehozásával.py-tartja az alkalmazást és a wsgi-t.py, amely elindítja az alkalmazást.
sudo touch main.py wsgi.pySzerkessze a főt.py fájlt, és állítsa be a Lombik alkalmazást és az összes útvonalat. Mivel ez az oktatóanyag nem lombik útmutató, létrehozunk egy alapvető útvonalat és egy hello world üzenetet.
lombikból import Lombikapp = Lombik (__ név__)
@app.útvonal("/")
def home ():
Visszatérés "
Nginx & Gunicorn
"Szerkessze a wsgi-t.py fájlt, és adja hozzá a kódot az alkalmazás importálásához, és futtassa:
a fő import alkalmazásbólha __name__ == "__main__":
kb.futtatás (debug = True)
Végül tesztelje, hogy működik-e, úgy, hogy a lombikot hívja:
$ lombik fut* Környezet: gyártás
FIGYELEM: Ez egy fejlesztői kiszolgáló. Ne használja éles környezetben.
Használjon helyette éles WSGI-kiszolgálót.
* Hibakeresési mód: ki
* Futás a http: // 127 oldalon.0.0.1: 5000 / (a kilépéshez nyomja meg a CTRL + C billentyűkombinációt)
Próbálja meg elérni az alkalmazást a http: // localhost: 5000 címen.
Gunicorn beállítása
Miután az alkalmazásunk sikeresen fut, a Gunicorn segítségével tesztelhetjük az alkalmazást a következő parancsokkal:
$ sudo gunicorn - dolgozók 5 wsgi: kb[2021-03-19 09:19:34 +0000] [14047] [INFO] Fegyverkezelés indítása 20.0.4
[2021-03-19 09:19:34 +0000] [14047] [INFO] Hallgatás itt: http: // 127.0.0.1: 8000 (14047)
[2021-03-19 09:19:34 +0000] [14047] [INFO] Munkavállaló használata: szinkron
[2021-03-19 09:19:34 +0000] [14049] [INFO] Indítómunkás pid-vel: 14049
[2021-03-19 09:19:34 +0000] [14050] [INFO] Indító munkás pid: 14050
[2021-03-19 09:19:34 +0000] [14051] [INFO] Indító munkás pid: 14051
[2021-03-19 09:19:34 +0000] [14052] [INFO] Indító munkás pid: 14052-vel
[2021-03-19 09:19:35 +0000] [14053] [INFO] Indító munkás pid: 14053
A fenti parancsok a lombik alkalmazást a Gunicorn segítségével futtatják a megadott számú dolgozó felhasználásával. Ezután hívjuk a wsgi: app fájlt, amely a futtatni kívánt alkalmazás fájlja és példánya.
Miután az alkalmazás a Gunicorn használatával fut, nyomja meg a CTRL + C billentyűkombinációt a kiszolgáló leállításához és az Nginx beállításához.
Használja az alábbi parancsokat az Nginx telepítéséhez és futtatásához.
sudo apt-get install nginx -ysudo systemctl start nginx
sudo systemctl engedélyezze az nginx-et
A következő lépés az Nginx konfigurációjának szerkesztése a helyekkel engedélyezett könyvtárban, és a kiszolgálóblokk hozzáadása. Vegye figyelembe a következő konfigurációt. Módosítsa az alkalmazást a projekt nevére.
sudo nano / etc / nginx / sites-available / application.konfszerver
hallgat 80;
server_name alkalmazás;
access_log / var / log / nginx / alkalmazás.hozzáférés.napló;
error_log / var / log / nginx / appliation.hiba.napló;
hely /
tartalmazza a proxy_parameket;
proxy_pass http: // unix: / var / www / application / application.zokni;
Folytassa a webhely engedélyezéséhez szükséges hivatkozás létrehozását a webhely engedélyezéséhez.
sudo ln -s / etc / nginx / sites-available / application.conf / etc / nginx / sites-enabled /Most indítsa újra az Nginx szolgáltatást:
sudo systemctl indítsa újra az nginx fájltEzután létre kell hoznunk egy systemd unit fájlt az alkalmazás kiszolgálására.
sudo nano / etc / systemd / system / application.szolgáltatás[Mértékegység]
Leírás = alkalmazás.szolgáltatás - A Gunicorn-szal futtatott lombik alkalmazás.
Után = hálózat.cél
[Szolgáltatás]
Felhasználó = www-adatok
Csoport = www-adatok
WorkingDirectory = / var / www / alkalmazás /
ExecStart = / usr / bin / gunicorn - munkavállalók 3 --bind unix: / var / www / application.zokni wsgi: kb
[Telepítés]
WantedBy = többfelhasználós.cél
Végül mentse el az egységfájlt, majd engedélyezze és töltse be újra a démont.
sudo systemctl indítsa újra az alkalmazást.szolgáltatássudo systemctl daemon-reload
Most elérheti az alkalmazást az IP-cím vagy az nginx konfigurációs fájlban megadott cím használatával. Lehet, hogy hozzá kell adnia a gazdagép fájljához.
göndörít http: // alkalmazásHTTP / 1.1 200 OK
Szerver: Werkzeug / 0.16.1 Python / 3.8.5)
Dátum: péntek, 2021. március 19., 10:00:39 GMT
Tartalom-típus: szöveg / html
Tartalom-hossz: 25
Utolsó módosítás: 2021. március 19., péntek, 09:22:47 GMT
Következtetés
Ez az oktatóanyag áttekintette, hogyan kell beállítani a Python Flask alkalmazást és kiszolgálni az Nginx felett a Gunicorn használatával. Vegye figyelembe az egyedi dokumentációt, ha többet szeretne megtudni az ebben az oktatóanyagban tárgyalt szolgáltatásokról.