Hexo ofrece una estrategia de despliegue rápida y sencilla. Solo necesitas un único comando para desplegar tu sitio en el servidor.
$ hexo deploy |
Instala el complemento/s necesario que sea compatible con el método de despliegue de tu repositorio/servidor.
El despliegue se configura generalmente a través de _config.yml. Una configuración válida debe tener el campo type. Por ejemplo:
deploy: |
Puedes usar múltiples desplegadores. Hexo ejecutará cada desplegador en orden.
deploy: |
Consulta la lista de Complementos para más complementos de despliegue.
Git
- Instala hexo-deployer-git.
$ npm install hexo-deployer-git --save |
- Edita _config.yml (con los valores correspondientes del ejemplo mostrados más abajo como comentarios):
deploy: |
| Opción | Descripción | Valores por defecto |
|---|---|---|
repo |
URL del repositorio objetivo | |
branch |
Nombre de la rama. | gh-pages (GitHub)coding-pages (Coding.net)master (otros) |
message |
Personaliza el mensaje commit. | Site updated: {{ now('YYYY-MM-DD HH:mm:ss') }} |
token |
Valor del token opcional de autenticación en el repo. Añade $ como prefijo para leer el token de las variables de entorno |
- Despliega tu sitio con
hexo clean && hexo deploy.
- Se te solicitará el nombre usuario y la contraseña del repositorio objetivo, a no ser que la autenticación se realice mediante un token o clave ssh.
- hexo-deployer-git no almacena el nombre de usuario ni la contraseña. Usa git-credential-cache para almacenarlos temporalmente.
- Navega a las opciones de tu repositorio modifica la rama “Pages” a
gh-pages(o la rama especificada en tu configuración). El sitio desplegado debe estar presente en el enlace mostrado el ajuste de “Pages”.
Heroku
Instala hexo-deployer-heroku.
$ npm install hexo-deployer-heroku --save |
Edita los ajustes.
deploy: |
| Opción | Descripción |
|---|---|
repo, repository |
URL del repositorio de Heroku |
message |
Personaliza el mensaje commit (Por defecto Site updated: {{ now('YYYY-MM-DD HH:mm:ss') }}) |
Netlify
Netlify ofrece un depliegue continuo (Git-triggered builds), y un CDN global inteligente, DNS completo (incluyendo dominios personalizados), HTTPs automatizado, aceleración de assets y mucho más. Es una plataforma unificada que automatiza tu código para alto rendimiento, mantenimiento sencillo de sitios y aplicaciones web.
Hay dos métodos distintos para desplegar tus sitios en Netlify. El más común es usar la interfaz de usuario web. Visita creación de una nueva página, selecciona el repo de un proyecto en GitHub, GitLab, o Bitbucket, y sigue las instrucciones.
De forma alternativa, puedes usar la herramienta de Netlify Node based CLI para gestionar y desplegar sitios en Netlify sin abandonar tu terminal.
Puedes también añadir un Deploy to Netlify Button en tu fichero README.file para permitir a otros crear una copia de tu repositorio y ser desplegado en Netlify mediante un clic.
Rsync
Instala hexo-deployer-rsync.
$ npm install hexo-deployer-rsync --save |
Edita los ajustes.
deploy: |
| Opción | Descripción | Valor por defecto |
|---|---|---|
host |
Dirección del host remoto | |
user |
Nombre de usuario | |
root |
Directorio raíz del host remoto | |
port |
Puerto | 22 |
delete |
Elimina ficheros antiguos en el host remoto | true |
verbose |
Muestra mensajes detallados | true |
ignore_errors |
Ignora errores | false |
FTPSync
Install hexo-deployer-ftpsync.
$ npm install hexo-deployer-ftpsync --save |
Edita los ajustes.
deploy: |
| Opción | Descripción | Valor por defecto |
|---|---|---|
host |
Dirección del host remoto | |
user |
Nombre de usuario | |
pass |
Contraseña | |
remote |
Directorio raíz del host remoto | / |
port |
Puerto | 21 |
clear |
Elimina todos los ficheros y directorios del directorio remoto antes de la subida | false |
verbose |
Muestra mensajes detallados | false |
SFTP
Install hexo-deployer-sftp. Despliega el sitio mediante SFTP, permitiendo conexiones sin contraseña usando ssh-agent.
$ npm install hexo-deployer-sftp --save |
Edita los ajustes.
deploy: |
| Opción | Descripción | Valores por defecto |
|---|---|---|
host |
Dirección del host remoto | |
port |
Puerto | 22 |
user |
Nombre de usuario | |
pass |
Contraseña | |
privateKey |
Ruta la clave privada ssh | |
passphrase |
Frase de paso opcional para la clave privada | |
agent |
Ruta al socket del ssh-agent | $SSH_AUTH_SOCK |
remotePath |
Ruta al directorio raíz del host remoto | / |
forceUpload |
Sobreescribe ficheros existentes | false |
concurrency |
Número máximo de tareas SFTP procesadas concurrentemente | 100 |
Vercel
Vercel es una plataforma en la nube que habilita a los desarrolladores alojar sitios Jamstack instantáneamente, escalado automático, y no requiere supervisión, con nula configuración. Ofrecen una red perimetral global, cifrado SSL, compresión de recursos, invalidación de caché y más.
Paso 1: Añade un script de generación a tu ficheropackage.json:
{ |
Paso 2: Despliega tu sitio web Hexo a Vercel
Para desplegar tu aplicación Hexo con una Vercel for Git Integration, asegúrate de que ha sido subido a un repositorio Git.
Importa el proyecto en Vercel usando Import Flow. Durante la importación, encontrarás opciones relevantes preconfiguradas para ti; sin embargo, puedes elegir modificar cualquiera de estas opciones, una lista de la cual puede ser encontrada aquí.
Después que tu proyecto haya sido importado, todos las subidas a las ramas generarán Preview Deployments, y todos los cambios realizados a la Production Branch (generalmente “main”) resultará en un a Production Deployment.
De forma alternativa, puedes clicar en el botón de despliegue para crear un nuevo proyecto:
Bip
Bip es un servicio de alojamiento comercial que ofrece despliegue sin tiempo de inactividad, una CDN global, SSL, ancho de banda ilimitado y más para sitios web estáticos. Los planes están disponibles con un modelo de pago por uso, por dominio.
Comenzar a usarlo es rápido y sencillo, dado que Bip ofrece directamente soporte para Hexo. Esta guía asume que dispondes un dominio Bip y Bip CLI instalado.
1: Inicializa el directorio de tu proyecto
$ bip init |
Sigue las instrucciones y contesta a las preguntas sobre el dominio al que quieres desplegar. Bip detectará que estás usando Hexo, y configurará los ajustes del proyecto como el directorio de código fuente automáticamente.
2: Despliega tu sitio web
$ hexo generate —deploy && bip deploy |
Después de unos momentos, tu sitio web estará desplegado.
Otros métodos
Todos los ficheros generados se guardan en el directorio public. Puedes copiarlos donde desees.