go_br | Unsorted

Telegram-канал go_br - Go Brasil

1983

Vamos falar de Go (linguagem) Código Conduta: https://golang.org/conduct Grupos Regionais Go - @go_bh - @golangcwb

Subscribe to a channel

Go Brasil

lista de sistemas e plataformas suportadas. Cross compile do Go é lindo 😁
https://pkg.go.dev/internal/platform#pkg-variables

https://go.dev/wiki/WindowsCrossCompiling
https://go.dev/wiki/GccgoCrossCompilation
https://rakyll.org/cross-compilation/
https://go.dev/wiki/#platform-specific-information

Читать полностью…

Go Brasil

https://ruanbekker.medium.com/how-to-create-arm-based-container-images-with-buildx-fe917d186824

Читать полностью…

Go Brasil

sim localmente um go build main.go roda sem problemas

Читать полностью…

Go Brasil

Hmm tem que fazer uns experimentos, eu não vou conseguir te ajudar muito nesse momento, mas uma pergunta antes: Se você roda do go build localmente tudo compila sem problemas né?

Читать полностью…

Go Brasil

tentei com buildx setando a plarform para o amd4 mas


docker buildx build --platform linux/amd64 -t teste-go-2 . --no-cache
[+] Building 29.0s (11/12) docker:default
=> [internal] load build definition from Dockerfile 0.0s
=> => transferring dockerfile: 307B 0.0s
=> [internal] load metadata for docker.io/library/golang:1.24.5 2.0s
=> [auth] library/golang:pull token for registry-1.docker.io 0.0s
=> [internal] load .dockerignore 0.0s
=> => transferring context: 2B 0.0s
=> [builder 1/5] FROM docker.io/library/golang:1.24.5@sha256:fdcd2e5a34587bd5426c90e1531fd5ba448c89bb738df0f33860dfc69439a1f5 0.0s
=> [internal] load build context 0.0s
=> => transferring context: 140B 0.0s
=> CACHED [stage-1 1/2] WORKDIR /app 0.0s
=> CACHED [builder 2/5] WORKDIR /app 0.0s
=> [builder 3/5] RUN apt-get update -qq && apt-get install -y build-essential pkg-config 26.3s
=> [builder 4/5] COPY . . 0.0s
=> ERROR [builder 5/5] RUN go build main.go 0.6s
------
> [builder 5/5] RUN go build main.go:
0.533 go: downloading github.com/gin-gonic/gin v1.10.1
0.585 SIGSEGV: segmentation violation
0.585 PC=0x43a8ae m=1 sigcode=1 addr=0xffffffff68562e10
0.585
0.585 goroutine 0 gp=0xc000002700 m=1 mp=0xc00004e008 [idle]:
0.586 runtime.netpoll(0x398f1692a68f?)
0.586 runtime/netpoll_epoll.go:169 +0x24e fp=0xc00002df38 sp=0xc00002d8b0 pc=0x43a8ae
0.586 runtime.sysmon()
0.586 runtime/proc.go:6194 +0x2d7 fp=0xc00002dfa0 sp=0xc00002df38 pc=0x44dfd7
0.586 runtime.mstart1()
0.586 runtime/proc.go:1865 +0x93 fp=0xc00002dfc8 sp=0xc00002dfa0 pc=0x4447b3
0.586 runtime.mstart0()
0.586 runtime/proc.go:1818 +0x75 fp=0xc00002dff8 sp=0xc00002dfc8 pc=0x4446f5
0.586 runtime.mstart()
0.586 runtime/asm_amd64.s:395 +0x5 fp=0xc00002e000 sp=0xc00002dff8 pc=0x47b725
0.586
0.586 goroutine 1 gp=0xc000002380 m=nil [chan receive]:
0.586 runtime.gopark(0xc00015e180?, 0x0?, 0x7?, 0x0?, 0xc00014e150?)
0.586 runtime/proc.go:435 +0xce fp=0xc000090dc0 sp=0xc000090da0 pc=0x475a8e
0.586 runtime.chanrecv(0xc00014e150, 0x0, 0x1)
0.586 runtime/chan.go:664 +0x445 fp=0xc000090e38 sp=0xc000090dc0 pc=0x4118a5

Читать полностью…

