Migración
Migrar MediaWiki a Docker con Apache, LDAP y certificados SSL implica varios pasos. Aquí hay una guía paso a paso para realizar esta tarea:
### 1. Preparación
Antes de comenzar, asegúrese de tener Docker y Docker Compose instalados en su servidor.
### 2. Crear directorios y archivos necesarios
Cree una carpeta en su servidor para almacenar sus archivos de configuración y volúmenes de datos persistentes. Por ejemplo:
```
mkdir mediawiki-docker
cd mediawiki-docker
```
### 3. Crear el archivo `docker-compose.yml`
Cree un archivo `docker-compose.yml` en el directorio `mediawiki-docker` con el siguiente contenido:
```yaml
version: '3.8'
services:
mediawiki:
image: mediawiki
container_name: mediawiki
volumes:
- ./images:/var/www/html/images
- ./LocalSettings.php:/var/www/html/LocalSettings.php
depends_on:
- database
networks:
- mediawiki-network
database:
image: mariadb
container_name: mariadb
volumes:
- ./db-data:/var/lib/mysql
environment:
- MYSQL_DATABASE=mediawiki
- MYSQL_USER=user
- MYSQL_PASSWORD=password
- MYSQL_RANDOM_ROOT_PASSWORD=yes
networks:
- mediawiki-network
web:
image: httpd
container_name: apache
volumes:
- ./apache.conf:/usr/local/apache2/conf/httpd.conf
- ./images:/usr/local/apache2/htdocs/images
- ./ssl:/usr/local/apache2/conf/ssl
ports:
- "80:80"
- "443:443"
depends_on:
- mediawiki
networks:
- mediawiki-network
networks:
mediawiki-network:
name: mediawiki-network
```
### 4. Crear el archivo `apache.conf`
Cree un archivo llamado `apache.conf` en el mismo directorio que su archivo `docker-compose.yml`:
```
ServerName localhost
Listen 80
Listen 443
LoadModule proxy_module modules/mod_proxy.so
LoadModule proxy_http_module modules/mod_proxy_http.so
LoadModule ssl_module modules/mod_ssl.so
LoadModule authnz_ldap_module modules/mod_authnz_ldap.so
LoadModule ldap_module modules/mod_ldap.so
DocumentRoot "/usr/local/apache2/htdocs"
<Directory "/usr/local/apache2/htdocs">
Options Indexes FollowSymLinks
AllowOverride All
Require all granted
</Directory>
ProxyPass / http://mediawiki:80/
ProxyPassReverse / http://mediawiki:80/
ProxyRequests Off
ProxyPreserveHost On
# SSL Configuration
SSLEngine on
SSLCertificateFile "/usr/local/apache2/conf/ssl/your_cert.crt"
SSLCertificateKeyFile "/usr/local/apache2/conf/ssl/your_key.key"
SSLCACertificateFile "/usr/local/apache2/conf/ssl/your_ca.crt"
# LDAP Configuration
<Location />
AuthType Basic
AuthName "MediaWiki LDAP Authentication"
AuthBasicProvider ldap
AuthLDAPURL "ldap://your_ldap_server/dc=your,dc=domain?uid"
AuthLDAPBindDN "cn=admin,dc=your,dc=domain"
AuthLDAPBindPassword "your_bind_password"
Require valid-user
</Location>
```
Asegúrese de reemplazar `your_cert.crt`, `your_key.key` y `your_ca.crt` con los nombres de sus archivos de certificado SSL, clave privada y certificado de la autoridad de certificación, respectivamente. También actualice la configuración de LDAP con los detalles de su servidor LDAP.
### 5. Copiar archivos de configuración y datos
Copie su archivo `LocalSettings.php` y la carpeta `images` de su instalación actual de MediaWiki a la carpeta `mediawiki-docker`.
Además, copie sus certificados SSL y la clave privada a la carpeta `./ssl`.
### 6. Crear y ejecutar los contenedores de Docker
Ejecute el siguiente comando en la carpeta `mediawiki-docker` para crear y ejecutar los contenedores de Docker:
```
docker-compose up -d
```
Una vez que haya realizado estos cambios y ejecutado el comando anterior, su instancia de MediaWiki debería estar funcionando con Apache, LDAP y certificados SSL en Docker. Asegúrese de ajustar las rutas de archivo y las configuraciones de acuerdo con su entorno específico.
Comentarios
Publicar un comentario