Actualizo el Dockerfile php-fpm, modifico el README y añado los ficheros de plugins y themes en la nueva carpeta wordpress_files

This commit is contained in:
root 2020-05-22 01:37:19 +00:00
parent f3f088f8f6
commit 1351889ff5
3 changed files with 72 additions and 70 deletions

View File

@ -15,7 +15,41 @@ Y dos volumenes:
## WP-CONFIG : Configuración de Wordpress ## ## WP-CONFIG : Configuración de Wordpress ##
Editar correctamente los datos de la base de datos en el wp-config.php situado en **php-fmp** Los ficheros de configuración de Wordpress los podemos encontrar en **php-fpm/wordpress_files**
Editar correctamente los datos de la base de datos en el **wp-config.php**
En la carpeta **wordpress_files** también están los plugins y themes seleccionados para ser usados en la nube.
## BUILDEAR LAS IMAGENES ##
```
$ docker-compose build
```
Esto construye las tres imágenes y los volumenes
## INICIAR LOS CONTENEDORES ##
```
$ docker-compose up -d
```
Y revisamos que todo esté funcionando correctamente
```
$ docker ps
```
Con esto iniciamos los tres containers y ya podemos trabajar sobre sus volumenes.
Para finalizar, deberemos reconfigurar el proxypass de **labo03** para que apunte a **txirbilenea** al puerto **8085** que es el puerto expuesto en el docker-compose para el acceso al NGINX.
## MIGRAR ARCHIVOS DE LA VIEJA INSTALACION ##
Copiar la carpeta **blogs.dir** y **uploads** al volumen **data** del contenedor **php-fpm**
El volumen **data** lo puedes encontrar en **/var/lib/docker/volumes/wordpress_data/_data/**
## CREACIÓN DE BASE DE DATOS ## ## CREACIÓN DE BASE DE DATOS ##
@ -39,14 +73,27 @@ Con los datos de wp-config.php debermos crear la base de datos en nuestro contai
$ exit $ exit
``` ```
## MIGRACIÓN ## ## MIGRACIÓN DE LA VIEJA BASE DE DATOS##
Deberemos copiar los archivos de wp-content (plugins/themes/files) de la vieja instalación al nuevo volumen.
Deberemos hacer un **mysqldump** de la base de datos vieja e importarlos en nuestro nuevo container de base de datos **wordpress** a través de un **docker exec -it sd_wp_db mysql -u root -p wordpress < database_vieja.sql** Deberemos hacer un **mysqldump** de la base de datos vieja e importarlos en nuestro nuevo container de base de datos **wordpress** a través de:
Para finalizar, deberemos reconfigurar el proxypass de **labo03** para que apunte a **txirbilenea** al puerto **8085** que es el puerto expuesto en el docker-compose para el acceso al NGINX. ```
$ docker exec -it sd_wp_db mysql -u root -p wordpress < database_vieja.sql
```
## TODO ## ## WP-CLI ##
Configurar el **wp-cli** en la maquina de **php-fpm** para automatizar la actualización de plugins/themes/core de Wordpress. **WP-cli** es una herramienta para automatizar tareas en **Wordpress**
Está instalado en el container **php-fpm**
Para ejecutarlo:
```
$ docker exec -it sd_wp_php runuser -u wordpress -- /sindominio/wp core update --all --path="/sindominio/wordpress/"
$ docker exec -it sd_wp_php runuser -u wordpress -- /sindominio/wp plugin update --all --path="/sindominio/wordpress/"
$ docker exec -it sd_wp_php runuser -u wordpress -- /sindominio/wp theme update --all --path="/sindominio/wordpress/"
```
Habría que añadrilo al cron.daily

View File

@ -3,10 +3,10 @@ FROM registry.sindominio.net/debian
RUN apt-get update && \ RUN apt-get update && \
apt-get -qy install \ apt-get -qy install \
php-fpm php-mysql php-curl php-gd php-mbstring php-xml php-xmlrpc php-soap php-intl php-zip \ php-fpm php-mysql php-curl php-gd php-mbstring php-xml php-xmlrpc php-soap php-intl php-zip \
ghostscript wget curl openssl && \ ghostscript wget sudo curl openssl && \
apt-get clean apt-get clean
RUN useradd -lMs /sbin/nologin wordpress RUN useradd wordpress
COPY wordpress.conf /etc/php/7.3/fpm/pool.d/www.conf COPY wordpress.conf /etc/php/7.3/fpm/pool.d/www.conf
@ -15,16 +15,29 @@ RUN mkdir logs
WORKDIR sindominio WORKDIR sindominio
RUN chown wordpress:wordpress /sindominio
USER wordpress
RUN wget -O wordpress.tar.gz "https://wordpress.org/latest.tar.gz" RUN wget -O wordpress.tar.gz "https://wordpress.org/latest.tar.gz"
RUN tar -xzf wordpress.tar.gz RUN tar -xzf wordpress.tar.gz
RUN rm wordpress.tar.gz RUN rm wordpress.tar.gz
ADD wp-config.php /sindominio/wordpress/wp-config.php ADD wordpress_files/wp-config.php /sindominio/wordpress/wp-config.php
RUN chown -R wordpress:wordpress /sindominio/wordpress ADD wordpress_files/themes/ /sindominio/wordpress/wp-content/themes/
ADD wordpress_files/plugins/ /sindominio/wordpress/wp-content/plugins/
ADD wordpress_files/sunrise.php /sindominio/wordpress/wp-content/sunrise.php
#RUN chown -R wordpress:wordpress /sindominio/wordpress
RUN curl -O https://raw.githubusercontent.com/wp-cli/builds/gh-pages/phar/wp-cli.phar RUN curl -O https://raw.githubusercontent.com/wp-cli/builds/gh-pages/phar/wp-cli.phar
RUN chmod +x wp-cli.phar RUN chmod +x wp-cli.phar
RUN mv wp-cli.phar /usr/local/bin/wp RUN mv wp-cli.phar wp
## ESTO EN UN CRON DAILY
#RUN ./wp theme update --all --path="/sindominio/wordpress/"
#RUN ./wp plugin update --all --path="/sindominio/wordpress/"
#RUN ./wp core update --all --path="/sindominio/wordpress/"
USER root
EXPOSE 9000 EXPOSE 9000
VOLUME /sindominio/ VOLUME /sindominio/

View File

@ -1,58 +0,0 @@
<?php
define('DB_NAME', 'wordpress');
define('DB_USER', 'wordpress');
define('DB_PASSWORD', 'wordpress');
define('DB_HOST', 'db');
define('DB_CHARSET', 'utf8');
define('DB_COLLATE', '');
define('AUTH_KEY', '#3xrpBKOpg(!!.@j+-]JX;OScI+Hb97P[V)u]KSF)gE)-i7^}p|w[@=h8@^8ecy[');
define('SECURE_AUTH_KEY', '_F7=cxiB@~~sQT]g0Bo/7zrN;+}T*g4w?!v3qK{mz|yIN|esAOyFX83`.!kZ#7KR');
define('LOGGED_IN_KEY', '`{{OPY/vJBJuPjk]9Thm.Yu51b?c$[*{Syv!gxd/a|sAl-K*kx|Tx!^-a&q)lzRe');
define('NONCE_KEY', '|,C-M-C6VBO&G8T6Nb5/$&.apBs-|Q6,*/@dFA6PQ~}O07D .=X-x!Dw,V3_F!pV');
define('AUTH_SALT', 'SwKBu2e&`/zg)o 6[ao(qwW:(I6)N-7PeO/MTdf/F9&l,Ajw&I+ $1vs|/)ZY~mW');
define('SECURE_AUTH_SALT', '+dKtXo]AId;,+[E[=6;R#84,&|!J?^|_1u8cocyI0c6wivPO|;-bQ>,|E7)C(:8v');
define('LOGGED_IN_SALT', 'x&2H?)-BUUQlVmOF0$7Mdi]l@!l$sei=mHPSAwO)|El- :?=J-_hP$B^2(+jN]^i');
define('NONCE_SALT', 'pt|N-?XvTdoRvA)cO`WC|lao[&zLVE^C4)V6?@bnv]BaF36_ss+WDQvU!cdFG$f.');
$table_prefix = 'wp_';
define ('WPLANG', 'es_ES');
define( 'WP_SITEURL', 'https://' . $_SERVER['HTTP_HOST'] );
define( 'WP_HOME', 'https://' . $_SERVER['HTTP_HOST'] );
define('WP_ALLOW_MULTISITE', true); //activa el menu de network
define( 'MULTISITE', true );
define( 'SUBDOMAIN_INSTALL', false ); // Blogs NO en subdominios sino en subpcarpetas
$base = '/'; // Carpeta base. La raiz del dominio de instalacion (o subdominio), si no es barra no funciona el plugin domain-mapping
define( 'DOMAIN_CURRENT_SITE', 'wp.sindominio.net' ); // dominio/subdominio principal.
define( 'PATH_CURRENT_SITE', '/' );
define( 'SITE_ID_CURRENT_SITE', 1 );
define( 'BLOG_ID_CURRENT_SITE', 1 );
define( 'SUNRISE', 'on' );
define ( 'FORCE_SSL_ADMIN', true);
if ($_SERVER['HTTP_X_FORWARD_PROTO'] == 'https')
$_SERVER['HTTPS']='on';
define('WP_FAIL2BAN_LOG_PINGBACKS',true);
define('DISALLOW_FILE_EDIT',true);
define('WP_MEMORY_LIMIT', '512M');
define( 'EMPTY_TRASH_DAYS', 0 );
/* ¡Eso es todo, deja de editar! Feliz blogging */
/** WordPress absolute path to the Wordpress directory. */
if ( !defined('ABSPATH') )
define('ABSPATH', dirname(__FILE__) . '/');
/** Sets up WordPress vars and included files. */
require_once(ABSPATH . 'wp-settings.php');
?>