Java util logger logging to 2 separate files and re-routed to stderr and stdout via symbolic links
1.3K
Java util logger logging to 2 separate files and re-routed to stderr and stdout via symbolic links in Dockerfile.
Shows difference between writing logs to file (using the tag ":to-file") vs re-directing to stderr and stdout with tag ":symbolic-links" and ":latest".
Check out Blog Post: http://mvpjava.com/docker-logging-symlink-hack/ Check out YouTube Video Tutorial: https://youtu.be/TFCua2yj09Y
Bypass container read/write layer.
Can confirm by launching 2 containers (one with :to-file tag and another with tag ":symbolic-links" OR ":latest")
$ docker container run -d --rm --name java-docker-log-demo-to-file mvpjava/java-docker-logging:to-file
$ docker container run -d --rm --name java-docker-log-demo-sym-links mvpjava/java-docker-logging:symbolic-links
$ watch docker ps -s
Multiplex logs which can be retrieved via ...
$ docker container logs java-docker-log-demo-sym-links (note: contains both stderr and stdout)
$ docker container logs java-docker-log-demo-to-file (note: does NOT contain BOTH stderr and stdout)
FROM openjdk:14
COPY logging-demo-0.0.1-SNAPSHOT.jar /tmp
RUN ln -sf /dev/stdout /tmp/java-app.log
&& ln -sf /dev/stderr /tmp/java-app-errors.log
CMD java -jar /tmp/logging-demo-0.0.1-SNAPSHOT.jar
FROM openjdk:14
COPY logging-demo-0.0.1-SNAPSHOT.jar /tmp
CMD java -jar /tmp/logging-demo-0.0.1-SNAPSHOT.jar
Content type
Image
Digest
Size
251.6 MB
Last updated
over 6 years ago
docker pull mvpjava/java-docker-logging