These questions can easily devolve into philosophizing, so let me be concrete:
- There is open source software
X
licensed under the GNU General Public License (v2 or later). X
runs as a stand-alone Java socket server process, i.e.java -cp x-gpl.jar edu.x.SocketServer -port 8000 …
. No modifications needed nor done, this is howX
works out of the box.- I'm calling this socket server from my own program
Y
. - Both the socket server
X
and my programY
processes run inside Docker (Ubuntu Linux), launched from that Docker'ssupervisord.conf
on container startup. - I want to distribute this Docker image to 3rd parties, as a commercial proprietary application.
Now, the question is, is this particular combination of X
, Y
and Docker in line with GPL v2 or later? Does it constitute derivate work, or aggregate work, in the GPL Section 5 sense? Does my program Y
or the entire distributed Docker image need to be licensed as GPL?
Happy to provide additional details if relevant, but please avoid irrelevant tangents. Thanks!
Other related (but overly generic) questions:
Are all docker images free (i.e. GPL)?
Is a program that forks a GPL-licensed program via a system or vice versa call derivative work?