mirror of
https://github.com/nunocoracao/blowfish.git
synced 2026-01-30 16:31:52 +01:00
Add complete translations for: - German (de) - French (fr) - Spanish (es) - Portuguese Brazil (pt-br) - Portuguese Portugal (pt-pt) Changes include: - Language config files (languages.*.toml) - Menu config files (menus.*.toml) - Translated docs section (16 files x 5 langs) - Translated homepage, guides, samples - Translated examples, authors, tags sections - Translated users section (112 dirs x 5 langs) - Fixed YAML front matter formatting in user files Hugo build now supports 9 languages total. 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
149 lines
7.0 KiB
Markdown
149 lines
7.0 KiB
Markdown
---
|
|
title: "Alojamento e implementação"
|
|
weight: 14
|
|
draft: false
|
|
description: "Aprenda como implementar um site Blowfish."
|
|
slug: "hosting-deployment"
|
|
tags: ["documentação", "alojamento", "implementação", "github", "netlify", "render"]
|
|
series: ["Documentação"]
|
|
series_order: 14
|
|
---
|
|
|
|
Existem muitas formas de implementar o seu website Hugo construído com Blowfish. O tema é concebido para ser flexível em quase qualquer cenário de implementação.
|
|
|
|
O Blowfish utiliza URLs relativos em todo o tema. Isto permite que os sites sejam facilmente implementados em subpastas e hosts como GitHub Pages. Normalmente não é necessária nenhuma configuração especial desde que o parâmetro `baseURL` tenha sido configurado no ficheiro `hugo.toml`.
|
|
|
|
A documentação oficial do Hugo [Alojamento e Implementação](https://gohugo.io/hosting-and-deployment/) é o melhor local para aprender como implementar o seu site. As secções abaixo contêm alguns detalhes de configuração específicos do tema que podem ajudá-lo a implementar sem problemas com certos fornecedores.
|
|
|
|
**Escolha o seu fornecedor:**
|
|
|
|
- [GitHub Pages](#github-pages)
|
|
- [Netlify](#netlify)
|
|
- [Render](#render)
|
|
- [Cloudflare Pages](#cloudflare-pages)
|
|
- [Alojamento partilhado, VPS ou servidor web privado](#alojamento-partilhado-vps-ou-servidor-web-privado)
|
|
|
|
---
|
|
|
|
## GitHub Pages
|
|
|
|
O GitHub permite alojamento no [GitHub Pages](https://docs.github.com/en/pages/getting-started-with-github-pages/about-github-pages) utilizando Actions. Para ativar esta funcionalidade, ative o Pages no seu repositório e crie um novo workflow de Actions para construir e implementar o seu site.
|
|
|
|
O ficheiro precisa de estar no formato YAML, colocado dentro do diretório `.github/workflows/` do seu repositório GitHub e nomeado com extensão `.yml`.
|
|
|
|
{{< alert >}}
|
|
**Importante:** Certifique-se de definir o nome correto da branch em `branches` e no parâmetro `if` da etapa de implementação para a branch de origem utilizada no seu projeto.
|
|
{{< /alert >}}
|
|
|
|
```yaml
|
|
# .github/workflows/gh-pages.yml
|
|
|
|
name: GitHub Pages
|
|
|
|
on:
|
|
push:
|
|
branches:
|
|
- main
|
|
|
|
jobs:
|
|
build-deploy:
|
|
runs-on: ubuntu-24.04
|
|
concurrency:
|
|
group: ${{ github.workflow }}-${{ github.ref }}
|
|
steps:
|
|
- name: Checkout
|
|
uses: actions/checkout@v3
|
|
with:
|
|
submodules: true
|
|
fetch-depth: 0
|
|
|
|
- name: Setup Hugo
|
|
uses: peaceiris/actions-hugo@v2
|
|
with:
|
|
hugo-version: "latest"
|
|
|
|
- name: Build
|
|
run: hugo --minify
|
|
|
|
- name: Deploy
|
|
uses: peaceiris/actions-gh-pages@v3
|
|
if: ${{ github.ref == 'refs/heads/main' }}
|
|
with:
|
|
github_token: ${{ secrets.GITHUB_TOKEN }}
|
|
publish_branch: gh-pages
|
|
publish_dir: ./public
|
|
```
|
|
|
|
Envie o ficheiro de configuração para o GitHub e a action deve ser executada automaticamente. Pode falhar na primeira vez e precisará de visitar a secção **Settings > Pages** do seu repositório GitHub para verificar se a origem está correta. Deve estar configurada para utilizar a branch `gh-pages`.
|
|
|
|
{{< screenshot src="github-pages-source.jpg" alt="Captura de ecrã da origem do GitHub Pages" >}}
|
|
|
|
Assim que as definições estejam configuradas, execute novamente a action e o site deve ser construído e implementado corretamente. Pode consultar os logs das actions para verificar se tudo foi implementado com sucesso.
|
|
|
|
## Netlify
|
|
|
|
Para implementar no [Netlify](https://www.netlify.com), crie um novo site de implementação contínua e vincule-o ao seu código-fonte. As definições de build podem ser deixadas em branco na interface do Netlify. Só precisará de configurar o domínio que utilizará.
|
|
|
|
{{< screenshot src="netlify-build-settings.jpg" alt="Captura de ecrã das definições de build do Netlify" >}}
|
|
|
|
Em seguida, na raiz do repositório do seu site, crie um ficheiro `netlify.toml`:
|
|
|
|
```toml
|
|
# netlify.toml
|
|
|
|
[build]
|
|
command = "hugo mod get -u && hugo --gc --minify -b $URL"
|
|
publish = "public"
|
|
|
|
[build.environment]
|
|
NODE_ENV = "production"
|
|
GO_VERSION = "1.16"
|
|
TZ = "UTC" # Definir para o fuso horário preferido
|
|
|
|
[context.production.environment]
|
|
HUGO_VERSION = "0.104.1"
|
|
HUGO_ENV = "production"
|
|
|
|
[context.deploy-preview.environment]
|
|
HUGO_VERSION = "0.104.1"
|
|
```
|
|
|
|
Esta configuração assume que está a implementar o Blowfish como um módulo Hugo. Se instalou o tema utilizando outro método, altere o comando de build simplesmente para `hugo --gc --minify -b $URL`.
|
|
|
|
Quando enviar o ficheiro de configuração para o seu repositório, o Netlify deve implementar automaticamente o seu site. Pode verificar os logs de implementação na interface do Netlify para quaisquer erros.
|
|
|
|
## Render
|
|
|
|
Implementar no [Render](https://render.com) é muito simples e toda a configuração é feita através da interface do Render.
|
|
|
|
Crie um novo **Static Site** e vincule-o ao repositório de código do seu projeto. Em seguida, simplesmente configure o comando de build como `hugo --gc --minify` e o diretório de publicação como `public`.
|
|
|
|
{{< screenshot src="render-settings.jpg" alt="Captura de ecrã das definições do Render" >}}
|
|
|
|
O site será construído e implementado automaticamente sempre que enviar uma alteração para o seu repositório.
|
|
|
|
## Cloudflare Pages
|
|
|
|
A Cloudflare oferece o serviço [Pages](https://pages.cloudflare.com/) que pode alojar blogues Hugo. Constrói o site a partir de um repositório git e depois aloja-o na CDN da Cloudflare. Siga o [guia de implementação Hugo](https://developers.cloudflare.com/pages/framework-guides/deploy-a-hugo-site) deles para começar.
|
|
|
|
A funcionalidade Rocket Loader™ oferecida pela Cloudflare tenta acelerar a renderização de páginas web com JavaScript, mas quebra o seletor de aparência no tema. Também pode causar um flash irritante de ecrã claro/escuro ao navegar no seu site devido aos scripts a carregar na ordem errada.
|
|
|
|
Este problema pode ser corrigido desativando-o:
|
|
|
|
- Vá ao [painel da Cloudflare](https://dash.cloudflare.com)
|
|
- Clique no nome do seu domínio na lista
|
|
- Clique em _Optimization_ na secção _Speed_
|
|
- Desloque-se até _Rocket Loader™_ e desative-o
|
|
|
|
Sites Hugo construídos com Blowfish ainda carregam muito rapidamente, mesmo com esta funcionalidade desativada.
|
|
|
|
## Alojamento partilhado, VPS ou servidor web privado
|
|
|
|
Utilizar alojamento web tradicional, ou implementar no seu próprio servidor web, é tão simples como construir o seu site Hugo e transferir os ficheiros para o seu host.
|
|
|
|
Certifique-se de que o parâmetro `baseURL` em `hugo.toml` está definido para o URL completo para a raiz do seu website (incluindo quaisquer subdomínios ou subpastas).
|
|
|
|
Em seguida, construa o seu site utilizando `hugo` e copie o conteúdo do diretório de saída para a raiz do seu servidor web e estará pronto. Por predefinição, o diretório de saída chama-se `public`.
|
|
|
|
_Se precisa de um fornecedor de alojamento, confira [Vultr](https://www.vultr.com/?ref=8957394-8H) ou [DigitalOcean](https://m.do.co/c/36841235e565). Registar-se utilizando estes links de afiliado dar-lhe-á até $100 em crédito grátis para que possa experimentar o serviço._
|