Está en la página 1de 6

Instalación de docker

Para instalar docker ejecutamos el siguiente comando:

> apt install docker docker.io docker-compose containerd

Una vez hecho esto ya tendremos docker instalado y podremos comenzar a trabajar con él.

En esta pequeña guía vamos a ver los comandos más relevantes de esta maravillosa
aplicación

docker ps - Sirve para listar los contenedores en ejecución

docker ps -a - Sirve para listar todos los contenedores tanto apagados como encendidos.

docker ps -s - Nos permite mirar el tamaño de los contenedores

docker images - Sirve para listar las imágenes que tenemos descargadas

docker run - Nos permite crear un contenedor (Primer plano)

docker run -d - Nos permite crear un contenedor (segundo plano)

docker start - Nos permite iniciar un contenedor parado (Segundo plano)

docker start -a - Nos permite iniciar en primer plano un contenedor parado.

docker restart - Nos permite reiniciar un contenedor

docker volume create (nombre) - Nos permite crear un volumen

docker network create (nombre) - Nos permite crear una red

docker-compose up - Nos permite levantar contenedores con docker compose (Debemos


estar donde el fichero de docker compose.)

docker attach - Nos permite tomar el control de un contenedor (Al salir se parara el
contenedor)

docker exec - Nos permite ejecutar un comando en el docker

docker image/container rm - Sirve para borrar contenedores o imágenes.

docker network ls - Lista las redes creadas en docker


Joomla-Docker

Una vez vistos los comandos más usados vamos a ver como instalar joomla con
docker-compose.

version: "3.1"
services:
joomla:
image: joomla
restart: always
links:
- joomladb:mysql
ports:
- 80:80
environment:
JOOMLA_DB_HOST: joomladb
JOOMLA_DB_PASSWORD: abc123.

joomladb:
image: mysql
restart: always
environment:
MYSQL_ROOT_PASSWORD: abc123.

Recuerda que durante la instalación, en la configuración de la base de datos debes cambiar


localhost por el nombre que le hayas puesto en el docker compose.
Ahora vamos a ver como hariamos lo mismo pero por comandos:

Primero creamos la red donde se van a alojar los contenedores:

> docker network create joomla

Si queremos también podemos crear un volumen para conseguir persistencia en los datos:

> docker volume create joomladata

Ahora con ambas cosas descargadas vamos a crear los contenedores uno por uno.

Primero debemos crear la base de datos, ya que joomla va ir linkeado a dicha base y si
intentamos crear primero joomla este nos dará un error.

> docker run -d --name joomladatos -v joomladata:/var/lib/mysql


--network joomla -e MYSQL_ROOT_PASSWORD=abc123. mysql

Una vez creada la base de datos procedemos a crear el docker con joomla

> docker run -d --name joomla --network joomla -p 80:80 -e


JOOMLA_DB_HOST=joomladb -e JOOMLA_DB_PASSWORD=abc123. joomla

Listo, ya podremos acceder al navegador e instalar joomla.

Wordpress-Docker

Ahora vamos a instalar wordpress, aunque el procedimiento es prácticamente el mismo.

version: "3.1"
services:
wordpress:
image: wordpress
restart: always
ports:
- 80:80
links:
- database
environment:
WORDPRESS_DB_HOST: database
WORDPRESS_DB_PASSWORD: abc123.
WORDPRESS_DB_NAME: db
WORDPRESS_DB_USER: admin

database:
image: mysql
restart: always
environment:
MYSQL_ROOT_PASSWORD: abc123.
MYSQL_DATABASE: db
MYSQL_USER: admin
MYSQL_PASSWORD: abc123.

Como se puede observar aquí debemos añadir más variables de entorno ya que en
wordpress necesitamos especificar una base de datos creada, cosa que en joomla no.

Ahora vamos a ver cómo sería esto por comandos.

> docker run -d --name database --network wordpress -e


MYSQL_ROOT_PASSWORD=abc123. -e MYSQL_DATABASE=wordpress -e
MYSQL_USER=admin -e MYSQL_PASSWORD=abc123. mysql

Ahora vamos a crear el docker con wordpress.

> docker run -d --name wordpressapp --network wordpress -p 80:80


-e WORDPRESS_DB_HOST=database -e WORDPRESS_DB_USER=admin -e
WORDPRESS_DB_PASSWORD=abc123. -e WORDPRESS_DB_NAME=wordpress
wordpress

Bien, ahora ya sabemos como crear un contenedor de wordpress y de joomla, vamos a ver
como hacer uno de moodle.

Moodle-Docker

Moodle debido a un error desconocido no pude hacerlo, en docker-compose, pero si que se


puede hacer mediante comandos.

primero creamos los volúmenes correspondientes:

> docker volume create mariadb-data

> docker volume create moodle-data

Una vez creados creamos la red pertinente

> docker network create moodle-network

Ahora solo quedaría ejecutar los comandos pertinentes:

> docker run -d --name moodledb -v mariadb-data:/var/lib/mysql


--network moodle-network -e "MYSQL_ROOT_PASSWORD=kamisama123" -e
MYSQL_USER=moodle -e "MYSQL_PASSWORD=kamisama123" -e
"MYSQL_DATABASE=moodle" mariadb
> docker run -d --name moodle -p 80:8080 -p 443:8443 -v
moodle-data:/bitnami/moodle --network moodle-network -e
MOODLE_DATABASE_HOST=moodledb -e MOODLE_DATABASE_USER=moodle -e
MOODLE_DATABASE_PASSWORD=kamisama123 -e
MOODLE_DATABASE_NAME=moodle bitnami/moodle:latest

Una vez hecho esto ya tendríamos moodle instalado.

Phpmyadmin-Docker

Docker-compose de ejemplo de phpmyadmin

version: '3.1'

services:
db:
image: mariadb:10.6
restart: always
environment:
MYSQL_ROOT_PASSWORD: notSecureChangeMe

phpmyadmin:
image: phpmyadmin
restart: always
ports:
- 8080:80
environment:
- PMA_ARBITRARY=1

También podría gustarte