Herramientas
Herramientas necesarias para usar Docker
Para levantar los contenedores deberemos tener instalado en nuestra máquina:
Docker
docker-compose
Docker: Es la propia herramienta de Docker que se encarga de todo.
docker-compose: Es una herramienta que nos ayuda a levantar los contenedores y es la que usaremos para ello.
docker-compose
Como comentamos anteriormente docker nos proporcionará los servicios en distintos contenedores. Con docker-compose podremos levantar todos los contenedores con un simple comando:
docker-compose up -d
Será asà de simple levantar un entorno de desarrollo.
Docker-compose se ejecuta con un comando sobre el archivo llamado docker-compose.yml
Aunque no es relevante para el desarrollador, es un archivo donde se configuran los contenedores. Tiene el siguiente aspecto...
version: '3'
services:
db:
container_name: my-app-db
image: mariadb
volumes:
- "$PWD/data:/var/lib/mysql"
environment:
MYSQL_ROOT_PASSWORD: "${MYSQL_ROOT_PASSWORD}"
MYSQL_DATABASE: "${MYSQL_DATABASE}"
MYSQL_USER: "${MYSQL_USER}"
MYSQL_PASSWORD: "${MYSQL_PASSWORD}"
ports:
- "${PORT_DB}:3306"
expose:
- "${PORT_DB}"
networks:
- net_my-app
restart: on-failure
phpmyadminmy-app:
container_name: my-app-phpmyadmin
image: phpmyadmin/phpmyadmin
environment:
MYSQL_ROOT_PASSWORD: "${MYSQL_ROOT_PASSWORD}"
MYSQL_USER: "${MYSQL_USER}"
MYSQL_PASSWOR: "${MYSQL_PASSWORD}"
PMA_ARBITRARY: 1
PMA_HOST: db
networks:
- net_my-app
depends_on:
- db
ports:
- "${PORT_PHPMYADMIN}:80"
volumes:
- ./sessions:/sessions/
links:
- db
phpmy-app:
build: ./php/
volumes:
- "$PWD/apache:/etc/apache2/sites-available/"
- "$PWD/my-app/:/var/www/html"
expose:
- ${PORT_SYMFONY}
ports:
- ${PORT_SYMFONY}:80
networks:
- net_my-app
networks:
net_my-app:
Sin entrar en mucho detalle, se puede ver como hay 3 servicios, llamados: db, phpmyadmin y phpmy-app
Dockers UI
Existen varios UI para gestionar los contendores de forma visual, he probado Portainer y parece muy intuitivo...

Para instalarlo usa el comando ...
docker run -d -p 9000:9000 -v /var/run/docker.sock:/var/run/docker.sock portainer/portainer
Podrás acceder a el mediante ... http://localhost:9000
Existen otros puedes encontrar el que más te guste en esta url...
Last updated
Was this helpful?