Hacker Newsnew | past | comments | ask | show | jobs | submitlogin
Running Oracle JDK on Docker? You're Breaking the Law (takipi.com)
38 points by tkfx on March 10, 2016 | hide | past | favorite | 19 comments


Or just download the jdk normally, accept license, create your own docker image with the jdk fully installed and you are ready to go. Not breaking any laws here (or even licence agreements, there's a difference you know!), so please change the silly headline.


If you're distributing your image in any way / creating copies etc. then you do


If you're giving copies to other people, that's distribution, which is dicey, but if you're making copies for your own use, that's reproduction, which is fine.


I'm agreeing with you because the alternative would make deployment processes of snapshotting built images for faster startup time against the law. If you couldn't use AMIs in AWS because the Oracle JRE is installed but instead are forced to install at launch time then that makes Oracle largely irrelevant to use in the cloud - no one wants to limit their startup time by a multiple minutes to download and install for a scaling event (and barring any network issues on their servers if hosting the installer package is seen as distribution as well). I haven't heard of any issues with moving around your own internally built virtual images with Oracle Java if you have accepted the licensing agreement for during the build and snapshot process, and using docker seems no different.


This has absolutely nothing to do with installing at launch time. This has to do with installing, then not distributing. Distributing is a very well defined term in the industry, and does not simply mean making copies, or deploying to your own machines.

Distributing means giving the built artifact to a 3rd party.

Yes, you can create your own JDK docker base image. Yes, you can deploy it at will on any of your systems. No, you can't push it to a public respository for other people to use.


Is there an actual legal distinction between the two? Even if there is it seems like in a corporate world that could be quite messy because the corporation it self could be split into multiple legal entities so if you have a group wide IT department that provides the images for developers to use it could still count as distribution.


Well that's a whole another issue than "running jdk on docker is breaking teh law!!1!", now isn't it? If you run "photoshop on docker" that doesn't magically make it ok to distribute your image willy-nilly. Oracle JDK has a licence, news at 11.


The title is misleading. It should state "Oracle JDK" instead of "Java". As proposed in the text, with OpenJDK, you are just fine.


Ok, we'll s/Java/Oracle JDK/ above.


The whole thing is misleading and mostly clickbait. Merely running Oracle's JDK on docker does not violate the license nor break any law.


In such a case, it's best to flag the story (as users indeed have).


Oh I did. Was just sticking to the first rule of flag club.


We switched from the Oracle JDK to OpenJDK a couple of months back and it's going fine. It's nice to "yum install openjdk" and not have to worry about license gotchas. What are the advantages to the Oracle JDK that we're missing?


I believe the only worth feature missing is Flight Recorder/Mission Control.

You gain debug symbols that can help you investigate JVM crashes.


For what it's worth, Red Hat's OpenJDK release is validated with the TCK. So not all OpenJDK builds are equal... https://access.redhat.com/articles/1299013


These days is there any great benefit to Oracle JDK over Zulu? It can be deployed with Docker easily [1].

1 - https://www.azul.com/products/zulu/docker/


The main advantage is the monitoring/profiling tools, and in particular the awesome Java Flight Recorder. It doesn't make a difference in practice (assuming you don't want to pay for JFR, though many would), as JFR is free for use only in a development environment and not in production.


I wasn't aware of this, thanks for sharing. The lean JVM installation script is also useful (I won't re-distributed the image built that way though).


Should not be exclusive to Docker. Vagrant boxes, AWS AMIs and other premade OS images with (Oracle) Java preinstalled could fall into the same problem.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: