<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="es">
	<id>https://wiki.lopezhueso.org/api.php?hidebots=1&amp;urlversion=1&amp;days=7&amp;limit=50&amp;action=feedrecentchanges&amp;feedformat=atom</id>
	<title>José Manuel López Hueso  - Cambios recientes [es]</title>
	<link rel="self" type="application/atom+xml" href="https://wiki.lopezhueso.org/api.php?hidebots=1&amp;urlversion=1&amp;days=7&amp;limit=50&amp;action=feedrecentchanges&amp;feedformat=atom"/>
	<link rel="alternate" type="text/html" href="https://wiki.lopezhueso.org/index.php/Especial:CambiosRecientes"/>
	<updated>2026-11-15T00:51:13Z</updated>
	<subtitle>Realiza un seguimiento de los cambios más recientes en la wiki en este canal.</subtitle>
	<generator>MediaWiki 1.46.2</generator>
	<entry>
		<id>https://wiki.lopezhueso.org/index.php?title=Archivo:Esquema_wiki.png&amp;diff=3&amp;oldid=0</id>
		<title>Archivo:Esquema wiki.png</title>
		<link rel="alternate" type="text/html" href="https://wiki.lopezhueso.org/index.php?title=Archivo:Esquema_wiki.png&amp;diff=3&amp;oldid=0"/>
		<updated>2026-11-14T23:37:16Z</updated>

		<summary type="html">&lt;p&gt;&lt;a href=&quot;/index.php?title=Usuario:Admin&amp;amp;action=edit&amp;amp;redlink=1&quot; class=&quot;mw-userlink new&quot; title=&quot;Usuario:Admin (la página no existe)&quot;&gt;&lt;bdi&gt;Admin&lt;/bdi&gt;&lt;/a&gt; subió &lt;a href=&quot;/index.php/Archivo:Esquema_wiki.png&quot; title=&quot;Archivo:Esquema wiki.png&quot;&gt;Archivo:Esquema wiki.png&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Página nueva&lt;/b&gt;&lt;/p&gt;&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Admin</name></author>
	</entry>
	<entry>
		<id>https://wiki.lopezhueso.org/index.php?title=Despliegue_de_MediaWiki_con_Docker&amp;diff=2&amp;oldid=0</id>
		<title>Despliegue de MediaWiki con Docker</title>
		<link rel="alternate" type="text/html" href="https://wiki.lopezhueso.org/index.php?title=Despliegue_de_MediaWiki_con_Docker&amp;diff=2&amp;oldid=0"/>
		<updated>2026-11-14T23:34:34Z</updated>

		<summary type="html">&lt;p&gt;Página creada con «&amp;#039;&amp;#039;&amp;#039;MediaWiki&amp;#039;&amp;#039;&amp;#039; es el software wiki libre en el que se basa Wikipedia. En esta práctica se ha desplegado con &amp;#039;&amp;#039;&amp;#039;Docker&amp;#039;&amp;#039;&amp;#039; y se publica en Internet a través de un &amp;#039;&amp;#039;&amp;#039;proxy inverso nginx&amp;#039;&amp;#039;&amp;#039; con HTTPS.  &lt;a href=&quot;/index.php/Archivo:Esquema_wiki.png&quot; title=&quot;Archivo:Esquema wiki.png&quot;&gt;thumb|300px|Esquema del despliegue&lt;/a&gt;  == Arquitectura == {| class=&amp;quot;wikitable&amp;quot; ! Componente !! Tecnología !! Función |- | some-mediawiki || mediawiki:1.43 || Aplicación web (Apache + PHP) |- | some-mariadb || mariadb:latest || Base de datos…»&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Página nueva&lt;/b&gt;&lt;/p&gt;&lt;div&gt;&amp;#039;&amp;#039;&amp;#039;MediaWiki&amp;#039;&amp;#039;&amp;#039; es el software wiki libre en el que se basa Wikipedia. En esta práctica se ha desplegado con &amp;#039;&amp;#039;&amp;#039;Docker&amp;#039;&amp;#039;&amp;#039; y se publica en Internet a través de un &amp;#039;&amp;#039;&amp;#039;proxy inverso nginx&amp;#039;&amp;#039;&amp;#039; con HTTPS.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Esquema_wiki.png|thumb|300px|Esquema del despliegue]]&lt;br /&gt;
