
Running Oracle JDK on Docker? You're Breaking the Law - tkfx
http://blog.takipi.com/running-java-on-docker-youre-breaking-the-law/
======
kisstheblade
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.

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

~~~
twic
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.

~~~
Leon
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.

~~~
subway
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.

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

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

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

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

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

------
caboteria
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?

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

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

------
atgreen
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](https://access.redhat.com/articles/1299013)

------
kodablah
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/](https://www.azul.com/products/zulu/docker/)

~~~
pron
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.

------
StreamBright
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).

------
gmuslera
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.

