castopod/docs/src/es/getting-started/install.md

162 lines
6.0 KiB
Markdown
Raw Normal View History

2022-04-14 15:11:07 +02:00
---
2022-04-22 09:56:31 +02:00
title: Instalación
2022-04-14 15:11:07 +02:00
sidebarDepth: 3
---
2022-04-22 09:56:31 +02:00
# ¿Cómo instalar Castopod?
2022-04-14 15:11:07 +02:00
2022-07-04 15:27:21 +02:00
Castopod está pensado para ser fácil de instalar. Ya sea usando un alojamiento
dedicado o compartido, puedes instalarlo en la mayoría de servidores web
2022-04-22 09:56:31 +02:00
compatibles con PHP-MySQL.
2022-04-14 15:11:07 +02:00
2022-09-06 16:55:46 +02:00
::: tip Nota
2022-04-14 15:11:07 +02:00
2022-09-06 16:55:46 +02:00
¡Hemos publicado imágenes oficiales de Docker para Castopod!
2022-08-22 17:56:51 +02:00
2022-09-06 16:55:46 +02:00
Si prefieres usar Docker, puedes saltarte esto e ir directamente a la
[documentación sobre docker](./docker.md) para Castopod.
2022-04-14 15:11:07 +02:00
2022-07-04 15:27:21 +02:00
:::
2022-09-06 16:55:46 +02:00
## Requisitos
2022-07-04 15:27:21 +02:00
- PHP v8.0 o superior
- MySQL versión 5.7 o superior o MariaDB versión 10.2 o superior
- Soporte HTTPS
2022-04-14 15:11:07 +02:00
2022-07-04 15:27:21 +02:00
### PHP v8.0 o superior
2022-09-06 16:55:46 +02:00
Se requiere PHP versión 8.0 o superior con las siguientes extensiones
instaladas:
2022-04-14 15:11:07 +02:00
- [intl](https://php.net/manual/en/intl.requirements.php)
- [libcurl](https://php.net/manual/en/curl.requirements.php)
- [mbstring](https://php.net/manual/en/mbstring.installation.php)
2022-07-04 15:27:21 +02:00
- [gd](https://www.php.net/manual/en/image.installation.php) con librerias
**JPEG**, **PNG** y **WEBP**.
2022-04-14 15:11:07 +02:00
- [exif](https://www.php.net/manual/en/exif.installation.php)
2022-09-06 16:55:46 +02:00
Además, asegúrate de que las siguientes extensiones están habilitadas en tu PHP:
2022-04-14 15:11:07 +02:00
2022-07-04 15:27:21 +02:00
- json (habilitada por defecto - no la desactives)
- xml (habilitada por defecto - no la desactives)
2022-04-14 15:11:07 +02:00
- [mysqlnd](https://php.net/manual/en/mysqlnd.install.php)
2022-07-04 15:27:21 +02:00
### Base de datos compatible con MySQL
2022-04-14 15:11:07 +02:00
2022-09-06 16:55:46 +02:00
> Se recomienda usar [MariaDB](https://mariadb.org).
2022-04-14 15:11:07 +02:00
2022-09-06 16:55:46 +02:00
::: warning Alerta
2022-04-14 15:11:07 +02:00
2022-09-06 16:55:46 +02:00
Castopod solo funciona con base de datos compatibles con MySQL 5.7 o superior.
No funcionará por ejemplo con la version previa MySQL v5.6, ya que su vida útil
terminó el 5 de febrero de 2021.
2022-04-14 15:11:07 +02:00
:::
2022-09-06 16:55:46 +02:00
Necesitarás la dirección/nombre del servidor (hostname), el nombre de la base de
datos, el usuario y la contraseña para completar el proceso de instalación. Si
no cuentas con esta información, contacta con el administrador de tu servidor.
2022-04-14 15:11:07 +02:00
2022-07-04 15:27:21 +02:00
#### Privilegios
2022-04-14 15:11:07 +02:00
2022-09-23 17:51:26 +02:00
User must have at least these privileges on the database for Castopod to work:
`CREATE`, `ALTER`, `DELETE`, `EXECUTE`, `INDEX`, `INSERT`, `SELECT`, `UPDATE`,
`REFERENCES`, `CREATE VIEW`.
2022-04-14 15:11:07 +02:00
2022-09-06 16:55:46 +02:00
### (Opcional) FFmpeg v4.1.8 o superior para poder generar clips de vídeo (recortes de vídeo)
2022-04-14 15:11:07 +02:00
2022-09-06 16:55:46 +02:00
Es necesario tener instalado [FFmpeg](https://www.ffmpeg.org/) versión 4.1.8 o
superior si desea generar recorte de vídeos. Se debe instalar las siguientes
extensiones:
2022-04-14 15:11:07 +02:00
2022-07-04 15:27:21 +02:00
- Librería **FreeType 2** para
2022-04-14 15:11:07 +02:00
[gd](https://www.php.net/manual/en/image.installation.php).
2022-07-04 15:27:21 +02:00
### (Opcional) Otras recomendaciones
2022-04-14 15:11:07 +02:00
2022-07-04 15:27:21 +02:00
- Redis para mejores rendimientos de caché.
- CDN para almacenamiento en caché de archivos estáticos y mejores rendimientos.
2022-09-06 16:55:46 +02:00
- Pasarela de correo para recuperación de contraseñas olvidadas.
2022-04-14 15:11:07 +02:00
2022-07-04 15:27:21 +02:00
## Instrucciones de instalación
2022-04-14 15:11:07 +02:00
2022-09-06 16:55:46 +02:00
### Pre-requisitos
2022-04-14 15:11:07 +02:00
2022-09-06 16:55:46 +02:00
0. Consigue un servidor web que cuente con todos los [requisitos](#requirements)
recomendados.
2022-07-04 15:27:21 +02:00
1. Crea una base de datos MySQL para Castopod con un usuario que tenga acceso y
privilegios de modificación (para más información, ver
2022-09-06 16:55:46 +02:00
[base de datos compatible con MySQL](#mysql-compatible-database)).
2. Activa HTTPS en tu dominio web mediante un _certificado SSL_.
3. Descarga y descomprime en tu servidor la última versión de
[Castopod](https://castopod.org/), si aún no lo has hecho.
- ⚠️ Edita la configuración de tu servidor para que el "document root" sea la
subcarpeta `castopod/public/`.
4. Añade tareas en el **cron** de tu servidor web para hacer funcionar varios
procesos de Castopod en segundo plano (reemplaza las rutas de acuerdo a la
estructura de directorios de tu servidor):
- Esta tarea se utiliza para transmitir las actividades sociales a tus
seguidores en el Fediverso:
2022-04-14 15:11:07 +02:00
```bash
2022-09-06 16:55:46 +02:00
* * * * * /ruta/al/php /ruta/a/castopod/public/index.php scheduled-activities
2022-04-14 15:11:07 +02:00
```
2022-09-06 16:55:46 +02:00
- Para que tus episodios sean transmitidos a los hubs abiertos que usan el
nuevo protocolo [WebSub](https://en.wikipedia.org/wiki/WebSub) (2018):
2022-04-14 15:11:07 +02:00
```bash
2022-09-06 16:55:46 +02:00
* * * * * /ruta/al/php /castopod/public/index.php scheduled-websub-publish
2022-04-14 15:11:07 +02:00
```
2022-09-06 16:55:46 +02:00
- Para generar Recortes de video (ver
[requisitos FFmpeg ](#ffmpeg-v418-or-higher-for-video-clips)):
2022-04-14 15:11:07 +02:00
```bash
2022-09-06 16:55:46 +02:00
* * * * * /ruta/al/php /path/to/castopod/public/index.php scheduled-video-clips
2022-04-14 15:11:07 +02:00
```
2022-09-06 16:55:46 +02:00
> Estas tareas así definidas se ejecutarán **cada minuto**. Pero puedes
> definir una frecuencia más acorde a tus necesidades: cada 5, 10 minutos o
> más. Ejemplo: si reemplazas el último asterisco por \*/30 se ejecutará cada
> 30 minutos.
> ([más ejemplos](https://blog.carreralinux.com.ar/2016/09/ejemplos-de-cron-tareas-linux/))
2022-04-14 15:11:07 +02:00
2022-09-06 16:55:46 +02:00
### (recomendado) Asistente web de instalación
2022-04-14 15:11:07 +02:00
2022-09-06 16:55:46 +02:00
1. Ejecuta el script de instalación de Castopod visitando en tu navegador web
esta dirección: `https://tu_nombre_de_dominio.com/cp-install`
2. Sigue las instrucciones en pantalla.
3. ¡Empieza a hacer podcasting!
2022-04-14 15:11:07 +02:00
2022-09-06 16:55:46 +02:00
::: info Nota
2022-04-14 15:11:07 +02:00
2022-09-06 16:55:46 +02:00
El script de instalación crea un archivo `.env` en la raíz de castopod. Si no
puedes usar el asistente web de instalación, puedes
[crear y configurar manualmente el archivo `.env`](#alternative-manual-configuration).
2022-04-14 15:11:07 +02:00
:::
2022-07-04 15:27:21 +02:00
## Paquetes de la comunidad
2022-04-14 15:11:07 +02:00
2022-09-06 16:55:46 +02:00
Si no quieres molestarte en instalar Castopod manualmente, puedes utilizar uno
de los paquetes creados y mantenidos por la comunidad de código abierto.
2022-04-14 15:11:07 +02:00
2022-07-04 15:27:21 +02:00
### Instalar con YunoHost
2022-04-14 15:11:07 +02:00
2022-09-06 16:55:46 +02:00
[YunoHost](https://yunohost.org/) es una distribución GNU/Linux basada en Debian
compuesta por paquetes de software libre y de código abierto. Te ayuda a
gestionar las partes difíciles de autoalojamiento.
2022-04-14 15:11:07 +02:00
<div class="flex flex-wrap items-center gap-4">
<a href="https://install-app.yunohost.org/?app=castopod" target="_blank" rel="noopener noreferrer">
2022-09-06 16:55:46 +02:00
<img src="https://install-app.yunohost.org/install-with-yunohost.svg" alt="Instalar Castopod con YunoHost." class="align-middle" />
2022-04-14 15:11:07 +02:00
</a>
2022-09-06 16:55:46 +02:00
<a href="https://github.com/YunoHost-Apps/castopod_ynh" target="_blank" rel="noopener noreferrer" class="inline-flex items-center px-4 py-[.3rem] mx-auto font-semibold text-center text-black rounded-md gap-x-1 border-2 border-solid border-[#333] hover:no-underline hover:bg-gray-100">
2022-04-14 15:11:07 +02:00
</div>