containers
SLF4J
containers | SLF4J | |
---|---|---|
9 | 23 | |
191 | 2,262 | |
3.1% | 0.7% | |
8.7 | 7.8 | |
5 days ago | 22 days ago | |
Dockerfile | Java | |
Apache License 2.0 | MIT License |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
containers
-
Need a VM for Java 11 and a specific Program - which distro to choose?
eclipse-temurin:11 https://hub.docker.com/_/eclipse-temurin
-
CentOS 7 vs CentOS Stream vs Rocky vs Alma vs Debian vs Ubuntu for server
Then you build the container. That will download that container that already has linux with java on it, like this one: https://hub.docker.com/_/eclipse-temurin
- Primeiros passos no desenvolvimento Java em 2023: um guia particular
-
From Java to Golang and back
You can shrink the docker image greatly by starting with an Alpine based one like this https://hub.docker.com/_/eclipse-temurin
-
MinIO passes 1B cumulative Docker Pulls
> Just imagine the vast number of poorly cached CI jobs pulling gigabytes from Docker hub on every commit, coupled with naive aproaches to CI/CD when doing microservices, prod/dev/test deployments, etc.
I hit the rate limits that others talk of in the comments, which motivated me to use Nexus for both proxying and storing my own container images.
So far, it's been pretty good, I actually wrote about the process on my blog, "Moving from GitLab Registry to Sonatype Nexus": https://blog.kronis.dev/tutorials/moving-from-gitlab-registr...
Another thing that I tried, however, was to only rely upon Docker Hub for the base images that I want (Ubuntu in my case) and then build everything I need on top of that, doing things like installing Java/Node/Python/Ruby/... manually, adding utilities I want across all of the images etc.
Once again, I wrote about it on my blog, "Using Ubuntu as the base for all of my containers": https://blog.kronis.dev/articles/using-ubuntu-as-the-base-fo...
That approach is absolutely more work, but also is something that's underexplored and works really nicely for me. Now I mostly rely on the OS package manager repositories (or mirrors of those), put less load on Docker Hub, don't risk running into its rate limits and also have common base layers across most of the images that I build, which in practice means less data actually needing to be downloaded to any of the servers where I want to utilize my images.
Of course, the downside is that getting something like PHP running was an absolute pain (tried with Apache, didn't work for some reason, then moved over to Nginx), and I technically miss out on some of the more complex space optimizations because if you look at the Dockerfiles for some of the more popular images, like OpenJDK, you'll occasionally see some interesting approaches, like getting the software package as a bunch of files and "installing" them directly, as opposed to using something like apt/yum: https://github.com/adoptium/containers/blob/08dd7d416cee0fe0...
Then again, personally I'd much prefer to rely on packages that I can get from something like apt directly, even if some of those versions can be a bit older (or add the project's official apt repositories as needed).
-
Question?
The FROM looks incorrect. When i watch the Youtube video it mentions adoptopenjdk which is deprecated (https://hub.docker.com/\_/adoptopenjdk). You now should use https://hub.docker.com/_/eclipse-temurin/.
- Uberjar hosting services?
-
Java eclipse temurin:18.0.1_10-jre-alpine is out ! Now what ?
Eclipse Temurin is maintaining a rich collection of Java images.
-
Anyone using the Alpine Musl JDK builds in production?
Intially only the 17 was the musl-native variant, later added 11 and very recently (6 days ago) for 8 as well: https://github.com/adoptium/containers/issues/72
SLF4J
- Slf4j.org TLS Certificate Expired
-
dazl — a facade for configurable/pluggable Go logging
A few years ago, my team moved from Java to Go. Working on Go projects, we encountered a wide variety of logging frameworks with different APIs, configuration, and formatting. We soon found ourselves longing for a logging abstraction layer like Java’s slf4j, which had proven invaluable for use in reusable libraries or configuring and debugging production systems. So, not long after moving to Go, we began working toward replacing what we had lost in slf4j.
-
Fargate logging thru console awslogs or directly to Cloudwatch?
I'm not familiar with Serilog as I code mostly in Java, use slf4j (logs to stdout) and our apps send logs to Cloudwatch using the task definition's awslogs configuration. I prefer it this way because I can customize the log configurations in my task definitions. Also the default stream name has this format prefix-name/container-name/ecs-task-id so I can easily identify the logs of the task I want to look at. I haven't experienced any downsides with this approach and our apps publish a shit ton of logs. Cloudwatch approach looks like you can customize the stream name?
-
How does Loggers get multiple parameters in functions
slf4j is open source. You can look at the code.
-
Logging in your API
Java -> Logback, Log4j2, JDK (Java Util Logging), Slf4j, e.t.c.
-
Primeiros passos no desenvolvimento Java em 2023: um guia particular
slf4j para padronização dos logs;
- What are some of the biggest problems you personally face in Java?
-
must known frameworks/libs/tech, every senior java developer must know(?)
SLF4J
-
Go standard library: structured, leveled logging
> My God. Logging in protobuf?
Yes, or any other data format and/or transport protocol.
I'm surprised this is up for debate.
> Logging is the lowest of all debugging utilities - its the first thing you ever do writing software - “hello world”. And, while I admire structural logging, the truth is printing strings remains (truly) the lowest common denominator across software developers.
This sort of comment is terribly miopic. You can have a logging API, and then configure your logging to transport the events anywhere, any way. This is a terribly basic feature and requirement, and one that comes out of the box with some systems. Check how SLF4J[1] is pervasive in Java, and how any SLF4J implementation offers logging to stdout or a local file as a very specific and basic usecase.
It turns out that nowadays most developers write software that runs on many computers that aren't stashed over or under their desks, and thus they need efficient and convenient ways to check what's happening either in a node or in all deployments.
[1] https://www.slf4j.org/
- Logback en Springboot
What are some alternatives?
docker-images - Official source of container configurations, images, and examples for Oracle products and projects
Apache Log4j 2 - Apache Log4j 2 is a versatile, feature-rich, efficient logging API and backend for Java.
zsh-in-docker - Install Zsh, Oh-My-Zsh and plugins inside a Docker container with one line!
Logbook - An extensible Java library for HTTP request and response logging
grype - A vulnerability scanner for container images and filesystems
tinylog - tinylog is a lightweight logging framework for Java, Kotlin, Scala, and Android
Dragonfly - This repository has be archived and moved to the new repository https://github.com/dragonflyoss/Dragonfly2.
kibana - Your window into the Elastic Stack
jetson-containers - Machine Learning Containers for NVIDIA Jetson and JetPack-L4T
graylog - Free and open log management
minecraft-docker
Logback - The reliable, generic, fast and flexible logging framework for Java.