Dokerizatsiya LEMP verem segítségével ubuntu c össze
Docker-írása - egy parancssori eszköz annak megállapítására és ellenőrzésére több multi-Docker tartály alkalmazásokhoz. Tény, hogy írása script Python, könnyen telepíthető pip parancs (a parancs, hogy telepítse a Python Software Python csomag adattár). Hála írása futtathat több Docker-tartályok egyetlen paranccsal. Ez lehetővé teszi, hogy hozzon létre egy konténert, mint egy szolgáltatás, amely ideális a fejlesztés és tesztelés, valamint a valós problémákat.
Megértjük, hogy hogyan kell használni a Docker-írása létrehozni LEMP verem. Úgy tartják, hogy LEMP - ez Linux + nginx + MySQL + PHP. Minden alkatrész indul a Docker saját tároló.
- Nginx konténer,
- PHP-konténer,
- A phpMyAdmin konténer
- MySQL / MariaDB tartályba.
- Ubuntu szerver 16,04-64 bit
- Root jogosultságokkal
1. lépés - Állítsa Docker
Ebben a szakaszban meg kell állítani a Docker. Docker elérhető az Ubuntu tárolókban, de először meg kell frissíteni az állam:
Telepítse a legújabb verzióját a Docker az Ubuntu tárolóból.
Fuss Docker és kapcsolja be a startup:
Most Docker szolgáltatás fut. Következő, akkor próbálja futtatni Docker a teszt csapat:
Ennek eredményeként az látható lesz a konzol üdvözlő Docker
2. lépés - Telepítés Docker-írása
Az első szakaszban azt állították Docker. Most már telepíteni Docker-írása. Meg kell python-pip telepíteni a kompozíciót, így kell telepíteni python és python-pip apt:
Miután minden telepítve, telepítse a Docker-létrehozási ezt az utat:
Most ellenőrizze a változat Docker-írása:
Ha Docker-írása van telepítve, a konzol látható lesz jelenteni a verziószámot.
3. lépés - létrehozása és konfigurálása média Docker
Ebben a szakaszban, akkor kell beállítani a környezet Docker-írása. Ahhoz, hogy ezt megtehessük, használjon egy új felhasználó (nem root), így meg kell létrehozni, hogy a felhasználó számára. Új felhasználó hozzáadása a neve «Robotzsaru» (jobb választani a saját felhasználói név):
Ezután adjon hozzá egy új felhasználót a csoporthoz «Docker» és indítsa újra a Docker.
Most a felhasználó «Robotzsaru» Docker nélkül is használható sudo. Következő ki a szuper-felhasználó belép a «Robotzsaru» keresztül su:
Hozzon létre egy új könyvtárat létrehozni írása környezetet.
Ez Docker-írása, szerda összes fájl lesz a Docker tartályba kell helyezni ebben a könyvtárban. Amikor használja a Docker-írása, szükségünk .yml fájl neve „Docker-Compose.yml”. A mappa „LEMP-levélírás”, új könyvtár és „Docker -Compose.yml” file:
- rönk: Termék nginx rönk
- Nginx: Nginx tartalmaz konfigurációs fájlok, mint például a virtuális gépek stb
- Nyilvános: a könyvtár webes fájlok index.html és a PHP
- DB-adatok: adatbázis-könyvtár.
Fájlok létrehozása error.log és access.log jelentkezzen be „naplók” könyvtárban
Hozzon létre egy új konfigurációs fájl, ez lesz a virtuális host konfigurációs nginx a «nginx» mappát:
Használja a következő beállításokat:
Mentsd el a fájlt. Hozzon létre egy új index.html fájlt, és a PHP-fájlt a «nyilvánosság» mappát.
Most már láthatja a könyvtár struktúrát a következő paranccsal:
4. lépés - beállítása doker-compose.yml fájl
Az előző lépésben létrehozott könyvtárak és fájlok szükségesek a konténerek. Ebben a szakaszban meg kell szerkeszteni a fájlt «doker-compose.yml». A fájl «doker-compose.yml» meg kell határozni a szolgáltatás LEMP stack bázis képek minden tartályt, és a hangerő dokkoló.
Kimegyünk a felhasználó «Robotzsaru» fájl szerkesztéséhez «doker-compose.yml»:
Nginx meghatározza a szolgáltatás, amelyhez beilleszteni ezt a konfigurációt:
Ebben a konfigurációban már azonosított:
- nginx: szolgáltatás neve
- kép: használ «BitNami / nginx»
- portok: nyitott tartályban 80-as port, hogy a host port 80
- linkek: kapcsolt a tartály «nginx» és konténer «phpfpm»
- kötetek: montiruev helyi könyvtárakat tartály (log, konfigurációs és virtuális web root)
Mi határozza meg a PHP-FPM szolgáltatás. Beillesztés a következő Nginx konfigurációs blokk:
Itt kérünk:
- phpfpm: meghatározza a szolgáltatás neve
- kép: Adja meg a legjobb kép a szolgáltatás phpfpm módon «BitNami / phpfpm»
- portok: a PHP-FPM TCP-port 9000 és Prokin azt port 9000 a házigazda.
- kötetek: a root mappát «nyilvános» a «myapps» mappát a tartályba.
Meghatározó MySQL szolgáltatás
A harmadik blokkban kell illeszteni konfigurációs adatbázis MariaDB tartály:
Ebben az esetben kérünk:
- MySQL: A szolgáltatás neve
- kép: egy konténer alapján a kép «MariaDB»
- portok: service konténer használ 3306 port csatlakozni a MySQL, mi azt továbbítja port 3306 a házigazda.
- kötetek: db-adatok
- környezet: Meg kell határozni egy környezeti változó «MYSQL_ROOT_PASSWORD», amelyben a root jelszót
-Konfigurálása PHPMyAdmin szolgáltatások
Az utolsó blokk betét konfigurációt alábbi:
Az általunk használt Docker-image «phpmyadmin», egyetemi konténerkikötő 80 és 8080 a gazda, hogy csatlakoztassa a tartályt a tartály MariaDB állítsa újraindítani mindig, meg néhány környezeti változó «PMA_HOST».
5. lépés - Start doker-levélírás
Most már készen áll a doker-levélírás.
Felhívjuk figyelmét, hogy a futás doker-kompozíciót, akkor kell lennie a projekt könyvtárban doker-levél- és biztosan van egy YML fájl összeállításban.
Végre a parancsot az alábbi kezdeni a verem LEMP:
A -d opció lehetővé teszi, hogy fut a háttérben.
Az új konténereket létre, akkor nézd meg őket a következő paranccsal:
Azt kell látni, hogy hozzanak létre a négy konténerek nginx, PHP-FPM, MariaDB és PHPMyAdmin.
6. lépés - Tesztelés
Ellenőrzés használt portokat dokkoló-proxy a gazda
Ezután kiderül, hogy 80-as port engedélyezve van nginx konténerkikötő 3306 for MariaDB konténerkikötő 9000 PHP-FPM, és 8080 a PhpMyAdmin tartályba. Fellebbezés a 80-as porton webböngészővel lehetővé teszi, hogy a gyökér index.html fájlt.
Győződjön meg arról, hogy a PHP-FPM dolgozik fordulva /info.php oldal a szerveren.
A parancssori elérheti a MySQL tartályba.
Akkor sozdayt új adatbázisba:
MariaDB konténer él, és hoztunk létre egy új adatbázist „robocop_db”.
Továbbá, a hozzáférés a phpMyAdmin fordulni 8080 böngészőben.
Egy oldal, hogy belépjen a phpMyAdmin, akkor root-ként a jelszó „Robocop 123”. Akkor automatikusan kapcsolódik a tartályhoz mysql, melyet változóban meghatározott PMA_HOST.
Kész! LEMP-stack futó dokkoló-írása, amely négy konténerek.