&lt;br /&gt;
== Arquitectura ==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Componente !! Tecnología !! Función&lt;br /&gt;
|-&lt;br /&gt;
| some-mediawiki || mediawiki:1.43 || Aplicación web (Apache + PHP)&lt;br /&gt;
|-&lt;br /&gt;
| some-mariadb || mariadb:latest || Base de datos de la wiki&lt;br /&gt;
|-&lt;br /&gt;
| Proxy inverso || nginx + Let&amp;#039;s Encrypt || Publica la wiki con HTTPS en &amp;#039;&amp;#039;wiki.lopezhueso.org&amp;#039;&amp;#039;&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Los dos contenedores están en la red de Docker &amp;#039;&amp;#039;&amp;#039;practica&amp;#039;&amp;#039;&amp;#039;, así que MediaWiki se conecta a la base de datos usando el nombre del contenedor (&amp;lt;code&amp;gt;some-mariadb&amp;lt;/code&amp;gt;), sin exponer el puerto de MariaDB.&lt;br /&gt;
&lt;br /&gt;
== Despliegue de los contenedores ==&lt;br /&gt;
=== Base de datos ===&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
docker run -d --name some-mariadb --network practica \&lt;br /&gt;
  -v /my/own/datadir:/var/lib/mysql:Z \&lt;br /&gt;
  --env MARIADB_USER=mediawiki \&lt;br /&gt;
  --env MARIADB_PASSWORD=&amp;#039;********&amp;#039; \&lt;br /&gt;
  --env MARIADB_DATABASE=media_wiki \&lt;br /&gt;
  --env MARIADB_ROOT_PASSWORD=&amp;#039;********&amp;#039; \&lt;br /&gt;
  mariadb:latest&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== MediaWiki ===&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
docker run -d --name some-mediawiki --network practica \&lt;br /&gt;
  -v images:/var/www/html/images \&lt;br /&gt;
  -v /srv/wiki/LocalSettings.php:/var/www/html/LocalSettings.php:ro \&lt;br /&gt;
  -p 8080:80 \&lt;br /&gt;
  mediawiki:1.43&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
El fichero &amp;lt;code&amp;gt;LocalSettings.php&amp;lt;/code&amp;gt; lo genera el instalador web y se monta como fichero de solo lectura. El directorio de imágenes se guarda en el volumen &amp;lt;code&amp;gt;images&amp;lt;/code&amp;gt; para que no se pierda al recrear el contenedor.&lt;br /&gt;
&lt;br /&gt;
== Proxy inverso con HTTPS ==&lt;br /&gt;
En el VPS, nginx recibe las peticiones a &amp;lt;code&amp;gt;wiki.lopezhueso.org&amp;lt;/code&amp;gt; y las reenvía al contenedor. El certificado se ha obtenido con &amp;#039;&amp;#039;&amp;#039;Certbot&amp;#039;&amp;#039;&amp;#039;:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
sudo certbot --nginx -d wiki.lopezhueso.org&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
Certbot añade la configuración de SSL en el puerto 443 y redirige todo el tráfico HTTP a HTTPS con un 301.&lt;br /&gt;
&lt;br /&gt;
== Seguridad de las subidas ==&lt;br /&gt;
Siguiendo la guía oficial de MediaWiki, el directorio &amp;lt;code&amp;gt;/images/&amp;lt;/code&amp;gt; está protegido en nginx:&lt;br /&gt;
* Cabecera &amp;lt;code&amp;gt;X-Content-Type-Options: nosniff&amp;lt;/code&amp;gt;, para que el navegador no adivine el tipo de los ficheros.&lt;br /&gt;
* Cabecera &amp;lt;code&amp;gt;Content-Security-Policy&amp;lt;/code&amp;gt; con &amp;#039;&amp;#039;sandbox&amp;#039;&amp;#039;, para impedir que se ejecuten scripts.&lt;br /&gt;
* Las peticiones a scripts (&amp;lt;code&amp;gt;.php&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;.phtml&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;.sh&amp;lt;/code&amp;gt;...) dentro de &amp;lt;code&amp;gt;/images/&amp;lt;/code&amp;gt; devuelven &amp;#039;&amp;#039;&amp;#039;403 Forbidden&amp;#039;&amp;#039;&amp;#039;.&lt;br /&gt;
* Los ficheros &amp;lt;code&amp;gt;.html&amp;lt;/code&amp;gt; se sirven como texto plano.&lt;br /&gt;
&lt;br /&gt;
== Enlaces externos ==&lt;br /&gt;
* [https://www.mediawiki.org Sitio oficial de MediaWiki]&lt;br /&gt;
* [https://www.mediawiki.org/wiki/Manual:Security Manual de seguridad de MediaWiki]&lt;br /&gt;
* [https://hub.docker.com/_/mediawiki Imagen oficial en Docker Hub]&lt;/div&gt;</summary>
		<author><name>Admin</name></author>
	</entry>
</feed>