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 |
OpenShift
hexo-deployer-openshift
quedó obsoleto en 2022.
Instala hexo-deployer-openshift.
$ npm install hexo-deployer-openshift --save |
Edita los ajustes.
deploy: |
Opción | Descripción |
---|---|
repo |
URL del repositorio OpenShift |
message |
Personaliza el mensaje commit (Por defecto Site updated: {{ now('YYYY-MM-DD HH:mm:ss') }} ) |
FTPSync
Instala 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
Instala 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.
RSS3
hexo-deployer-rss3
quedó obsoleto en 2023.
RSS3 es un protocolo abierto diseñado para contenido y redes sociales la era de la Web 3.0.
Instala hexo-deployer-rss3.
Modifica la configuración.
deploy: # The root configuration block for all deployers |
Parámetros | Descripción |
---|---|
endpoint |
un enlace al Hub RSS3 |
privateKey |
tu clave privada, 64 bytes |
ipfs/deploy |
si el despliegue es a IPFS |
ipfs/gateway |
Puerta de enlace API de IPFS |
ipfs/api/key |
Contenido relacionado de la puerta de enlace IPFS |
ipfs/api/secret |
Contenido de autenticación relacionado de la puerta de enlace IPFS |
genera los ficheros estáticos
despliega
Para cuestiones de despliegue relacionadas, puedes consultar a nuestra documentación.
Edgio (anteriormente Layer0)
Edgio (formerly Layer0) es una plataforma de internet de escalado que facilita a los equipos la generación, lanzamiento, protección y acelerado de sus aplicaciones web y APIs.
- En el directorio de tu proyecto hexo, instala Edgio CLI:
npm i -g @edgio/cli |
- Instala Hexo connector by Edgio:
edgio init --connector=@edgio/hexo |
- Despliega
edgio deploy |
Alternativamente, puedes clicar en el botón de despliegue de abajo para crear un nuevo proyecto:
Otros métodos
Todos los ficheros generados se guardan en el directorio public
. Puedes copiarlos donde desees.