Go

Guia completo para hospedar aplicações Go na Discloud.

📁 Preparando os Arquivos

Antes de fazer upload do seu projeto, você deve excluir arquivos desnecessários para otimizar o deploy.

Arquivos a Excluir

Certifique-se de que os seguintes arquivos e diretórios não sejam incluídos no seu .zip:

- bin/
- *.exe
- .git/

📌 Use um arquivo .discloudignore para excluir automaticamente esses arquivos. Não exclua go.mod ou go.sum.

🔗 Precisa de ajuda para configurar seu go.mod ou encontrar o arquivo principal?


🌐 Hospedando Websites & APIs em Go

Antes de fazer deploy do seu website ou API na Discloud, certifique-se de que você atenda aos seguintes requisitos:

package main

import (
  "log"
  "os"
  "os/signal"
  "syscall"
  "github.com/bwmarrin/discordgo"
)

func main() {
  token := os.Getenv("DISCORD_TOKEN")
  if token == "" { log.Fatal("DISCORD_TOKEN não definido") }

  dg, err := discordgo.New("Bot " + token)
  if err != nil { log.Fatal(err) }

  dg.AddHandler(func(s *discordgo.Session, r *discordgo.Ready) {
    log.Println("Bot está pronto")
  })

  if err := dg.Open(); err != nil { log.Fatal(err) }
  log.Println("Bot executando. Pressione CTRL+C para sair.")

  stop := make(chan os.Signal, 1)
  signal.Notify(stop, os.Interrupt, syscall.SIGTERM)
  <-stop
  dg.Close()
}

Bots não precisam bindar nenhuma porta HTTP. Eles só precisam manter o processo vivo.


✍️ Fazendo Deploy da Sua Aplicação

Uma vez que seu projeto esteja configurado e comprimido, você pode escolher um dos seguintes métodos de deploy na Discloud:

Last updated