2
0
mirror of https://github.com/VinylDNS/vinyldns synced 2025-08-21 17:37:15 +00:00
vinyldns/build/docker/api/Dockerfile
Paul Cleary 1de710b991
Update dependencies (#939)
* Updating dependencies

Updated almost all dependencies to current.  There were some issues with
akka-http 10.1.11 so I stayed with 10.1.10 for the time being.

Func tests passed locally and manual review of the UI looks to be good

Significant changes are:

- `pureconfig` - this update had breaking syntax, so I had to update everywhere
  we use pureconfig.  Functionally it is the same, just different syntax
- `scalatest` - this was a big change, as scalatest has refactored out things
  like Mockito and scalacheck.  Many imports changed.
- `Java11` - formally moved everything to java 11.  This required some new
  dependencies like `javax.activation` and `java.xml.bind`

* Updating travis to JDK 11

* Finishing JDK 11 update

In order to update to JDK 11, needed to modify several docker things.

Removed timeout test that was causing issues as timeout tests here are not good
for running in travis.
2020-04-28 09:08:03 -05:00

32 lines
984 B
Docker

FROM hseeberger/scala-sbt:11.0.7_1.3.10_2.11.12
ARG BRANCH=master
ARG VINYLDNS_VERSION
RUN git clone -b ${BRANCH} --single-branch --depth 1 https://github.com/vinyldns/vinyldns.git /vinyldns
# The default jvmopts are huge, meant for running everything, use a paired down version
COPY .jvmopts /vinyldns
RUN cd /vinyldns ; sbt "set version in ThisBuild := \"${VINYLDNS_VERSION}\"" api/stage
FROM adoptopenjdk/openjdk11:jdk-11.0.7_10-alpine
RUN apk add --update --no-cache netcat-openbsd bash
COPY --from=builder /vinyldns/modules/api/target/universal/stage /opt/docker
# This will set the vinyldns version, make sure to have this in config... version = ${?VINYLDNS_VERSION}
ARG VINYLDNS_VERSION
ENV VINYLDNS_VERSION=$VINYLDNS_VERSION
RUN mkdir -p /opt/docker/lib_extra
# Mount the volume for config file and lib extras
# Note: These volume names are used in the build.sbt
VOLUME ["/opt/docker/lib_extra/", "/opt/docker/conf"]
EXPOSE 9000
ENTRYPOINT ["/opt/docker/bin/api"]