|
@@ -6,20 +6,37 @@ RUN apt-get install -y git
|
6
|
6
|
RUN mkdir -p /go/src/github.com/oragono
|
7
|
7
|
WORKDIR /go/src/github.com/oragono
|
8
|
8
|
|
9
|
|
-RUN git clone https://github.com/oragono/oragono.git
|
|
9
|
+RUN git clone -b stable https://github.com/oragono/oragono.git
|
10
|
10
|
WORKDIR /go/src/github.com/oragono/oragono
|
11
|
11
|
RUN git submodule update --init
|
12
|
|
-RUN make linux
|
13
|
12
|
|
14
|
|
-# run in Alpine, being a lightweight distro
|
15
|
|
-FROM alpine:latest
|
|
13
|
+# compile
|
|
14
|
+RUN CGO_ENABLED=0 GOOS=linux GOARCH=amd64 go build -ldflags "-s" -o build/docker/oragono oragono.go
|
|
15
|
+
|
|
16
|
+# run in a lightweight distro
|
|
17
|
+FROM alpine
|
|
18
|
+
|
|
19
|
+# install latest updates and configure alpine
|
|
20
|
+RUN apk update
|
|
21
|
+RUN apk upgrade
|
|
22
|
+RUN mkdir /lib/modules
|
|
23
|
+
|
|
24
|
+# standard ports listened on
|
16
|
25
|
EXPOSE 6667/tcp 6697/tcp
|
17
|
26
|
|
|
27
|
+# prep and copy oragono from build environment
|
18
|
28
|
RUN mkdir -p /ircd
|
19
|
29
|
WORKDIR /ircd
|
|
30
|
+COPY --from=build-env /go/src/github.com/oragono/oragono/build/docker/ .
|
|
31
|
+COPY --from=build-env /go/src/github.com/oragono/oragono/oragono.yaml ./ircd.yaml
|
|
32
|
+
|
|
33
|
+# init
|
|
34
|
+RUN ./oragono initdb
|
|
35
|
+RUN ./oragono mkcerts
|
20
|
36
|
|
21
|
|
-COPY --from=build-env /go/src/github.com/oragono/oragono/build/oragono-XXX-linux.tgz /
|
22
|
|
-RUN tar -xzf /oragono-XXX-linux.tgz
|
23
|
|
-COPY run.sh /ircd
|
|
37
|
+# launch
|
|
38
|
+CMD ./oragono run
|
24
|
39
|
|
25
|
|
-CMD ["./run.sh"]
|
|
40
|
+# uncomment to debug
|
|
41
|
+#RUN apk add bash nano
|
|
42
|
+#CMD /bin/bash
|