Не удается найти ошибку пакета при использовании go-модулей внутри Docker-контейнеров - PullRequest
1 голос
/ 12 марта 2019

Учитывая, что у меня есть некоторый опыт работы с Docker-контейнерами, я решил использовать Docker-контейнеры, чтобы создать среду и учиться.Ниже приведен мой dockerfile для веб-приложения go.

FROM golang:1.12.0-alpine3.9 as base

ARG GO111MODULE=on

RUN apk update && apk add make bash git

COPY ./app /go/src/app
WORKDIR /go/src/app
RUN go build

COPY ./compose/local/golang/entrypoint.sh /entrypoint.sh
RUN chmod +x /entrypoint.sh

RUN go get github.com/oxequa/realize

ENTRYPOINT [ "/entrypoint.sh" ]
CMD ["realize", "start"]

Мой файл go.mod

module github.com/rajeshyogeshwar/demoapp

go 1.12

require (
    github.com/Sirupsen/logrus v1.0.6
    github.com/joho/godotenv v1.3.0
    github.com/julienschmidt/httprouter v1.2.0
    github.com/lib/pq v1.0.0
    github.com/spf13/cobra v0.0.3
    github.com/spf13/viper v1.2.0
)

и, наконец, структура папок моего проекта

enter image description here

Как мы видим, я пытаюсь использовать модуль httprouter, и он был определен в моем файле go.mod.Но я продолжаю получать следующую ошибку.

app_1        | [06:46:56][APP] : Install 
app_1        |  main.go:8:2: cannot find package "github.com/julienschmidt/httprouter" in any of:
app_1        |  /usr/local/go/src/github.com/julienschmidt/httprouter (from $GOROOT)
app_1        |  /go/src/github.com/julienschmidt/httprouter (from $GOPATH)

Так что, если кто-то может указать на очевидную ошибку, было бы здорово.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...