Sobes.tech
Junior — Middle

Como é que realiza o deployment de serviços na sua prática?

sobes.tech IA

Resposta da IA

Na minha prática, a implantação de serviços em Go geralmente ocorre usando conteinerização (Docker) e orquestração (por exemplo, Kubernetes). Passos principais:

  1. Compilar o binário usando go build.
  2. Criar uma imagem Docker com esse binário.
  3. Carregar a imagem em um registro (Docker Hub, registro privado).
  4. Implantar o contêiner em um servidor ou em um cluster Kubernetes com as configurações necessárias (variáveis de ambiente, volumes, redes).

Exemplo de Dockerfile para um serviço em Go:

FROM golang:1.20-alpine AS builder
WORKDIR /app
COPY . .
RUN go build -o myservice

FROM alpine:latest
WORKDIR /app
COPY --from=builder /app/myservice .
CMD ["./myservice"]

Também uso pipelines CI/CD (GitLab CI, GitHub Actions) para automatizar a compilação e o deploy.