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.6KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061
  1. ## build Oragono
  2. FROM golang:1.14-alpine AS build-env
  3. RUN apk add --no-cache git make curl sed
  4. # copy oragono
  5. RUN mkdir -p /go/src/github.com/oragono/oragono
  6. WORKDIR /go/src/github.com/oragono/oragono
  7. ADD . /go/src/github.com/oragono/oragono/
  8. # modify default config file so that it doesn't die on IPv6
  9. # and so it can be exposed via 6667 by default
  10. run sed -i 's/^\(\s*\)\"127.0.0.1:6667\":.*$/\1":6667":/' /go/src/github.com/oragono/oragono/oragono.yaml
  11. run sed -i 's/^\s*\"\[::1\]:6667\":.*$//' /go/src/github.com/oragono/oragono/oragono.yaml
  12. # make sure submodules are up-to-date
  13. RUN git submodule update --init
  14. # compile
  15. RUN make
  16. ## run Oragono
  17. FROM alpine:3.9
  18. # metadata
  19. LABEL maintainer="daniel@danieloaks.net"
  20. LABEL description="Oragono is a modern, experimental IRC server written in Go"
  21. # install latest updates and configure alpine
  22. RUN apk update
  23. RUN apk upgrade
  24. RUN mkdir /lib/modules
  25. # standard ports listened on
  26. EXPOSE 6667/tcp 6697/tcp
  27. # oragono itself
  28. RUN mkdir -p /ircd-bin
  29. COPY --from=build-env /go/bin/oragono /ircd-bin
  30. COPY --from=build-env /go/src/github.com/oragono/oragono/languages /ircd-bin/languages/
  31. COPY --from=build-env /go/src/github.com/oragono/oragono/oragono.yaml /ircd-bin/oragono.yaml
  32. COPY distrib/docker/run.sh /ircd-bin/run.sh
  33. RUN chmod +x /ircd-bin/run.sh
  34. # running volume holding config file, db, certs
  35. VOLUME /ircd
  36. WORKDIR /ircd
  37. # default motd
  38. COPY --from=build-env /go/src/github.com/oragono/oragono/oragono.motd /ircd/oragono.motd
  39. # launch
  40. ENTRYPOINT ["/ircd-bin/run.sh"]
  41. # # uncomment to debug
  42. # RUN apk add --no-cache bash
  43. # RUN apk add --no-cache vim
  44. # CMD /bin/bash