Sitelet https://web.archive.org/web/20220330130633/https://github.com/bob-cd/bob/issues/97
Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Figure out necessary java modules #97

Closed
lispyclouds opened this issue Mar 20, 2021 · 3 comments
Closed

Figure out necessary java modules #97

lispyclouds opened this issue Mar 20, 2021 · 3 comments

Comments

@lispyclouds
Copy link
Member

@lispyclouds lispyclouds commented Mar 20, 2021 •

So that all of the services can have a purpose built JVM via jlink and small docker images

@zerg000000
Copy link

@zerg000000 zerg000000 commented Apr 28, 2021

For a quick win, you might consider jib and distroless?

@zerg000000
Copy link

@zerg000000 zerg000000 commented Apr 28, 2021

If you aim high, GraalVM native-image would be more interesting?

@lispyclouds
Copy link
Member Author

@lispyclouds lispyclouds commented Apr 28, 2021

Hey @zerg000000 👋🏽

Thanks a lot for the suggestions! I have indeed looked at distroless but not jib yet. Since jlink produces a custom JVM for Bob's needs I'm thinking with jlink+alpine would it be a smaller image than with distroless as I understand it would still pack all the modules? I'm not sure, hence didnt really give this more time now. However I would love to see if it indeed does and that would be nice as we have to do much less of an effort. 😄

Having said that, if you would like to raise some PRs for this, they would be swiftly addressed! I would like to find more time to think this over and if you want to take this up its much much appreciated! 🙏🏽

I think a native image would not be so suited for the following reasons:

  • This is a long running app and would benefit from the JVM's JIT, which is not present when we AOT compile it. Native images are more suitable for fast startup and quickly finishing apps.
  • We pull in a fair amount of deps here and making sure all are Graal compatible is non-trivial.

Bob CD automation moved this from Backlog to Done Sep 18, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
Bob CD
  
Done
Linked pull requests

Successfully merging a pull request may close this issue.

None yet
2 participants