Infraestructura LAMP Con Docker Compose - OpenWebinars
Infraestructura LAMP Con Docker Compose - OpenWebinars
Infraestructura LAMP Con Docker Compose - OpenWebinars
https://openwebinars.net/blog/infraestructura-lamp-con-docker-compose/ Página 1 de 18
Infraestructura LAMP con Docker Compose | OpenWebinars 24/04/24, 9:45 p.m.
Para cualquier caso, XAMPP es funcional tanto para GNU/Linux como para
Windows.
https://openwebinars.net/blog/infraestructura-lamp-con-docker-compose/ Página 2 de 18
Infraestructura LAMP con Docker Compose | OpenWebinars 24/04/24, 9:45 p.m.
https://openwebinars.net/blog/infraestructura-lamp-con-docker-compose/ Página 3 de 18
Infraestructura LAMP con Docker Compose | OpenWebinars 24/04/24, 9:45 p.m.
https://openwebinars.net/blog/infraestructura-lamp-con-docker-compose/ Página 4 de 18
Infraestructura LAMP con Docker Compose | OpenWebinars 24/04/24, 9:45 p.m.
https://openwebinars.net/blog/infraestructura-lamp-con-docker-compose/ Página 5 de 18
Infraestructura LAMP con Docker Compose | OpenWebinars 24/04/24, 9:45 p.m.
Servidor web:
https://openwebinars.net/blog/infraestructura-lamp-con-docker-compose/ Página 6 de 18
Infraestructura LAMP con Docker Compose | OpenWebinars 24/04/24, 9:45 p.m.
FROM php:8.0.0-apache
ARG DEBIAN_FRONTEND=noninteractive
RUN docker-php-ext-install mysqli
RUN apt-get update \
&& apt-get install -y libzip-dev \
&& apt-get install -y zlib1g-dev \
&& rm -rf /var/lib/apt/lists/* \
&& docker-php-ext-install zip
https://openwebinars.net/blog/infraestructura-lamp-con-docker-compose/ Página 7 de 18
Infraestructura LAMP con Docker Compose | OpenWebinars 24/04/24, 9:45 p.m.
version: "3.1"
services:
www:
build: .
ports:
- "80:80"
volumes:
- ./www:/var/www/html
links:
- db
networks:
- default
db:
image: mysql:8.0
ports:
- "3306:3306"
command: --default-authentication-plugin=mysql_native_password
environment:
MYSQL_DATABASE: dbname
MYSQL_USER: root
MYSQL_PASSWORD: test
MYSQL_ROOT_PASSWORD: test
volumes:
- ./dump:/docker-entrypoint-initdb.d
- ./conf:/etc/mysql/conf.d
- persistent:/var/lib/mysql
networks:
- default
phpmyadmin:
image: phpmyadmin/phpmyadmin
links:
- db:db
ports:
- 8000:80
environment:
https://openwebinars.net/blog/infraestructura-lamp-con-docker-compose/ Página 8 de 18
Infraestructura LAMP con Docker Compose | OpenWebinars 24/04/24, 9:45 p.m.
MYSQL_USER: root
MYSQL_PASSWORD: test
MYSQL_ROOT_PASSWORD: test
volumes:
persistent:
docker-compose -v
www
Si hay algo que falta por comentar, por supuesto, serán los atributos:
https://openwebinars.net/blog/infraestructura-lamp-con-docker-compose/ Página 9 de 18
Infraestructura LAMP con Docker Compose | OpenWebinars 24/04/24, 9:45 p.m.
www:
build: .
ports:
- "80:80"
volumes:
- ./www:/var/www/html
links:
- db
networks:
- default
db
Este bloque tiene un poco más de atributos que revisar, como los siguientes:
https://openwebinars.net/blog/infraestructura-lamp-con-docker-compose/ Página 10 de 18
Infraestructura LAMP con Docker Compose | OpenWebinars 24/04/24, 9:45 p.m.
db:
image: mysql:8.0
ports:
- "3306:3306"
command: --default-authentication-plugin=mysql_native_password
environment:
MYSQL_DATABASE: dbname
MYSQL_USER: root
MYSQL_PASSWORD: test
MYSQL_ROOT_PASSWORD: test
volumes:
- ./dump:/docker-entrypoint-initdb.d
- ./conf:/etc/mysql/conf.d
- persistent:/var/lib/mysql
networks:
- default
https://openwebinars.net/blog/infraestructura-lamp-con-docker-compose/ Página 11 de 18
Infraestructura LAMP con Docker Compose | OpenWebinars 24/04/24, 9:45 p.m.
phpmyadmin
Este bloque tiene menos atributos y básicos como los que ya hemos
abordado:
phpmyadmin:
image: phpmyadmin/phpmyadmin
links:
- db:db
ports:
https://openwebinars.net/blog/infraestructura-lamp-con-docker-compose/ Página 12 de 18
Infraestructura LAMP con Docker Compose | OpenWebinars 24/04/24, 9:45 p.m.
- 8000:80
environment:
MYSQL_USER: root
MYSQL_PASSWORD: test
MYSQL_ROOT_PASSWORD: test
<html>
<head>
<title>Welcome to LAMP Infrastructure</title>
<meta charset="utf-8">
<link rel="stylesheet" href="http://maxcdn.bootstrapcdn.com/boo
<script src="http://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/js/
</head>
<body>
<div class="container-fluid">
<?php
echo "<h1>¡Hola, OpenWebinars te da la bienvenida!</h1>
echo '</tr>';
}
echo '</table>';
$result->close();
mysqli_close($conn);
?>
</div>
https://openwebinars.net/blog/infraestructura-lamp-con-docker-compose/ Página 14 de 18
Infraestructura LAMP con Docker Compose | OpenWebinars 24/04/24, 9:45 p.m.
</body>
</html>
docker-compose up -d
docker-compose ps
Es notable un mayor detalle del estado como de los puertos expuestos, así
como el protocolo y la dirección local ::1, 127.0.0.1 o localhost por medio
https://openwebinars.net/blog/infraestructura-lamp-con-docker-compose/ Página 15 de 18
Infraestructura LAMP con Docker Compose | OpenWebinars 24/04/24, 9:45 p.m.
Usuario: root
Contraseña: test
Se comprueba que el acceso ha sido correcto. Por otro lado, se verifica que
la base de datos se encuentra bien importada con su respectiva tabla y
datos dentro, listo para ser gestionada.
https://openwebinars.net/blog/infraestructura-lamp-con-docker-compose/ Página 16 de 18
Infraestructura LAMP con Docker Compose | OpenWebinars 24/04/24, 9:45 p.m.
A partir de acá, el proyecto que vayas a trabajar, tendrá que colocarlo dentro
del directorio www/, por ejemplo, si tu proyecto se llama Crashell, lo revisarás
en tu navegador como 127.0.0.1/Crashell.
docker-compose stop
Así de fácil.
Conclusión
Conceptualmente y prácticamente ha sido abordado el tema, de una forma
https://openwebinars.net/blog/infraestructura-lamp-con-docker-compose/ Página 17 de 18
Infraestructura LAMP con Docker Compose | OpenWebinars 24/04/24, 9:45 p.m.
meticulosa para que puedas arrancar con tus proyectos web de una forma
más profesional, dando el siguiente paso con Docker utilizando Docker
Compose y con ello, personalizando tu stack LAMP para tus desarrollos.
https://openwebinars.net/blog/infraestructura-lamp-con-docker-compose/ Página 18 de 18