Как использовать go build для создания динамического исполняемого двоичного файла, который может работать в Docker-контейнере? - PullRequest
0 голосов
/ 26 февраля 2019

Я использую кросс-компиляцию для компиляции бинарной версии Linux на Mac.

GOOS=linux GOARCH=amd64 go build

Также попробовал другую команду, которую я нашел при переполнении стека.

GOOS=linux GOARCH=amd64 CGO_ENABLED=0 go build -o targetBinary

Этот двоичный файл может работать в виртуальной машине Linux.Но когда я копирую этот бинарный файл в контейнер докера linux и запускаю его.Это не может работать больше.

Мой файл Docker похож на это

FROM oraclelinux:7.5
COPY targetBinary /

Я также использую ldd для проверки цели, и докер сообщает об этом результате

[root@7578c118fe27 /]# ldd targetBinary
    not a dynamic executable
...