LEMP (Linux, Nginx, MySQL, PHP7) Despliegue de imagen de pila Docker
- 3675
- 1078
- Adriana Tórrez
Acerca de
El Docker de compilación automatizado Lemplo
imagen LinuxConfig/LEMP-PHP7
se puede utilizar como prueba y también como entorno de producción para aplicaciones PHP dinámicas. Se compone de Debian GNU/Linux, Ligero y poderoso servidor web Nginx, Sistema de Gestión de Base de Datos Relacional de MySQL y lenguaje de secuencias de comandos PHP.
Al momento de escribir este artículo, Debian Linux no viene con PHP 7 como parte de un repositorio estándar. Por esta razón, PHP 7 se compiló del código fuente durante la compilación de la imagen de Docker utilizando compilar-php-debio
guión ubicado en https: // github.com/linuxconfig/compile-php-debian
.
Además, no todos los módulos PHP de terceros son compatibles actualmente en PHP 7.
Despliegue
La siguiente sección describe la implementación de LinuxConfig/LEMP-PHP7
Docker en su anfitrión de Docker. Deje 'comenzar creando un sitio web de PHP de muestra con un mango de conexión MySQL. Alternativamente agregar phpinfo ();
en la mezcla para mostrar la página de información de PHP actual:
Guardar el código anterior en índice.php
archivo y dentro de un nuevo html
directorio. Alternativamente,html
El directorio puede contener la aplicación PHP deseada:
$ mkdir html $ vi html/índice.PHP $ LS HTML/ índice.php
En esta etapa estamos listos para implementar LinuxConfig/LEMP-PHP7
Imagen de Docker:
# Docker Run - -Name = LEMP -DP -V $ pwd/html:/var/www/html linuxconfig/lemp -php7 8306ab0e404e5e5e4f17731f88a610f7f8bc939289c0746b8757163555df0b1a
Al ejecutar el comando anterior, hemos creado y iniciado un nuevo contenedor Docker lemplo
. Al mismo tiempo, también hemos montado nuestro directorio de desarrollo de sitios web html
Como directorio raíz de Nginx. Ambos puertos MySQL y NGINX ahora están vinculados al puerto aleatorio de un sistema de host.
Ambos puertos locales ahora se pueden usar para acceder a los servicios MySQL y NGINX:
# Docker Port Lemp 3306/TCP -> 0.0.0.0: 32772 80/tcp -> 0.0.0.0: 32773
Acceso a Nginx
En esta etapa, se puede acceder a Nginx Webserver y nuestro sitio web a través de puertos dados por $ sudo Docker Port Lemp
dominio. Use la línea de comandos o su navegador para navegar a http: // localhost: 32773
URL:
# curl -i http: // localhost: 32773 http/1.1 200 OK Servidor: Nginx/1.6.2 Fecha: Sol, 01 de enero de 2017 22:51:58 Tipo de contenido GMT: texto/html; Charset = UTF-8 Econado de transferencia: Conexión fortificada: Keep-Alive X-Powered-by: PHP/7.1.0 éxito: se realizó una conexión adecuada a MySQL! Información del host: 127.0.0.1 a través de TCP/IP
Acceso mysql
Se puede acceder a la base de datos MySQL a través de administración
Usuario y contraseña predeterminada aprobar
. Como anteriormente, primero debemos obtener el número de puerto del sistema host vinculado a la base de datos MySQL dentro de una imagen de Docker utilizando $ sudo Docker Port Lemp
dominio. A continuación, podemos conectarnos a la base de datos:
$ mysql -uadmin -ppass -h 127.0.0.1 -p32772 Bienvenido al monitor MySQL. Los comandos terminan con; o \ g. Su ID de conexión MySQL es 15 Versión del servidor: 5.5.53-0+DEB8U1 (Debian) Copyright (c) 2000, 2016, Oracle y/o sus afiliados. Reservados todos los derechos. Oracle es una marca registrada de Oracle Corporation y/o sus afiliados. Otros nombres pueden ser marcas comerciales de sus respectivos propietarios. Escriba 'ayuda;' o '\ h' por ayuda. Escriba '\ c' para borrar la instrucción de entrada actual. mysql>
Php 7
Como ya se mencionó anteriormente, Php 7 se compiló de una rama PHP 7 de borde hemorrágico. Toda la instalación se realizó en /usr/local/php-version/
directorio. Desde este motivo para acceder a la línea de comando php
Binario, o lo ejecuta con un camino completo:
# docker exec -it lemp/usr/local/php -7.1.0/bin/php -v php 7.1.0 (CLI) (construido: 1 de enero de 2017 21:33:40) (NTS) Copyright (c) 1997-2016 El motor PHP Group Zend Engine V3.1.0-DEV, Copyright (c) 1998-2016 Zend Technologies con Zend Opcache V7.1.0, Copyright (c) 1999-2016, por Zend Technologies
o incluir /usr/local/php-7.1.0/bin/
Como parte de tu CAMINO
variable ambiental.
información adicional
Obtenga una lista de módulos PHP 7 habilitados
# docker exec -it lemp/usr/local/php -7.1.0/bin/php -m [PHP Modules] bcmath bz2 calendar Core ctype curl date dba dom exif fileinfo filter ftp gd gettext hash iconv intl json libxml mbstring mcrypt mysqli mysqlnd openssl pcntl pcre PDO pdo_mysql pdo_sqlite Phar posix pspell readline Reflection session shmop SimpleXML soap SOCKETS SPL SQLITE3 SYSVMSG SYSVMSG SYSVSEM SYSVSHM Tokenizer WDDX XML XMLREADER XMLWRITOR ZEND OPCACHE ZIP ZLIB [Módulos Zend] Zend Opcache
Acceso al contenedor
Mientras que tu lemplo
El contenedor se está ejecutando, puede ser acceso por:
$ sudo Docker Exec -it Lemp/bin/Bash Root@8306ab0e404e:/#
Restablecer la contraseña de usuario de MySQL
El siguiente comando establecerá una nueva contraseña 123
Para eladministración
Usuario:
# MySQL MySQL> Establecer contraseña para 'admin'@'%' = contraseña ('123');
Reiniciar la pila de lemp
$ sudo Docker ejecutor ejecutor de servicio LEMP reiniciar
Tutoriales de Linux relacionados:
- Cosas para instalar en Ubuntu 20.04
- Una introducción a la automatización, herramientas y técnicas de Linux
- Ubuntu 20.04: WordPress con instalación de Nginx
- Cosas que hacer después de instalar Ubuntu 20.04 fossa focal Linux
- Cómo instalar Lemp Stack en Almalinux
- Instale MySQL en Ubuntu 20.04 LTS Linux
- Bucles anidados en guiones Bash
- Cómo instalar MySQL en Almalinux
- Cosas que hacer después de instalar Ubuntu 22.04 Jellyfish de Jammy ..
- Lista de las mejores herramientas de Kali Linux para pruebas de penetración y ..
- « Cómo instalar Kannel SMS Gateway en Debian Linux para Nagios SMS Notificaciones
- Cómo instalar Kodi Media Software en Ubuntu 16.04 Desktop de Linux »