Still new to Docker and trying to get a Jetty webservice to run inside a container. This is my docker file at the moment
Recipe
FROM maven:3.3-jdk-8-alpine
# Install packages
# To find packages to install see - https://pkgs.alpinelinux.org/packages
RUN apk add --no-cache curl tar bash wget apache-ant
RUN apk info
# Do any Maven configuration
ENV MAVEN_HOME /usr/share/maven
VOLUME "$USER_HOME_DIR/.m2"
ENV MAVEN_CONFIG "$USER_HOME_DIR/.m2"
# Copy over project source files to the /tmp folder
COPY . /tmp/project
WORKDIR /tmp/project
# Preinstall any Maven depencencies
RUN mvn install -pl '!deb' -DskipTests
# Default command when running the docker image, can be overriden
CMD cd webapp/ && mvn jetty:run
During the docker build I specify maven install
to install all dependencies for the project and build the jars for each module from sources.
However when then run the docker container, it still tries to reinstall all the dependencies and then fails because it cannot find my api.jar file
My project structure is like so
Project structure service
- api
- lib
- webapp
- pom.xml
Error
The following artifacts could not be resolved: com.foo.service:service-api:jar:1.14-SNAPSHOT
Doing the same steps outside of a container works fine and the jetty service starts ok. Any ideas how to fix?