---
name: azion-desenvolva-com-hugo
description: >-
  Crie um site Hugo a partir de um template da Azion ou com a Azion CLI e faça o deploy dele em um domínio da Azion.
---

# Desenvolva com Hugo

Você pode fazer o deploy de um site Hugo na Azion a partir de um template no Azion Console ou com a [Azion CLI](/pt-br/documentacao/devtools/cli/). Os dois caminhos deixam o site em execução na Azion, respondendo em um domínio da Azion.

A Azion serve um site Hugo como uma aplicação estática. O build grava o site em `./public`, e o deploy envia essa pasta para um bucket de armazenamento que uma [aplicação](/pt-br/documentacao/plataforma/applications/) serve. Para a lista completa de frameworks de que a Azion faz o build, consulte [Compatibilidade com web frameworks](/pt-br/documentacao/devtools/runtime/frameworks/compatibilidade-frameworks/).

---

Escolha seu caminho aqui. Os pré-requisitos e o procedimento de deploy abaixo mudam com ele.

## Pré-requisitos

- Uma conta na Azion. Para criar uma, consulte [Criar uma conta](/pt-br/documentacao/fundamentos/criar-uma-conta/).

**Console**

- Acesso ao Azion Console. Para entrar, consulte [Como acessar o Azion Console](/pt-br/documentacao/guias/plataforma/conta-e-billing/como-acessar-o-azion-console/).
- Uma conta no GitHub. O formulário do template conecta essa conta quando a solicita.

**CLI**

- A Azion CLI instalada e com login feito. Para configurá-la, consulte [Primeiros passos com a Azion CLI](/pt-br/documentacao/devtools/cli/primeiros-passos/).
- Node.js 18 ou posterior e o npm. O Hugo Boilerplate instala o Hugo como uma dependência npm, então você não instala o Hugo separadamente.
- Um terminal e um editor de código.

---

## Templates Hugo

A Azion faz o deploy de um template Hugo como um projeto pronto. O caminho pelo Console começa por um destes templates, e a CLI oferece os mesmos três:

| Template                                                                                                 | Uso                     |
| -------------------------------------------------------------------------------------------------------- | ----------------------- |
| [Hugo Boilerplate](/pt-br/documentacao/guias/desenvolvimento-de-aplicacoes/frameworks/hugo-boilerplate/) | Projeto inicial         |
| Influencer Hugo                                                                                          | Vitrine de produtos     |
| Vex Hugo                                                                                                 | Landing page de produto |

O Hugo Boilerplate tem um guia próprio, com link na tabela. Influencer Hugo e Vex Hugo compartilham um guia: [Deploy de e-commerce com Hugo usando templates](/pt-br/documentacao/guias/desenvolvimento-de-aplicacoes/frameworks/hugo-ecommerce-collection/). Para mais informações sobre templates, consulte [Marketplace da Azion](/pt-br/documentacao/plataforma/marketplace/).

---

## Faça o deploy do site

Os dois caminhos fazem o build do projeto Hugo e criam os recursos que o servem na Azion. Siga o painel do seu caminho:

**Console**

Para fazer o deploy de um template Hugo pelo Azion Console:

