Я запускаю Jenkins на docker контейнере, а также устанавливаю golang в контейнерной среде ниже - файл docker
FROM jenkins/jenkins
USER root
# FROM golang
ENV GOLANG_VERSION 1.13.5
ENV GOLANG_DOWNLOAD_URL https://golang.org/dl/go$GOLANG_VERSION.linux-amd64.tar.gz
RUN curl -fsSL "$GOLANG_DOWNLOAD_URL" -o golang.tar.gz \
&& tar -C /usr/local -xzf golang.tar.gz \
&& rm golang.tar.gz
ENV GOPATH /go
ENV PATH $GOPATH/bin:/usr/local/go/bin:$PATH
RUN mkdir -p "$GOPATH/src" "$GOPATH/bin" && chmod -R 777 "$GOPATH"
USER jenkins
после создания образа docker, в который я запускаю его контейнер на порт 8080
. Когда я нажимаю URL localhost:8080
, открывается пользовательский интерфейс Jenkins и создается задание Jenkins. Я клонирую свой репозиторий git, и в разделе сборки конфигурации задания есть команды Выполнить оболочки:
go get -u github.com/golang/dep/cmd/dep
dep init
dep ensure
cd test_case
go test -v *.go
Я также запускаю команду с go get
, чтобы установить все зависимости, затем произойдет покажи мне ошибку в консоли сборки.
Для приведенной выше конфигурации я сталкиваюсь с ошибкой:
+ go get -u github.com/golang/dep/cmd/dep
+ dep init
init failed: unable to detect the containing GOPATH: /var/jenkins_home/workspace/goapp is not within a known GOPATH/src
Build step 'Execute shell' marked build as failure
Finished: FAILURE
Кто-нибудь может мне помочь с этим? Если есть какая-либо ошибка, пожалуйста, скажите мне, потому что я новичок в docker и Дженкинс.