TL;DR You can now take your Docker images for WebSphere Application Server Full and Liberty Profile into production and get support. We’ve provided some resources to build production Liberty images and made them available on WASdev GitHub.

Production Support

In case you missed it, tucked away in our February announcement was a statement indicating that we now fully support the use of both the Liberty Profile and Full Profile of WebSphere Application Server running inside Docker containers. This means that, when using WebSphere under Docker, you can get the same level of support that you would get on any of our other supported platforms. That’s regardless of whether you’re using one of the images described below or whether you created it yourself.

Images on Docker Hub

We released our image on Docker Hub back in December which can be pulled from the official repository websphere-liberty. This currently points to our latest 8.5.5 fix pack and, whilst always free for development usage, as of 8.5.5.5 you can also use this in test/production providing you stay below a total of 2GB heap size across your organisation as outlined in Tom’s post. This was recently joined by a second image containing our latest monthly Liberty beta, available as websphere-liberty:beta, giving you quick and easy access to the latest Java EE 7 features on your favorite application server!

Don’t forget that you aren’t limited to the features that are built in to the image. You can always add layers to the image pulling in other features from the online Liberty repository. For example, the following simple Dockerfile could be used to build an image that adds in the MongoDB feature.

FROM websphere-liberty
RUN featureManager install --acceptLicense mongodb-2.0

Building Images for Development and Production Use

If you have purchased WebSphere Liberty we now give you two routes to quickly and simply create a Docker image with a production license. This means that you can get consistency across environments by building an image in development and then running that unmodified in production. The two options are as follows:

  1. Upgrade the image from Docker Hub to Liberty Base or  ND: If entitled, on Passport Advantage you can now download small, executable JAR files that will allow you to upgrade a developer install to Liberty Base or ND (search for part number CN4Y6ML and CN4Y7ML respectively). We have made available documentation and a Dockerfile on WASdev GitHub that allow you to very simply create a small layer on top of the Docker Hub image that gives you a fully licensed Liberty Base or ND image.
  2. Build your own Liberty Core, Base or ND image: If you’d rather not start with our Docker Hub image, or want to create a Liberty Core image, we have also provided Dockerfiles to allow you to build your own using Liberty binaries from Passport Advantage and an IBM JRE from developerWorks. On WASdev GitHub we’ve documented two approaches depending on whether or not you’re prepared to host the binaries somewhere to pull them in to the image (which results in a smaller image size). Feel free to edit this Dockerfile to meet your own needs, for example if you’d rather pick a different base operating system image to start from.

Let us know what other resources you’d like to see around WebSphere and Docker. Just leave a comment below or open an issue on GitHub.

 

11 comments on"WebSphere under Docker: from Development to Production"

  1. We develop a jee based product which is supported to run on Websphere application server. Typically we deliver the deployables (EAR/WAR) to our customers. Customers purchase the license for websphere application server and deploy EAR given by us on the server in production.
    Now we want to move to deployment of application on websphere application server in docker in production. How can product docker image be delivered to customer by taking care of license requirement of websphere. It is difficult for product to get licensed binaries of websphere from each customer and build docker image of websphere out of it and use this websphere image to build docker image of product. Other option is we provide dockerfile to customer along with deployables and ask customers to build final docker image by using websphere docker image created out of licensed binaries which customer will purchase. Risk in this approach is customer may wrongly modify the dockerfile given by product.

    What is the best way to dockerize our product along with websphere application server for production usage.

    Thanks.

    • David Currie August 22, 2017

      From a technical perspective you could build your application on top of the developer image and then have the customer use the license upgrade approach documented in this article. The difficulty is that, in sharing that image with you customers, you would effectively be redistributing WebSphere and IBM Java. For that you would need a Business Partner agreement. Without that, the Dockerfile approach that you describe would be your best bet.

  2. Is it possible or has it been done by your team that you have taken the WebSphere image and built other IBM products such as FileNet or case manager on top of it? If yes are there any pointers on how to begin with it?

    • David Currie August 22, 2017

      Ronny – we do have teams internally looking at building stack products on top of our Docker images but I’m not aware that FileNet is one of them nor am I aware of any external documentation.

  3. The highlander April 18, 2017

    What’s the licencing like? Is it the same as virtual pvu of virtual cores?

    • David Currie April 24, 2017

      Today the licensing model is effectively as if the container were not there i.e. PVU or vCPU at the level of the Docker host (bare metal or VM if you are eligible for sub-cap licensing). If you’re interested in talking about alternative models then drop me an email: david_currie@uk.ibm.com

  4. According to your instructions, I went to Passport Advantage site for CN4Y6ML and CN4Y7ML. I was not able to find them, even with PA online help. Can you please provide a pointer there?

    • David Currie October 02, 2015

      Hi Min,

      Sorry – looks like the part numbers have changed since I wrote this. They are now CN73QML for Base and CN73RML for ND. In case they change again they’re called “IBM WebSphere Application Server License Upgrade for Liberty Profile V8.5.5 for Multiplatform Multilingual” and “IBM WebSphere Application Server Network Deployment License Upgrade for Liberty Profile V8.5.5 for Multiplatform Multilingual” respectively. Note that there appears to be a problem with the file names at the moment as they say 8.5.5.5 but they’re actually 8.5.5.7. I’ll follow up on that.

      Regards,
      David

  5. Great post! Great Idea!

    I need to create an image to distribute internally for my developers.

    On my company, i’ve WebSphere ND v7.0 for my production environment, and WebSphere for Developers v7.0 for my development team.

    It’s possible create an image from WebSphere for Developers?

    • David Currie April 29, 2015

      Hi André – it’s certainly possible. See some of the videos in the WAS and Docker section of the WASdev YouTube channel for examples of running Full Profile under Docker:
      https://www.youtube.com/user/WASdev

      We hope to make artifacts available around this in the future.

      Regards,
      David

Join The Discussion

Your email address will not be published. Required fields are marked *