У меня есть программа Golang внутри контейнера докеров (я использую Ubuntu 18). Также я использую github.com/glenn-brown/golang-pkg -pcre / src / pkg / pcre для регулярного выражения в моем приложении Golang. Перед использованием этой библиотеки я должен установить libpcre++-dev
следующим образом:
sudo apt-get install libpcre ++ - dev
Но я использую golang: alpine в моем Dockerfile, а это не libpcre++-dev
библиотека в пакетах alpine.
Какой пакет мне следует установить вместо libpcre++-dev
?
p.s. Я пытался установить libc6-compat
, pcre pcre-dev
, libpcrecpp
, но вижу эту ошибку:
github.com/glenn-brown/golang-pkg-pcre/src/pkg/pcre /go/pkg/mod/github.com/glenn-brown/[email protected]/src/ pkg / pcre / pcre.go: 52: 10: фатальная ошибка: pcre.h: нет такого файла или каталога #include ^ ~~~~~~~ компиляция прервана
Мой Dockerfile:
FROM golang:alpine
RUN apk update
RUN apk upgrade
RUN apk add --update --no-cache build-base gcc g++ pcre pcre-dev libc6-compat
# Install git + SSL ca certificates.
# Git is required for fetching the dependencies.
# Ca-certificates is required to call HTTPS endpoints.
RUN apk update && apk add --no-cache curl git ca-certificates tzdata \
&& update-ca-certificates 2> /dev/null || true
Я создаю свое приложение следующим образом:
- CGO_ENABLED=1 GOOS=linux GOARCH=amd64 go build -a -installsuffix cgo -ldflags="-w -s" -o bin/backend ./cmd/backend/main.go
ИЗМЕНИТЬ
Я изменил свой Dockerfile (добавьте строку ниже)
RUN apk add --update --no-cache build-base gcc g++ pcre pcre-dev libc6-compat
И вот у меня новая ошибка:
Ошибка при загрузке разделяемой библиотеки libpcre.so.1: нет такого файла или каталога (необходим / bin / backend)
RUN apk add --virtual build-dependencies RUn apk add --no-cache build-base gcc
попробуйте это или вы можете установить alpine sdkapk add --update alpine-sdk
- person Adiii   schedule 21.09.2019[20278] INTERNAL ERROR: cannot create temporary directory!
, но все равно получаюgithub.com/glenn-brown/golang-pkg-pcre/src/pkg/pcre /go/pkg/mod/github.com/glenn-brown/[email protected]/src/pkg/pcre/pcre.go:52:10: fatal error: pcre.h: No such file or directory #include ^~~~~~~~ compilation terminated
- person Klimbo   schedule 21.09.2019alpine
. - person David Maze   schedule 21.09.2019