我正在尝试将我在这里找到的go包装暂停...
https://github.com/siddontang/go-mysql-elasticsearch
docker镜像比在所有服务器上安装go方便得多。但是以下dockerfile无效。
FROM golang:1.6-onbuild
RUN go get github.com/siddontang/go-mysql-elasticsearch
RUN cd $GOPATH/src/github.com/siddontang/go-mysql-elasticsearch
RUN make
RUN ./bin/go-mysql-elasticsearch -config=./etc/river.toml
如何使用简洁的dockerfile直接从github构建go包?
更新
https://hub.docker.com/r/eaglechen/go-mysql-elasticsearch/
我找到了可以执行此操作的确切dockerfile。但是该页面上提到的docker命令不起作用。它不会启动go包,也不会启动容器。
答案 0 :(得分:2)
这取决于“不工作”的含义,但RUN ./bin / ...表示从当前工作目录(/go/src/app
in golang/1.6/onbuild/Dockerfile
)运行。
而go build in Makefile会将二进制文件放入
$GOPATH/src/github.com/siddontang/go-mysql-elasticsearch/bin/...
所以你需要添加到你的Dockerfile:
WORKDIR $GOPATH/src/github.com/siddontang/go-mysql-elasticsearch
答案 1 :(得分:0)