PHP
Despliegue de Docker
Buscar..
Introducción
Docker es una solución de contenedor muy popular que se usa ampliamente para implementar código en entornos de producción. Facilita la administración y escalado de aplicaciones web y microservicios.
Observaciones
Este documento asume que la ventana acoplable está instalada y el daemon en ejecución. Puede consultar la instalación de Docker para verificar cómo instalar la misma.
Obtener imagen docker para php
Para implementar la aplicación en la ventana acoplable, primero necesitamos obtener la imagen del registro.
docker pull php
Esto te dará la última versión de la imagen del repositorio oficial de php . En términos generales, PHP
generalmente se usa para implementar aplicaciones web, por lo que necesitamos un servidor http para ir con la imagen. php:7.0-apache
imagen de php:7.0-apache
viene preinstalada con apache para que la implementación sea sencilla.
Escritura dockerfile
Dockerfile
se utiliza para configurar la imagen personalizada que construiremos con los códigos de la aplicación web. Cree un nuevo archivo Dockerfile
en la carpeta raíz del proyecto y luego coloque los siguientes contenidos en el mismo
FROM php:7.0-apache
COPY /etc/php/php.ini /usr/local/etc/php/
COPY . /var/www/html/
EXPOSE 80
La primera línea es bastante sencilla y se usa para describir qué imagen se debe usar para construir una nueva imagen. Lo mismo podría cambiarse a cualquier otra versión específica de PHP desde el registro.
La segunda línea es simplemente subir el archivo php.ini
a nuestra imagen. Siempre puede cambiar ese archivo a otra ubicación de archivo personalizado.
La tercera línea copiaría los códigos en el directorio actual a /var/www/html
que es nuestro webroot. Recuerda /var/www/html
dentro de la imagen.
La última línea simplemente abriría el puerto 80 dentro del contenedor de la ventana acoplable.
Ignorando archivos
En algunos casos, es posible que haya algunos archivos que no desea en el servidor, como la configuración del entorno, etc. Supongamos que tenemos nuestro entorno en .env
. Ahora, para ignorar este archivo, simplemente podemos agregarlo a .dockerignore
en la carpeta raíz de nuestro código base.
Imagen del edificio
Crear una imagen no es algo específico de php
, pero para construir la imagen que describimos anteriormente, simplemente podemos usar
docker build -t <Image name> .
Una vez que la imagen está construida, puedes verificar la misma usando
docker images
Lo que enumera todas las imágenes instaladas en su sistema.
Iniciar contenedor de aplicaciones
Una vez que tengamos una imagen lista, podemos comenzar y servir la misma. Para crear un container
partir de la imagen, use
docker run -p 80:80 -d <Image name>
En el comando anterior, -p 80:80
reenvía el puerto 80
de su servidor al puerto 80
del contenedor. La bandera -d
indica que el contenedor debe ejecutarse como trabajo de fondo. El final especifica qué imagen debe usarse para construir el contenedor.
Contenedor de control
Para verificar los contenedores en funcionamiento, simplemente use
docker ps
Esto mostrará una lista de todos los contenedores que se ejecutan en el demonio docker.
Registros de aplicación
Los registros son muy importantes para depurar la aplicación. Para comprobar su uso.
docker logs <Container id>