- crear una carpeta dentro de main con un archivo .conf
src/main/resources/application.conf
- El contenido del archivo debe ser las credenciales
db {
user = "root"
password = "pontificie"
urlMaestro = "jdbc:mariadb://localhost:3307/proyecto_aula"
urlEsclavo = "jdbc:mariadb://localhost:3307/proyecto_aula"
}
Paso 1: Instalar Docker
- Actualiza tu lista de paquetes existente:
sudo apt-get update
- Instala los paquetes necesarios que permiten a apt usar paquetes a través de HTTPS:
sudo apt-get install apt-transport-https ca-certificates curl software-properties-common
- Agrega la clave GPG para el repositorio oficial de Docker a tu sistema:
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
- Agrega el repositorio de Docker a las fuentes de APT:
sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable"
- Actualiza el paquete de la base de datos con los paquetes Docker del repositorio recién agregado:
sudo apt-get update
- Asegúrate de que vas a instalar desde el repositorio de Docker en lugar del repositorio predeterminado de Ubuntu:
apt-cache policy docker-ce
- Finalmente, instala Docker:
sudo apt-get install -y docker-ce
- Docker ahora debería estar instalado, el demonio iniciado y el proceso habilitado para iniciar en el arranque. Verifica que esté funcionando:
sudo systemctl status docker
Paso 2: Instalar MariaDB
- Actualiza tu lista de paquetes existente:
sudo apt-get update
- Luego instala MariaDB con el siguiente comando:
sudo apt-get install mariadb-server
- Asegúrate de que MariaDB esté funcionando con el comando systemctl start:
sudo systemctl start mariadb.service
Paso 3: Instalar Docker Compose
- Descarga la versión más reciente estable de Docker Compose ejecutando este comando:
sudo curl -L "https://github.com/docker/compose/releases/download/1.29.2/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
- A continuación, aplica permisos ejecutables al binario:
sudo chmod +x /usr/local/bin/docker-compose
- Configuración del Maestro:
# Editar el archivo de configuración de MariaDB
sudo nano /etc/mysql/mariadb.conf.d/50-server.cnf
# Establecer el identificador único del servidor (server_id)
server_id = 1
- Configuración del Esclavo:
# Editar el archivo de configuración de MariaDB
sudo nano /etc/mysql/mariadb.conf.d/50-server.cnf
# Establecer el identificador único del servidor (server_id)
server_id = 2
- Creación de un Usuario de Replicación:
# Acceder a MariaDB como usuario root
mysql -u root -p
# Crear un usuario de replicación y asignarle los privilegios necesarios
CREATE USER 'replication_user'@'%' IDENTIFIED BY 'password';
GRANT REPLICATION SLAVE ON *.* TO 'replication_user'@'%';
- Obtención de la Información del Maestro:
# Acceder a MariaDB como usuario root
mysql -u root -p
# Obtener la posición binaria actual y la identificación del maestro
SHOW MASTER STATUS;
- Configuración del Esclavo con la Información del Maestro:
# Acceder a MariaDB como usuario root en el esclavo
mysql -u root -p
# Configurar el esclavo usando la información del maestro (posición binaria y identificación)
CHANGE MASTER TO MASTER_HOST='master_ip', MASTER_USER='replication_user', MASTER_PASSWORD='password', MASTER_LOG_FILE='binlog_file', MASTER_LOG_POS=binlog_position;
- Iniciar la Replicación en el Esclavo:
# Acceder a MariaDB como usuario root en el esclavo
mysql -u root -p
# Iniciar la replicación en el esclavo
START SLAVE;
- Construir la Imagen Docker:
# Construir la imagen Docker
docker build -t myproject .
- Ejecutar el Contenedor Docker:
# Ejecutar el contenedor Docker
docker run -d -p 8080:8080 myproject