Fiz um site usando Node.js como servidor. Como eu sei, o arquivo node.js deve começar a funcionar digitando comandos no terminal, então não tenho certeza se o Github Pages oferece suporte a node.js-hosting. Então, o que eu deveria fazer?
Fiz um site usando Node.js como servidor. Como eu sei, o arquivo node.js deve começar a funcionar digitando comandos no terminal, então não tenho certeza se o Github Pages oferece suporte a node.js-hosting. Então, o que eu deveria fazer?
Respostas:
As páginas do GitHub hospedam apenas páginas HTML estáticas. Nenhuma tecnologia do lado do servidor é suportada, então os aplicativos Node.js não serão executados nas páginas do GitHub. Há lotes de provedores de hospedagem, como listadas no wiki Node.js .
O nevoeiro de aplicativos parece ser o mais econômico, pois oferece hospedagem gratuita para projetos com 2 GB de RAM (o que é muito bom se você me perguntar).
Conforme declarado aqui , o AppFog removeu seu plano gratuito para novos usuários.
Se você deseja hospedar páginas estáticas no GitHub, leia este guia . Se você planeja usar o Jekyll , este guia será muito útil.
Nós, amantes do Javascript, não precisamos usar Ruby (Jekyll ou Octopress) para gerar páginas estáticas nas páginas do Github, podemos usar Node.js e Harp , por exemplo:
Estas são as etapas . Resumo:
Clone o Repositório
git clone https://github.com/your-github-user-name/your-github-user-name.github.io.git
Inicialize um aplicativo Harp (localmente):
harp init _harp
certifique-se de nomear a pasta com um sublinhado no início; ao implantar nas páginas do GitHub, você não deseja que seus arquivos de origem sejam disponibilizados.
Compile seu aplicativo Harp
harp compile _harp ./
Implantar no Gihub
git add -A
git commit -a -m "First Harp + Pages commit"
git push origin master
E este é um tutorial legal com detalhes sobre coisas legais como layouts, parciais, Jade e Less.
Consegui configurar as ações do github para enviar automaticamente os resultados de um comando de construção de nó ( yarn build
no meu caso, mas também deve funcionar com o npm) para o gh-pages
branch sempre que um novo commit é enviado ao master.
Embora não seja totalmente ideal, já que gostaria de evitar comprometer os arquivos construídos, parece que atualmente é a única maneira de publicar nas páginas do github.
Baseei meu fluxo de trabalho neste guia para uma biblioteca de reação diferente e tive que fazer as seguintes alterações para que funcionasse para mim:
yarn export
porque esse comando não existe e não parece adicionar nada útil (você também pode querer alterar a linha de compilação acima para atender às suas necessidades)env
diretiva à yarn build
etapa para poder incluir o hash SHA do commit que gerou a compilação dentro do meu aplicativo, mas isso é opcionalAqui está minha ação completa no github:
name: github pages
on:
push:
branches:
- master
jobs:
deploy:
runs-on: ubuntu-18.04
steps:
- uses: actions/checkout@v2
- name: Setup Node
uses: actions/setup-node@v2-beta
with:
node-version: '12'
- name: Get yarn cache
id: yarn-cache
run: echo "::set-output name=dir::$(yarn cache dir)"
- name: Cache dependencies
uses: actions/cache@v2
with:
path: ${{ steps.yarn-cache.outputs.dir }}
key: ${{ runner.os }}-yarn-${{ hashFiles('**/yarn.lock') }}
restore-keys: |
${{ runner.os }}-yarn-
- run: yarn install --frozen-lockfile
- run: yarn build
env:
REACT_APP_GIT_SHA: ${{ github.SHA }}
- name: Deploy
uses: peaceiris/actions-gh-pages@v3
with:
github_token: ${{ secrets.GITHUB_TOKEN }}
publish_dir: ./build
Os documentos para next.js também fornecem instruções para configurar o Vercel, que parece ser um serviço de hospedagem para aplicativos node.js semelhantes às páginas do github. Eu não tentei isso, porém, por isso não posso falar sobre como funciona bem.
São etapas muito simples para enviar seu aplicativo node js do local para o GitHub.
Passos:
git clone repo-url
git add -A
git commit -a -m "First Commit"
git push origin master
grunt assemble
git commit e empurra para o branch gh-pages e você está pronto para começar.