LEMP (Linux, Nginx, MySQL, Php7) wdrażanie obrazu dokera
- 2975
- 19
- Pani Janina Cieśla
O
Zautomatyzowany doker kompilacji LEMP
obraz LinuxConfig/LEMP-Php7
może być używane jako testowanie, a także jako środowisko produkcyjne dla dynamicznych aplikacji PHP. Zawiera Debian GNU/Linux, lekki i jeszcze potężny Nginx Web.
W chwili pisania tego tekstu Debian Linux nie ma PHP 7 w ramach swojego standardowego repozytorium. Z tego powodu PHP 7 został skompilowany z kodu źródłowego podczas kompilacji obrazu Docker kompila-php-debian
skrypt znajdujący się w https: // github.com/linuxconfig/compile-php-debian
.
Ponadto nie wszystkie moduły PHP trzeciej strony są obecnie obsługiwane na PHP 7.
Zastosowanie
W poniższej sekcji opisano rozmieszczenie LinuxConfig/LEMP-Php7
Docker na twoim hoście Docker. Zacznij od utworzenia przykładowej strony internetowej PHP z uchwytem połączenia MySQL. Alternatywnie dodaj phpinfo ();
do miksu, aby wyświetlić aktualną stronę informacji PHP:
Zapisz powyższy kod w indeks.php
Plik i w nowym html
informator. Alternatywnie,html
Katalog może zawierać pożądaną aplikację PHP:
$ mkdir html $ vi html/indeks.php $ ls html/ indeks.php
Na tym etapie jesteśmy gotowi do wdrożenia LinuxConfig/LEMP-Php7
Obraz Docker:
# Docker Run --Name = Lemp -dp -v $ pwd/html:/var/www/html linuxconfig/lemp -php7 8306AB0E404E5E5CE4F17731F88A610F7F8BC939289C0746B8757716355DF0B1A
Wykonując powyższe polecenie, które utworzyliśmy i założyliśmy nowy kontener Docker LEMP
. Jednocześnie zamontowaliśmy również nasz katalog rozwoju strony internetowej html
Jako katalog główny Nginx. Zarówno porty MySQL i Nginx są teraz związane z losowym portem systemu hosta.
Oba porty lokalne mogą być teraz używane do dostępu zarówno do usług MySQL, jak i Nginx:
# Port Docker LEMP 3306/TCP -> 0.0.0.0: 32772 80/TCP -> 0.0.0.0: 32773
Dostęp Nginx
Na tym etapie Nginx Webserver i nasza strona internetowa można uzyskać za pośrednictwem portów podanych przez $ sudo Docker Port Lemp
Komenda. Użyj wiersza poleceń lub przeglądarki, aby przejść do http: // localhost: 32773
URL:
# curl -i http: // localhost: 32773 http/1.1 200 OK Server: Nginx/1.6.2 Data: Sun, 01 stycznia 2017 22:51:58 GMT Content-Type: Text/Html; Charset = UTF-8 Przenoszenie przenoszenia: Połączenie fragmentowe: Keep-Alive X-Moneted-by: PHP/7.1.0 Sukces: Dokonano odpowiedniego połączenia z MySQL! Informacje o hoście: 127.0.0.1 przez TCP/IP
MySQL Access
Dostęp do bazy danych MySQL można uzyskać za pośrednictwem Admin
Użytkownik i domyślne hasło przechodzić
. Jak wcześniej, najpierw musimy uzyskać numer portu systemu hosta połączonego z bazą danych MySQL w obrazie dokera $ sudo Docker Port Lemp
Komenda. Następnie możemy połączyć się z bazą danych:
$ mysql -uadmin -pass -h 127.0.0.1 -p32772 Witamy w MySQL Monitor. Polecenia kończą się; lub \ g. Twój identyfikator połączenia MySQL to 15 wersja serwerowa: 5.5.53-0+Deb8u1 (Debian) Copyright (c) 2000, 2016, Oracle i/lub jej podmioty stowarzyszone. Wszelkie prawa zastrzeżone. Oracle jest zarejestrowanym znakiem towarowym Oracle Corporation i/lub jej podmiotów stowarzyszonych. Inne nazwy mogą być znakami towarowymi ich właścicieli. Typ „Pomoc”; lub „\ h”, aby uzyskać pomoc. Typ „\ c”, aby wyczyścić bieżącą instrukcję wejściową. mysql>
PHP 7
Jak już wspomniano powyżej, php 7 został skompilowany z krwawienia gałęzi php 7. Cała instalacja została wykonana w /usr/local/php-wersja/
informator. Z tego powodu dostępu do wiersza poleceń php
binarny albo uruchamiasz go pełną ścieżką:
# Docker Exec -it LEMP/USR/Local/Php -7.1.0/bin/php -v php 7.1.0 (CLI) (Zbudowany: 1 stycznia 2017 21:33:40) (NTS) Copyright (C) 1997-2016 Grupa PHP Zend Engine V3.1.0-dev, Copyright (c) 1998-2016 Zend Technologies z Zend Opcache V7.1.0, Copyright (c) 1999-2016, autorstwa Zend Technologies
lub obejmować /USR/Local/Php-7.1.0/bin/
jako część twojego ŚCIEŻKA
Zmienna środowiskowa.
Dodatkowe informacje
Uzyskaj listę włączonych modułów PHP 7
# Docker Exec -it LEMP/USR/Local/Php -7.1.0/bin/php -m [moduły php] bcmath bz2 rdzeń kalendarza ctype curl data DBA DOM EXIF FILTINFO Filter Ftp gd getText Hash iconv Intl json libxml mbstring McRypt MySqli Mysqlnd openssl pcNtl pdo pdo_mysql pdo_sqlite infrections session session sessipel Sockets Spl Sqlite3 standard Sysvmsg Sysvsem Sysvshm Tokenizer WDDX XML XMLREADER XMLWRITER ZEND OPCACHE ZIP ZLIB [Moduły Zend] Zend opcache
Dostęp do kontenera
Podczas gdy twój LEMP
Uruchamia się kontener, który można uzyskać do dostępu:
$ sudo docker exec -it lemp/bin/bash root@8306AB0E404E:/#
Zresetuj hasło użytkownika mysql
Poniższe polecenie ustawi nowe hasło 123
dlaAdmin
Użytkownik:
# mysql mysql> Ustaw hasło dla „admin”@'%' = hasło ('123');
Uruchom stos stosu lemp
$ sudo Docker Exec Execor Service Servior Repartart
Powiązane samouczki Linux:
- Rzeczy do zainstalowania na Ubuntu 20.04
- Wprowadzenie do automatyzacji, narzędzi i technik Linuksa
- Ubuntu 20.04: WordPress z instalacją Nginx
- Rzeczy do zrobienia po zainstalowaniu Ubuntu 20.04 Focal Fossa Linux
- Jak zainstalować stos LEMP na Almalinux
- Zainstaluj MySQL na Ubuntu 20.04 LTS Linux
- Zagnieżdżone pętle w skryptach Bash
- Jak zainstalować MySQL na Almalinux
- Rzeczy do zrobienia po zainstalowaniu Ubuntu 22.04 JAMMY Jellyfish…
- Lista najlepszych narzędzi Kali Linux do testowania penetracji i…
- « Jak zainstalować bramę Kannel SMS na Debian Linux dla Nagios SMS Powiadomienia
- Jak zainstalować oprogramowanie Kodi Media na Ubuntu 16.04 Linux Desktop »