Tutorial: creación de una instancia de Writefreely

Hoy os traigo un emocionante proyecto: montar tu propia instancia de WriteFreely , lo que te permitirá tener tu blog minimalista. En este artículo, describiré los pasos que he seguido para crear mi propio blog en una instancia de WriteFreely.

Paso 1: Preparativos

Lo primero que debes hacer es crear un usuario llamado «writefreely». A continuación, ingresa a este usuario utilizando los siguientes comandos:

useradd -r -m -d /srv/writefreely -s /bin/bash writefreely usermod -a -G www-data writefreely su - writefreely

Paso 2: Descargar WriteFreely

Descarga la última versión de WriteFreely desde GitHub y descomprímelo. Asegúrate de reemplazar «dominio.com» con tu propio dominio.

wget https://github.com/writefreely/writefreely/releases/download/v0.13.2/writefreely_0.13.2_linux_amd64.tar.gz

tar xvzf writefreely_0.13.2_linux_amd64.tar.gz

mv writefreely dominio.com

exit

chown writefreely.www-data -R /srv/writefreely/

Paso 3: Configura la Base de Datos

Instala MariaDB y crea una base de datos. Sustituye «usuarioqueelijas» y «contraseñaqueelijas» por los valores que prefieras.

apt install mariadb-server

mysql -u root -p

CREATE DATABASE writefreely;

GRANT ALL PRIVILEGES ON writefreely.* TO 'usuarioqueelijas'@'localhost' IDENTIFIED BY 'contraseñaqueelijas';

exit

Paso 4: Genera la Configuración de WriteFreely

Accede al usuario «writefreely» y crea la configuración de WriteFreely. Asegúrate de reemplazar «dominio.com», «usuarioqueelijas», «contraseñaqueelijas» y otros valores según tus preferencias.

su - writefreely

cd dominio.com./writefreely --create-config

Modifica el archivo de configuración con los siguientes datos:

username = usuarioqueelijas

password = contraseñaqueelijas

database = writefreely

site_name          = WriteFreely de usuario

site_description   = Tutorial de como instalar WriteFreely

host               = https://nuestrodominio

default_visibility = unlisted

Una vez hecho, guarda el archivo.

Paso 5: Genera la Clave de Cifrado y el Usuario Administrador

Desde el usuario «writefreely,» genera la clave de cifrado y crea el usuario administrador.

    ./writefreely db init

    ./writefreely keys generate

    ./writefreely --create-admin usuarioqueelijas:contraseñaqueelijas

Paso 6: Crea el Servicio en Systemd

Sal del usuario «writefreely» y crea un servicio Systemd.

nano /etc/systemd/system/writefreely.service

Pega el siguiente contenido en el archivo:

[Unit]
Description=WriteFreely Instance
After=syslog.target network.target mysql.service

[Service]
Type=simple
StandardOutput=syslog
StandardError=syslog
User=writefreely
Group=writefreely
WorkingDirectory=/srv/writefreely/nuestrodominio.com
ExecStart=/srv/writefreely/nuestrodominio.com/writefreely
Restart=always

[Install]
WantedBy=multi-user.target

Guarda el archivo y ejecuta los siguientes comandos:

systemctl daemon-reload
systemctl start writefreely
systemctl enable writefreely

Paso 7: Configura Nginx

Instala Nginx y Certbot , luego crea el archivo de configuración de Nginx.

apt install nginx certbot python3-certbot-nginx nano /etc/nginx/sites-available/writefreely.conf

En el archivo de configuración, agrega la siguiente configuración. Asegúrate de reemplazar «dominio.com» con tu propio dominio:

server {
    listen 80;
    listen [::]:80;

    server_name nuestrodominio.com;

    gzip on;
    gzip_types
      application/javascript
      application/x-javascript
      application/json
      application/rss+xml
      application/xml
      image/svg+xml
      image/x-icon
      application/vnd.ms-fontobject
      application/font-sfnt
      text/css
      text/plain;
    gzip_min_length 256;
    gzip_comp_level 5;
    gzip_http_version 1.1;
    gzip_vary on;

    location ~ ^/.well-known/(webfinger|nodeinfo|host-meta) {
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $remote_addr;
        proxy_pass http://127.0.0.1:8080;
        proxy_redirect off;
    }

    location ~ ^/(css|img|js|fonts)/ {
        root /srv/writefreely/nuestrodominio.com/static;
        # Optionally cache these files in the browser:
        # expires 12M;
    }

    location / {
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $remote_addr;
        proxy_pass http://127.0.0.1:8080;
        proxy_redirect off;
    }
}

Guarda el archivo y habilita el sitio:

cd /etc/nginx/sites-enabled/
ln -s ../sites-available/writefreely.conf
nginx -t
systemctl reload nginx

Paso 8: Configura Certbot

Finalmente, configura Certbot para obtener un certificado SSL.

    
apt install -y 
certbot python3-certbot-nginx
certbot

Sigue las instrucciones de Certbot para obtener un certificado SSL.

¡Listo! Ahora puedes acceder a tu blog ingresando tu dominio en el navegador y utilizar el

usuario y la contraseña que configuraste anteriormente. Si encuentras algún error o necesitas ayuda, no dudes en contactarme en Mastodon.

¡Espero que disfrutes de tu nuevo blog minimalista creado con WriteFreely!

#Tecnología #Writefreely #Tutorial

El rincón de ferlagod — Si dejas tu comentario en Mastodon te leeré.

Contenido bajo licencia Creative Commons BY-SA 4.0.

Me puedes encontrar en Mastodon

Copia de Enredando Temas