1. **Abra os templates**

   Acesse [Azion Console](https://console.azion.com/) > **Create** > **Templates**.

2. **Pesquise por Hugo**

   Em **Search by name, framework, or keyword**, digite `Hugo`.

3. **Selecione o template Hugo que você quer**

4. **Conecte sua conta do GitHub**

   Quando o formulário mostrar **GitHub Connection**, selecione **Connect with GitHub** e instale o [Azion GitHub App](/pt-br/documentacao/guias/desenvolvimento-de-aplicacoes/automacao/azion-github-app/).

5. **Selecione um Git Scope**

   Em **Git Scope**, selecione o escopo do template.

6. **Preencha as configurações que o template solicita**

7. **Selecione Deploy**

A página do deploy mostra o **Deploy Log** enquanto o projeto passa pelo build. Em caso de sucesso, ela mostra **Successfully created!**, a URL do domínio e um botão **Manage** que abre a aplicação.

**CLI**

Execute `azion init` com um nome de projeto. No primeiro seletor, selecione *Hugo*; no segundo, selecione um template:

```bash
azion init --name my-site --auto -y
```

Com `-y`, o comando instala as dependências. Com `--auto`, ele não pergunta sobre um servidor de desenvolvimento local nem sobre um deploy. Para as perguntas que ele faz sem essas opções, consulte [Azion CLI init](/pt-br/documentacao/devtools/cli/init/). Com o template *Hugo Boilerplate*, a saída é:

```text
? Choose a preset:  [Use arrows to move, type to filter]
> AI Studio
  Angular
  Astro
  Docusaurus
  Eleventy
  Emscripten
  Gatsby
  Hexo
  Hono
  Hugo
  Javascript
  Jekyll
  Next
  Nuxt
  OpenNextJS
  Preact
  Qwik
  React
  Rustwasm
  Stencil
  Svelte
  Typescript
  Vitepress
  Vue
  Vuepress
? Choose a preset: Hugo
? Choose a template:  [Use arrows to move, type to filter]
> Hugo Boilerplate
  Influencer Hugo
  Vex Hugo
? Choose a template: Hugo Boilerplate

Fetching selected template...

Template successfully fetched
Template successfully configured
Installing application dependencies
added 116 packages, and audited 117 packages in 11s
42 packages are looking for funding
run `npm fund` for details
13 vulnerabilities (6 moderate, 3 high, 4 critical)

To address all issues (including breaking changes), run:
  npm audit fix --force

Run `npm audit` for details.
…
[Azion] [Build] › ℹ  info      Using preset: hugo
[Azion] [Build] › ✔  success   Build completed successfully with only azion.config
[Azion] [IaC] › ✔  success   Manifest generated successfully at <project-dir>/my-site/.edge/manifest.json
If you want to start a local development server later, run 'azion dev'
Make sure to change to the new working directory before running building or deploying your project
If you want to deploy your application later, run 'azion deploy'
Make sure to change to the new working directory before running building or deploying your project
Your application my-site was initialized successfully
```

O projeto fica em uma pasta `my-site`. O `azion.config.cjs` dele define o preset `hugo` e envia `./public` para um bucket de armazenamento que os workloads só podem ler. Para todas as configurações desse arquivo, consulte [azion.config.js](/pt-br/documentacao/devtools/cli/azion-config-js/).

Para fazer o build do site, execute `azion build` na pasta do projeto:

```bash
cd my-site
azion build
```

O Azion Bundler executa o build do Hugo com o preset `hugo`, usando a cópia do Hugo que o template instalou, e o site fica em `public`:

```text
Building your Application. This process may take a few minutes
Running build step command:

$ npx --yes  @aziontech/bundler@1.1.4 build --preset hugo
…
[Azion] [Build] › ℹ  info      Using preset: hugo
[Azion] [Pre-Build] › ℹ  info      Starting pre-build...
…
[Hugo] › ℹ  info      Start building sites …

[Hugo] › ℹ  info      hugo v0.122.0

[Hugo] › ℹ  info

[Hugo] › ℹ  info                         | EN
-------------------+-----
  Pages            | 10
  Paginator pages  |  0
  Non-page files   |  0
  Static files     |  1
  Processed images |  0
  Aliases          |  1
  Sitemaps         |  1
  Cleaned          |  0

Total in 32 ms

[Azion] [Pre-Build] › ℹ  info      Pre-build completed successfully
[Azion] [Build] › ℹ  info      Using built-in handler from "hugo" preset.
[Azion] [Build] › ℹ  info      Starting build...
[Azion] [Build] › ✔  success   Build completed successfully
[Azion] [Post-Build] › ℹ  info      Starting post-build...
[Azion] [Post-Build] › ✔  success   Post-build completed successfully
[Azion] [Storage] › ℹ  info      Using provided prefix for storage '$BUCKET_NAME': $BUCKET_PREFIX
[Azion] [IaC] › ✔  success   Manifest generated successfully at <project-dir>/my-site/.edge/manifest.json
Your Application was built successfully
```

Para fazer o deploy do site, execute `azion deploy` na pasta do projeto:

```bash
azion deploy
```

O deploy envia o projeto e abre a página do Console que o acompanha, e imprime a URL dessa página caso nenhum navegador abra. No final, ele imprime a URL do domínio do site. Para a saída completa e todas as flags, consulte [Azion CLI deploy](/pt-br/documentacao/devtools/cli/deploy/).

Para visualizar o site na sua máquina antes, consulte [Azion CLI dev](/pt-br/documentacao/devtools/cli/dev-comando/). Para um projeto Hugo que você já tem, execute `azion link` na pasta dele e selecione o preset Hugo, como descreve [Azion CLI link](/pt-br/documentacao/devtools/cli/link-comando/).

---

## Verifique o site

O deploy fornece a URL do domínio da Azion do site, no formato `https://xxxxxxxxxx.map.azionedge.net`. A página do deploy no Console mostra essa URL, e o `azion deploy` a imprime ao terminar. Abra essa URL em um navegador para ver o site Hugo.

O primeiro deploy pode levar vários minutos para responder em todas as localidades; os deploys seguintes levam cerca de dois minutos. Uma localidade que ainda não recebeu o site responde com uma página `404` que diz `There's nothing here yet`. Se você receber essa página, aguarde e solicite a URL novamente.

---

## Próximos passos

- [Compatibilidade com frameworks](/pt-br/documentacao/devtools/runtime/frameworks/compatibilidade-frameworks.md): Veja todos os frameworks e presets de que a Azion faz o build.
- [Azion CLI deploy](/pt-br/documentacao/devtools/cli/deploy.md): Leia a saída do deploy e as flags que alteram um deploy.
- [Hugo Boilerplate](/pt-br/documentacao/guias/desenvolvimento-de-aplicacoes/frameworks/hugo-boilerplate.md): Faça o deploy do template inicial Hugo e gerencie a aplicação que ele cria.
- [azion.config.js](/pt-br/documentacao/devtools/cli/azion-config-js.md): Altere o bucket, o cache e as regras que o preset Hugo gera.
