Luego de de esta prolongada recopilación de datos dimos con la solución esta preocupación que presentan algunos de nuestros usuarios. Te compartimos la solución y nuestro deseo es resultarte de mucha ayuda.
Solución:
Gracias a @David Maze, encontré el problema. Agregué las directivas de escucha en la parte superior de mi configuración de Apache y cambié los números de puerto.
docker-compose.yml
version: '3.2'
services:
php-apache:
build:
context: ./apache-php
ports:
- 80:80
- 8060:8060
volumes:
- ./DocumentRoot:/var/www/html:z
Configuración de apache
Listen 80
Listen 8060
DocumentRoot /var/www/html/api
ErrorLog $APACHE_LOG_DIR/error.log
CustomLog $APACHE_LOG_DIR/access.log combined
ServerAdmin [email protected]
DocumentRoot /var/www/html
ErrorLog $APACHE_LOG_DIR/error.log
CustomLog $APACHE_LOG_DIR/access.log combined
Estructura de directorios
apache-php
¬ sqlite3_ext
¬ 000-default.conf (Apache config)
¬ Dockerfile
¬ php.ini
docker-compose.yml
Dockerfile
FROM php:7.2.1-apache
RUN docker-php-ext-install pdo pdo_mysql mysqli
# Enable apache rewrite
COPY 000-default.conf /etc/apache2/sites-available/000-default.conf
#Install spatialite and create symlink for libproj.so.0
COPY sqlite3_ext /etc/sqlite3_ext
RUN apt-get update && apt-get -y install gdal-bin
RUN ln -s /usr/lib/x86_64-linux-gnu/libproj.so.12 /usr/lib/x86_64-linux-gnu/libproj.so.0
#Install gd library for images
RUN apt-get install libpng-dev libfreetype6-dev libjpeg62-turbo-dev -qy
&& apt-get clean
&& rm -rf /var/lib/apt/lists/* /tmp/* /var/tmp/*
RUN docker-php-ext-configure gd --with-freetype-dir=/usr/include/ --with-jpeg-dir=/usr/include/
&& docker-php-ext-install gd
#Copy php ini
COPY php.ini /usr/local/etc/php/php.ini
RUN a2enmod rewrite
Aquí hay una solución, paso a paso:
Paso 1:
Agregar/Actualizar extra_hosts
, hostname
, domainname
y en docker-compose.yml
y en mi caso lo estoy ejecutando sobre PORT 80
.
Así es mi php
el servicio parece en docker-compose.yml
expediente.
php:
build: .
image: php:7.2-apache
working_dir: /var/www/html
volumes:
- ./:/var/www/html
- ./php.ini:/usr/local/etc/php/php.ini
extra_hosts:
- "lara.local:127.0.0.1"
hostname: lara.local
domainname: local
ports:
- 80:80
environment:
- "DB_PORT=3306"
- "DB_HOST=database"
Paso 2:
Actualiza tu hosts
archivo con la siguiente línea:
127.0.0.1 lara.local
Paso 3: Pruebe nuestro nombre de host ejecutando este comando
docker exec -it hostname
Si ves salida lara.local
¡Entonces, ya puedes irte!
Paso 4: Reconstruir aplicación
docker-compose build
Paso 5: Inicie los servicios y verifique que la aplicación se esté ejecutando en http://lara.local
docker-compose up -d
Nota: Si está utilizando un puerto diferente, por ejemplo 8080
entonces seria http://lara.local:8080
PD. Si desea cambiar el
DocumentRoot
luego ssh a su contenedor y
cd /etc/apache2/sites-available/000-default.conf
y cambie la ruta de DocumentRoot según sus necesidades.
Sección de Reseñas y Valoraciones
Te invitamos a sustentar nuestra función mostrando un comentario o puntuándolo te estamos eternamente agradecidos.