fabric-samples/asset-transfer-basic/chaincode-java/Dockerfile
Matthew B White ecbf3f5db1
Support for using podman with the test-network (#596)
* Experimental Support for using podman with the test-network

Signed-off-by: Matthew B White <whitemat@uk.ibm.com>

* supplement podman with nerdctl

Signed-off-by: Josh Kneubuhl <jkneubuh@us.ibm.com>

* adds experimental support for nerdctl compose

Signed-off-by: Josh Kneubuhl <jkneubuh@us.ibm.com>

* install fabric images to containerd with 'nerdctl' pull

Signed-off-by: Josh Kneubuhl <jkneubuh@us.ibm.com>

* Podman Support

Use a core set of compose files, with overlays for specific details.
In the case of podman, the overlays refer to a specific core.yaml for the peer that distables the use of teh
docker daemon

In the case of docker, the overlays add enable the docker daemon accesss for the peer to create chaincode
containers

Signed-off-by: Matthew B White <whitemat@uk.ibm.com>

Co-authored-by: Josh Kneubuhl <jkneubuh@us.ibm.com>
2022-02-08 06:41:56 -05:00

31 lines
972 B
Docker
Executable file

# the first stage
FROM gradle:jdk11 AS GRADLE_BUILD
# copy the build.gradle and src code to the container
COPY src/ src/
COPY build.gradle ./
# Build and package our code
RUN gradle --no-daemon build shadowJar -x checkstyleMain -x checkstyleTest
# the second stage of our build just needs the compiled files
FROM openjdk:11-jre
ARG CC_SERVER_PORT=9999
# Setup tini to work better handle signals
ENV TINI_VERSION v0.19.0
ADD https://github.com/krallin/tini/releases/download/${TINI_VERSION}/tini /tini
RUN chmod +x /tini
RUN addgroup --system javauser && useradd -g javauser javauser
# copy only the artifacts we need from the first stage and discard the rest
COPY --chown=javauser:javauser --from=GRADLE_BUILD /home/gradle/build/libs/chaincode.jar /chaincode.jar
COPY --chown=javauser:javauser docker/docker-entrypoint.sh /docker-entrypoint.sh
ENV PORT $CC_SERVER_PORT
EXPOSE $CC_SERVER_PORT
USER javauser
ENTRYPOINT [ "/tini", "--", "/docker-entrypoint.sh" ]