LEMP (Linux, Nginx, MySQL, PHP7) Menumpuk Penyebaran Gambar Docker

LEMP (Linux, Nginx, MySQL, PHP7) Menumpuk Penyebaran Gambar Docker

Tentang

Docker build otomatis Lemp gambar LinuxConfig/LEMP-PHP7 dapat digunakan sebagai pengujian dan juga sebagai lingkungan produksi untuk aplikasi PHP yang dinamis. Ini terdiri dari GNU/Linux Debian, server web nginx yang ringan namun kuat, sistem manajemen database relasional MySQL dan bahasa skrip PHP.

Pada saat penulisan, Debian Linux tidak datang dengan PHP 7 sebagai bagian dari repositori standarnya. Dari alasan ini PHP 7 dikompilasi dari kode sumber selama pembuatan gambar Docker menggunakan kompilasi-php-debian skrip terletak di https: // github.com/linuxconfig/compile-php-debian.

Selanjutnya, tidak semua modul PHP pihak ke-3 saat ini didukung pada PHP 7.

Penyebaran

Bagian berikut menjelaskan penyebaran LinuxConfig/LEMP-PHP7 Docker di Host Docker Anda. Biarkan 'Mulailah dengan Membuat Situs Web Contoh PHP dengan pegangan koneksi MySQL. Alternatifnya tambahkan phpinfo (); ke dalam campuran untuk menampilkan halaman informasi PHP saat ini:

 

Simpan kode di atas ke indeks.php file dan di dalam yang baru html direktori. kalau tidak,html Direktori dapat berisi aplikasi PHP yang Anda inginkan:

$ mkdir html $ vi html/index.php $ ls html/ index.php 

Pada tahap ini kami siap untuk digunakan LinuxConfig/LEMP-PHP7 Gambar Docker:

# Docker Run - -name = LEMP -DP -V $ PWD/HTML:/VAR/WWW/HTML LinuxConfig/LEMP -PHP7 8306AB0E404E5E5CE4F17731F887110F7F8BC939289C0746B8771110F7F8BC939289C0746B87771110F7F8BC939289C0746674677777F7F8BC939289C0746 

Dengan mengeksekusi perintah di atas yang telah kami buat dan memulai wadah Docker baru Lemp. Pada saat yang sama kami juga telah memasang direktori pengembangan situs web kami html Sebagai direktori root nginx. Keduanya, port mysql dan nginx sekarang terikat ke port acak sistem host.

Kedua port lokal sekarang dapat digunakan untuk mengakses layanan MySQL dan Nginx:

# Docker Port Lemp 3306/TCP -> 0.0.0.0: 32772 80/TCP -> 0.0.0.0: 32773 

Akses nginx

Pada tahap ini Nginx WebServer dan situs web kami dapat diakses melalui port yang diberikan oleh $ sudo docker port lemp memerintah. Gunakan baris perintah atau browser Anda untuk menavigasi http: // localhost: 32773 URL:

# curl -i http: // localhost: 32773 http/1.1 200 OK Server: nginx/1.6.2 Tanggal: Sun, 01 Jan 2017 22:51:58 GMT Content-Type: Teks/html; Charset = UTF-8 Transfer-Encoding: Koneksi chunked: Keep-seive X-powered-by: PHP/7.1.0 Sukses: Koneksi yang tepat ke MySQL dibuat! Informasi Host: 127.0.0.1 melalui TCP/IP 

Akses mysql

Database MySQL dapat diakses melalui admin kata sandi pengguna dan default lulus. Seperti sebelumnya, pertama -tama kita perlu mendapatkan nomor port sistem host yang ditautkan ke database MySQL dalam gambar Docker dengan menggunakan $ sudo docker port lemp memerintah. Selanjutnya, kita dapat terhubung ke database:

$ mysql -uadmin -ppass -h 127.0.0.1 -P32772 Selamat datang di Monitor MySQL. Perintah diakhiri dengan; atau \ g. ID Koneksi MySQL Anda adalah 15 Versi Server: 5.5.53-0+deb8u1 (Debian) Hak Cipta (C) 2000, 2016, Oracle dan/atau afiliasinya. Seluruh hak cipta. Oracle adalah merek dagang terdaftar dari Oracle Corporation dan/atau afiliasinya. Nama lain mungkin menjadi merek dagang dari pemiliknya masing -masing. Ketik 'bantuan;' atau '\ h' untuk bantuan. Ketik '\ c' untuk menghapus pernyataan input saat ini. mysql> 

PHP 7

Seperti yang telah disebutkan di atas, PHP 7 dikompilasi dari cabang tepi PHP 7 yang berdarah. Seluruh instalasi dilakukan /USR/LOCAL/PHP-Versi/ direktori. Dari alasan ini untuk mengakses baris perintah php Biner Anda menjalankannya dengan jalur lengkap:

# Docker Exec -It Lemp/USR/LOCAL/PHP -7.1.0/bin/php -v php 7.1.0 (CLI) (Dibangun: 1 Jan 2017 21:33:40) (NTS) Hak Cipta (C) 1997-2016 Mesin Zend Grup PHP V3.1.0-Dev, Hak Cipta (C) 1998-2016 Teknologi Zend dengan Zend Opcache V7.1.0, Hak Cipta (C) 1999-2016, oleh Zend Technologies 

atau termasuk /usr/lokal/php-7.1.0/bin/ Sebagai bagian dari Anda JALUR variabel lingkungan.

informasi tambahan

Dapatkan daftar modul PHP 7 yang diaktifkan

# Docker Exec -It Lemp/USR/LOCAL/PHP -7.1.0/bin/php -m [modul php] bcmath bz2 kalender inti ctype kurl tanggal dba dom exif fileinfo filter ftp gd getText hash iconv intl json libxml mbstring mcypt mysqli mysqlnd openssl libxml pco -pdo pdo pdo pdo pdo pdo pdo pdo pdo pdo pdo pdo pdo pdo pdo pdo pdo pdo pdo pdo pdo Pdo pcoyplIx mysqli soket spl sqlite3 standar sysvmsg sysvsem sysvshm tokenizer wddx xml xmlreader xmlwriter zend opcache zip zlib [modul zend] zend opcache 

Akses kontainer

Saat Anda Lemp Container menjalankannya dapat diakses oleh:

$ sudo docker exec -it lemp/bin/bash root@8306ab0e404e:/# 

Reset Kata Sandi Pengguna MySQL

Perintah di bawah ini akan mengatur kata sandi baru 123Untukadmin pengguna :

# mysql mysql> atur kata sandi untuk 'admin'@'%' = kata sandi ('123'); 

Restart Lemp Stack

$ sudo docker eksekutif layanan supervisor layanan lemp restart 

Tutorial Linux Terkait:

  • Hal -hal yang harus diinstal pada ubuntu 20.04
  • Pengantar Otomatisasi Linux, Alat dan Teknik
  • Ubuntu 20.04: WordPress dengan instalasi nginx
  • Hal -hal yang harus dilakukan setelah menginstal ubuntu 20.04 FOSSA FOSSA Linux
  • Cara Menginstal Tumpukan Lemp di Almalinux
  • Instal MySQL di Ubuntu 20.04 LTS Linux
  • Loop bersarang dalam skrip bash
  • Cara menginstal mysql di almalinux
  • Hal -hal yang harus dilakukan setelah menginstal ubuntu 22.04 Jammy Jellyfish…
  • Daftar Alat Linux Kali Terbaik untuk Pengujian Penetrasi dan ..