You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

Dockerfile 1.3KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354
  1. ## build Oragono
  2. FROM golang:rc-alpine AS build-env
  3. RUN apk add --no-cache git make curl
  4. # get oragono
  5. RUN mkdir -p /go/src/github.com/oragono
  6. WORKDIR /go/src/github.com/oragono
  7. RUN git clone --recurse-submodules https://github.com/oragono/oragono.git
  8. WORKDIR /go/src/github.com/oragono/oragono
  9. # compile
  10. RUN make
  11. ## run Oragono
  12. FROM alpine:3.9
  13. # metadata
  14. LABEL maintainer="daniel@danieloaks.net"
  15. LABEL description="Oragono is a modern, experimental IRC server written in Go"
  16. # install latest updates and configure alpine
  17. RUN apk update
  18. RUN apk upgrade
  19. RUN mkdir /lib/modules
  20. # standard ports listened on
  21. EXPOSE 6667/tcp 6697/tcp
  22. # oragono itself
  23. RUN mkdir -p /ircd-bin
  24. COPY --from=build-env /go/bin/oragono /ircd-bin
  25. COPY --from=build-env /go/src/github.com/oragono/oragono/languages /ircd-bin/languages/
  26. COPY --from=build-env /go/src/github.com/oragono/oragono/oragono.yaml /ircd-bin/oragono.yaml
  27. COPY run.sh /ircd-bin/run.sh
  28. RUN chmod +x /ircd-bin/run.sh
  29. # running volume holding config file, db, certs
  30. VOLUME /ircd
  31. WORKDIR /ircd
  32. # default motd
  33. COPY --from=build-env /go/src/github.com/oragono/oragono/oragono.motd /ircd/oragono.motd
  34. # launch
  35. ENTRYPOINT ["/ircd-bin/run.sh"]
  36. # # uncomment to debug
  37. # RUN apk add --no-cache bash
  38. # RUN apk add --no-cache vim
  39. # CMD /bin/bash