Nem válalok érte felelőséget, hogy ugyan úgy működik mindenkinél, és nem fog több időt elhúzni a hibakereséssel, mint ha scp+szövegszerkesztőt használna
###1. pyCharm letöltése Jetbrains oldaláról tölthető le, fontos hogy a Professional változatot töltsétek le (30 napig ingyen használható, vagy hallgatóknak ingyenes), mivel ez tartalmaz Docker futtatási lehetőséget.
###2. Docker letöltése A Docker Linux konténereken futó (virtuális gépekhez hasonló, manapság népszerű) fejlesztői eszköz Docker oldaláról lehet letölteni. Érdemes a toolbox verziót feltenni, ez tartalmazza Windows és OSX rendszerekre a VirtalBox-ot, illetve egy Docker virtuális gépet (a Docker Linux konténerekre épül, más rendszereken ezért kell egy VirtualBox-os Linux)
###3. Docker image letöltése Nyissunk egy Docker CLI-t/terminált, és írjk be a következőt:
docker pull rehobalazs/szl5-soa
A letöltés után elérhető lesz helyi gépünkön a Python2.7-et, és a megfelelő dependenciákat tartalmazó image.
(Az általam készített image sbanal/python-oracle-xe12.1-latest képfájlára épül, annyi kiegészítéssel, hogy a requests modult telepítettem mellé.)
###4. pyCharm beállítás A labor-szkeleton megnyitása után nyissuk meg a projecthez tartozó "Preferences" ablakot, navigáljunk el a "Project: projectnév -> Project Interpreter" menübe, és adjunk hozzá egy új "Remote" interpretert. Válasszuk ki az új ablakban a Docker opciót, image-nek pedig az előbb letöltött rehobalazs/szl5-soa:latest-et. Okézzunk le mindent.
Következő lépésben nyomjunk a "Run gomb" melletti legördülő listában az "Edit configurations" menüpontra.
Állítsuk be a "Working directory"-t /opt/project
-re, majd nyomjunk "Docker container settings"-re. Állítsunk be egy port bindinget: a Docker gép 6000-es portját irányítsuk át pl. a 6001-es portra.
Okézzunk mindent.
###5. Flask futtatás Cseréljük ki a
app.run(debug=True, port=os.getuid() + 10000)
sort
app.run(debug=True, host="0.0.0.0", port=6000)
sorra. Ekkor a helyi gepünkön a Docker VM címén (192.168.99.100 Windows/OSX alatt) a 6001-es (előző lépésben beállított) porton elérhető a Flask szerverünk. Használhatunk pl. Postman-t (Google Chrome kiegészítő)
Windows 10-re van rendes docker, ami a beépített Hyper-V-t használja, így hacsak nincs szükség kifejezetten Virtualbox-ra, akkor érdemesebb ezt feltenni (már csak azért is, mert a Hyper-V és a Virtualbox kölcsönösen ellehetetleníti egymást).