Dockerfile 1.2 KB
Newer Older
A
Avi Aryan 已提交
1
#
A
Avi Aryan 已提交
2
# abc Dockerfile
A
Avi Aryan 已提交
3
# docker build --build-arg ABC_BUILD=oss -t abc .
A
Avi Aryan 已提交
4
# private: docker build --build-arg ABC_BUILD=noss -t abc .
5
# docker volume create --name abc
6
# docker run -i --rm -v abc:/root abc login google
7
# root is $HOME, -i for stdin, --rm to remove container
A
Avi Aryan 已提交
8 9 10
#

# Pull the base image
J
Jeet Parekh 已提交
11
FROM golang:1.12.5 AS builder
S
Siddharth Kothari 已提交
12
MAINTAINER Siddharth Kothari <siddharth@appbase.io>
A
Avi Aryan 已提交
13

A
Avi Aryan 已提交
14 15 16 17
# Get build variant
ARG ABC_BUILD=oss
ENV ABC_BUILD ${ABC_BUILD}

J
Jeet Parekh 已提交
18 19 20
RUN apt-get update && \
	apt-get install -y libssl-dev && \
	mkdir -p $GOPATH/github.com/src/appbaseio/abc && \
J
Jeet Parekh 已提交
21 22 23
	mkdir -p /abc && \
	curl -LO https://github.com/neo4j-drivers/seabolt/releases/download/v1.7.4/seabolt-1.7.4-Linux-ubuntu-18.04.deb && \
	dpkg -i seabolt-1.7.4-Linux-ubuntu-18.04.deb && \
J
Jeet Parekh 已提交
24 25
	go get github.com/neo4j/neo4j-go-driver/neo4j && \
	go get gopkg.in/olivere/elastic.v7
J
Jeet Parekh 已提交
26 27

WORKDIR $GOPATH/src/github.com/appbaseio/abc
A
Avi Aryan 已提交
28

J
Jeet Parekh 已提交
29
COPY . .
A
Avi Aryan 已提交
30

31
RUN go build -tags "seabolt_static $ABC_BUILD" -o /abc/abc ./cmd/abc/...
J
Jeet Parekh 已提交
32 33 34 35 36 37 38 39

FROM ubuntu:bionic
MAINTAINER Siddharth Kothari <siddharth@appbase.io>

# certs
RUN apt-get update && \
	apt-get install -y ca-certificates && \
	update-ca-certificates
A
Avi Aryan 已提交
40

J
Jeet Parekh 已提交
41
COPY --from=builder /abc/abc /abc/abc
A
Avi Aryan 已提交
42 43 44

# Define default entrypoint
# Entrypoint gets extra parameters from docker run
J
Jeet Parekh 已提交
45
ENTRYPOINT ["/abc/abc"]