We have been a lot of work with Docker in the last 1½ years, also with OpenEdge.
We have recently gone live with a customer system using Docker to handle the OpenEdge installation with AppServer, databases, WebClient and more.
The presentation we have given at PUG Challenge covers a lot of the basics and some of the things to look out for.
I am not aware of many others using Docker with OpenEdge yet. PSC have shown some interest in this area, but have not seen anything come out of that yet.
We really think that Docker is very exciting and can see many use cases with both OpenEdge and many other types of environments. Especially node.js environments are very well suited for containerization.
Regards / Med Venlig Hilsen
Thomas Hansen Director ___________________________________ appSolutions a|s
@Simon, maybe the following will help. I believe this is the presentation Thomas is referring to.
www.pugchallenge.eu/.../Do You Docker Copenhagen 201510.pdf
while we do not have anything running in production just yet we do use Docker a lot with akera.io, our short online demo (http://akera.io/online-demo/) works in a completely `dockerized` environment - one instance for database server, one for akera.io appsrv and a couple of additional ones for web-service module. As Thomas said, for node.js using Docker is very simple... all we have to do is start from repository node.js instance and install our dependencies with npm to have a new image ready and then we can spawn as many instances as needed.
The part that require Progress runtime takes a bit longer to set-up as we have to install Progress from scratch, was thinking is having Progress ready images with progress.cfg removed would be something that we could add to docker repository but licensing in a dockerized environment is not very clear either :(
I have also some node.js applications running in Docker containers. In my case the preparation is also very simple. List some dependencies, inherit from node:latest or whatever and you basically are ready to go.
Yes, it would be nice if we could use predefined OpenEdge images from the Docker hub. You could of course build your own set of images without the progress.cfg and inherit from those. Also not sure about the licensing either.
Yes, I think this presentation is similar to the one in the start post. Thanks.
Why is my post without linefeeds and when I try to edit is looks okay? On Chrome, IE and Edge...
Brian L. Bowman
we just need the 4gl runtime but you probably know that as we had a talk last year in Copenhagen... I presume 'rdbsm server'/'application server' could also make it as valid candidates.
Even if you choose not to publish those images the question is, publishing one that have required products installed (for one's needs) with the license information (progress.cfg) removed is something that we can do or that will still somehow break the license agreement?
How do you see the license model in a docker environment, does one have to have licenses for each docker image running (I should have asked maybe, can we use the same license installed on host to run multiple docker instances)?
Now I think about it is not that simple having a full install on a image on the hub (or is it? see below about the information that you can provide at install time).
So maybe we should start with a Dockerfile, copy the install files and a $DLC/install/response.ini file and actually run proinst -b response.ini. It does not take *that* much time to install OpenEdge. An after that use that image for deployment.
[/home/kraades] grep "^\[" $DLC/install/response.ini
[Product Configuration 1]
[Product Configuration 2]
[Product Configuration 3]
[Product Configuration 4]
[Type and Destination]
What we have done so far is take a copy of a local install of OpenEdge on linux, tweaked it a little and then added this to a docker build as the base image.
We then have other images built from this for special purposes. So for example, we have
whogloo/openedge116 - as the base image
whogloo/appserver116 - which has been built FROM whogloo/openedge116 with a separate Dockerfile.
This has various things to support AppServer, aia, and more.
One of the challenges with OpenEdge is that there are many components to an OE installation, so it is difficult to build images that follow the general rule of thumb with one container for one process.
You also run into challenges with databases and dynamic ports. If you need shared memory access to your databases, you have to run databases and e.g. AppServer inside the same container, etc. etc.
We have a working setup though where we can easily provision various OpenEdge related container collections with nice things custom URLs so that you can access the admin server, appserver etc for each of your containers.
Looks pretty powerful.
Getting started developing with Docker and Azure Container Service
I'm working on a getting started series for akera.io and the first part(s) are about docker and how we use it with OpenEdge... first part, building OpenEdge images: acorn.ro/.../