Go Brasil

Ou fazer via CI como eu sugeri

Читать полностью…

Go Brasil

opa coloquei o --platform linux/amd64 pq o destino final e rodar numa maquina x86

Читать полностью…

Go Brasil

Agora se o objetivo é publicar esse container em outro lugar, eu acho que você vai precisar do docker buildx

Читать полностью…

Go Brasil

O erro é bem estranho, lendo tudo que você enviou a coisa mais estranha parece ser o comando docker build:

docker build --platform linux/amd64 -t teste-go-2 . --no-cache


Você está num M1 né, então provavelmente você deveria colocar linux/arm64 ao invés de amd64

Читать полностью…

Go Brasil

Isso deixa o código pouco amarrado, por exemplo se eu precisar de uma operação que atua em usuários e produtos eu posso encaixar a mesma chamada em duas interfaces, em outros casos posso ter um serviço onde eu quero ter acesso ao repo inteiro o que é ok tbm, aí faço uma interface composta, e.g.:

type RepoProvider interface{
UsersRepo
ProductsRepo
OutroRepo
}

Читать полностью…

Go Brasil

Eu já faço o extremo oposto: Faço um pacote chamado repo, separo um arquivo pra cada entidade, mas todos no mesmo namespace

Читать полностью…

Go Brasil

que eu to fazendo um api teste com Server Mux

Читать полностью…

Go Brasil

bom dia, galera que tem mais experiencia que eu, isso ta feio? eu nao entendo sobre clean code ainda.

Читать полностью…

Go Brasil

faz na base do pix 😛
conta como n sendo cnpj 😁

Читать полностью…

Go Brasil

existe por tempo determinado
mas tem varios porens

Читать полностью…

Go Brasil

vou dar uma olhada nisso

Читать полностью…

Go Brasil

mas vc quer gerar um binario para amd64? estando no mac com isso já funciona. nem precisa do docker

`env GOOS=linux GOARCH=amd64 go build -o start main.go`

Читать полностью…

Go Brasil

Você pode também experimentar fazer o mesmo processo com um main.go vazio e ver se a culpa é algo que o Gin está fazendo

Читать полностью…

Go Brasil

começou a dar os mesmos erros estranhos

Читать полностью…

Go Brasil

https://docs.docker.com/reference/cli/docker/buildx/

Читать полностью…

Go Brasil

Entendi, então acredito que o docker buildx que é o novo mecanismo de build do docker ia ser o mais aconselhável pra isso

Читать полностью…

Go Brasil

Geralmente eu não faço um docker build && docker push diretamente da minha máquina, faço isso num Github Actions ou outro CI, aí o build sempre é feito numa mesma máquina

Читать полностью…

Go Brasil

Voce pode também remover o --platform linux/amd64 o default é o sistema atual

Читать полностью…

Go Brasil

opa galera do go tudo bem.
bom preciso de uma ajuda pra entender o que esta acontencendo
minha maquina é um mac os com M1

ao tentar buildar um app simples, pois estou iniciando meus estudos, tenho um erro. E não sei o que pode esta acontecendo

segue o gist com o dockerfile o main.go e o erro
https://gist.github.com/robsonribeiros/517281096dc03e19aa0799bd46c40c0e

se poderem me ajudar agradeço demais

Читать полностью…

Go Brasil

Aí eu limito o acesso ao repositório através de interfaces, tenho uma interface chamada UsersRepo que só tem os métodos de usuário por exemplo

Читать полностью…

Go Brasil

eu ainda to pegando as manhas

Читать полностью…

Go Brasil

pô, acho q um repositorio pra cada ação é d+

Читать полностью…

Go Brasil

clt no mesmo ramo / concorrencia ai da merda
mas se o contrato clt acabar, se nao me engano ta livre
tavam querendo adicionar uma parada de exclusivodade pra clt a um tempo (🤮) mas n sei dizer que fim levou

Читать полностью…

Go Brasil

nao sei se ainda existe a maracutaia de que a pj nao pode prestar, mas a pessoa fisica que é voce pode
ja tinham mandado essa treta antes a mo tempao
mas n sei que fim tomou

Читать полностью…

Go Brasil

indeterminado é abusivo

Читать полностью…
Subscribe to a channel