Grup 5 - 26 Posada en producció web higiene postural dockeritzada sobre cloud extern

De Wiket
Salta a la navegació Salta a la cerca

Para hacerlo usaremos docker swarm stacks, para aumentar la seguridad utilizaremos docker secrets. Lo primero que hay que hacer es ejecutar los siguientes comandos:

Uno para mysql_password:

echo "micontraseña" | docker secret create mysql_password - 

Y otro para mysql_root_password:

echo "micontraseña" | docker secret create mysql_root_password - 

El fichero queda así:

version: "3.3"
    
services:
  db:
	image: mysql:5.7
	volumes:
  	- db_data:/var/lib/mysql
	restart: always
            secrets:
            - mysql_root_password
            - mysql_password
	environment:
  	MYSQL_ROOT_PASSWORD_FILE: /run/secrets/mysql_root_password
  	MYSQL_DATABASE: wordpress
  	MYSQL_USER: wordpress
  	MYSQL_PASSWORD_FILE: /run/secrets/mysql_password
    
  wordpress:
	depends_on:
  	- db
	image: wordpress:5.7.1
	volumes:
  	- wordpress_data:/var/www/html
	ports:
  	- "80:80"
	restart: always
	 secrets:
            - mysql_password
	environment:
  	WORDPRESS_DB_HOST: db
  	WORDPRESS_DB_USER: wordpress
  	WORDPRESS_DB_PASSWORD_FILE: /run/secrets/mysql_password
  	WORDPRESS_DB_NAME: wordpress

volumes:
  db_data: {}
  wordpress_data: {}

secrets:
  mysql_root_password:
    external: true
  mysql_password:
    external: true

En nuestro caso ya que no usamos la última versión de wordpress debemos modificar el archivo wp-config.php dentro del docker de wordpress añadiendo una línea al fichero.

Para ello tenemos que entrar al docker donde esté el wordpress con el siguiente comando:

docker exec -ti <id-docker> bash

Dentro del fichero tenemos que hacer un apt-get update y apt-get install <cualquier editor de texto> ya que por defecto no hay ningún editor de texto instalado dentro del docker, después al editar el fichero añadimos la siguiente linea después de $table_prefix =

define ( 'WP_AUTO_UPDATE_CORE', false );