- First, you can now pull images from Amazon Elastic Container Registry (ECR), including both the CF2021 image and 2018, as well as the add-on and PMT images for CF2021. These are official Adobe images, to be clear. A simple example--that works today--and will give you the CF2021 update 1 image is the following: docker pull public.ecr.aws/adobe/coldfusion:latest
- Second, soon you will be able to download them from DockerHub as well ("the way it's supposed to be", some would say). No date set for that, but indications are that it will be "very soon", according to Adobe. Update: As of June 22, 2021 Adobe has now created a repo on Dockerhub. For now, there are no images there yet, as of a check on July 6, 2021. But keep an eye on it, as it seems they will appear soon.
- Update: As of a check July 6. 2021, the bintray repo is indeed no longer available. That said, you can still use the images you may have pulled, even using the eaps.bintray.com/coldfusion repo name prefix before the image names. It's only pull requests that will fail. Going forward, use the other options above. Here's what I had written back on June 17:
Finally, despite what the Adobe and Bintray sites said about the May 1 "closure" of bintray, saying that images would be inaccessible after that date, Docker images at Bintray DO remain available for now. This includes CF2021 update 1, CF2018 update 11, CF2016 update 17, and more, so existing docker pulls against those do still work, at least as I write today, June 17 2021
Both the first two were mentioned in a comment yesterday on the Adobe CF forums.
And I discovered how the continued Bintray image availability while writing up this post to share the news about those other two!
For more information, including additional background on this transition, more on using the ECR images, and still more links to resources discussing these things, including docs on using the Adobe CF images that many never seem to notice, read on. (I also did an "in brief" version of this post on the Adobe CF portal, where I share the "least you need to know" above. Again, for the rest which should be interesting stuff for many, read on.)
Where the buffalo roam...finding a home for the Adobe CF images
If you've been following the news of Adobe's providing Docker images (for CF2021, 2018, and 2016), you may know that there's been a bump in the road for several weeks, since the registry they first chose, JFrog Bintray, "closed" on May 1 (as JFrog had announced in Feb). The day before, Apr 30, Adobe offered a blog post explaining how they were now offering the CF images via downloadable tar.gz files which you'd have to save locally and use the "docker load" to import as an image. Ugh.
That was a really clunky response--and all the more frustrating since I and others had given Adobe advanced warning about this pending closure of Bintray, such as my blog post a month earlier, on Mar 30.
Bintray had been the Docker registry Adobe had used since 2018, when they first released the Docker images for CF2016 and 2018 (then) and later CF2021. Even then, many wondered why Adobe chose Bintray over the industry-standard Dockerhub. Still, at least pulling from Bintray would work...until May 1, 2021, as we were told (by Bintray and Adobe).
As for the offered alternative of the "download and docker load" dance, that was indeed frustrating, and besides comments in the posts above, CF community member Jim Priest was compelled to post a message in the Adobe CF forums just two days ago, asking about this very issue, and how it reflected poorly on Adobe's support for CF and the CF docker images.
The news shared yesterday, about AWS ECR now and DockerHub to comeSo it was quite a surprising and compelling thing to see a a response from Kishore Balakrishnan of the CF Team who yesterday said in reply to Jim:
"We are planning on having our Docker image both on Amazon ECR and DockerHub. Docker Hub is a work in progress we should be there very soon. On ECR we have the ColdFusion container at https://gallery.ecr.aws/adobe/coldfusion/"
Wait...what?!! I checked it out, and indeed the ECR images are indeed available. That and the plans for DockerHub were indeed news I felt worth spreading and celebrating, so I started on this post (and an abbreviated post I offered on the Adobe CF portal).
And I could have left it at that, but as I looked over the info at the ECR CF repo, I wanted to add a bit more to help others who may decide to take that ball and run with it. That led to the rest of the info below....and as I was preparing that, I made the discovery about Bintray still being available....
About Bintray, still available "for now"
So I was just about to post this entry (and the rest below), when I thought to check one of the ECR images against one of the previous Bintray images I had...and when I did a "docker run" against one I assumed I had, I found Docker reporting that it was pulling the image down from Bintray. I was shocked.
Everything from JFrog (in the run up to May) and from Adobe indicated that May 1 was a drop-dead date. As words on their the JFrog announcement about the closure (from Feb 3) still say in a FAQ toward the bottom "On May 1, 2021, the sunset will impact all existing Bintray users. Bintray users will be blocked and will no longer be able to use the Bintray service." That certainly seemed to indicate the doors would be closed, "no more pulls".
But again, it worked today.
So I looked more closely at the Frog announcement page, and at first I noticed an "update" at the top of that that page, from Apr 27, which gave me a start: "We listened to the community and will keep JCenter as a read-only repository indefinitely.". At first, I thought this might have been indicating that they'd had a change of heart, and at least past loaded images would remain available indefinitely.
But then I noticed that was about JCenter, another service announced there as closing on May 1. But that is NOT Bintray. They are separate. Only JCenter is remaining open "indefinitely", in read-only mode, it seems.
As for why I found pulls of CF images still working from there today, I found yet another FAQ on that announcement page saying, "JFrog will begin deleting data several weeks after the official sunset date". This is indeed still in that "several weeks" window.
So again, bottom line: don't EXPECT the Bintray repo of CF images to remain available going forward, but if it helps to know they are there, enjoy. (Indeed, I am grabbing many of the past images, because it can be SO helpful to use them for demonstrating "how things worked in CF" per some given update level.)
About AWS ECR and its CF repo
So, back to the only Docker registry that Adobe is (for now) formally supporting, let's talk about that a bit more. I already shared above the docker pull command for using the CF image available via the AWS ECR.
First, how would one know that is the command to use?
Well, if you visit the page there for the CF repo, again https://gallery.ecr.aws/adobe/coldfusion/, you will see that it offers only a VERY brief description ("The official Adobe ColdFusion Server Docker Image"), and an "about" tab offering a link to the long-existing docs about the CF image (I blogged about those docs and the Adobe CF images back in Aug 2019).
But there is also a "usage" tab there, and that offers the example "docker pull" command above, and it offers a few additional commands (more on that in a moment).
Other CF-related images at the ECR repo
One thing not made clear in Kishore's brief note is that Adobe has offered not only the CF (2021) image but also these others, which is great. They each have their own "about" and "usage" tabs:
- The CF2021 addons image (for Solr and PDFg/CFHTMLtoPDF): https://gallery.ecr.aws/adobe/coldfusionaddons
- The CF2021 PMT image (Performance Monitor Toolset): https://gallery.ecr.aws/adobe/pmt
- The CF2018 CF image: https://gallery.ecr.aws/a7a8q2m1/coldfusion (the image name does not indicate it's CF2018, but I pulled it and it was identical to a bintray CF2018 update image I had--indeed it's update 10, not 11. That's a bummer. There's also no CF2018 addons or API Manager)
Hopefully Adobe will get CF2018 update 11 posted, as well as the API Manager (and perhaps the CF2018 addons and PMT).
Learning more about using the CF Docker images, including commands, environment vars, dockerfiles, and compose files
Finally, while revisiting this whole matter of the Adobe CF images, and speaking of the ECR CF repo, I want to reiterate the importance of the CF docs that discuss using the Adobe Docker images.
First, I'd mentioned how the "usage" tab on each of ECR pages, like the one for the CF image, shows example "docker run" commands for working with the image. That said, the examples are rather terse, indeed incomplete. (None of the examples there show using the -p or -P arguments for for exposing ports, which is necessary to access the container when started that way.)
Second, recall I'd mentioned that the "about" tab on the ECR page for CF points to the Adobe docs page on using their images. Indeed, this doc page is pretty substantial and covers using all the different Adobe images, including the addons and PMT).
The doc page also covers more elaborated docker run commands, as well as info on all the environment variables supported by the CF Docker images, and even info on configuring the images via properties files (which feature was updated for new CF2021-specific aspects of configuring via json).
The docs page even shows use of the images with Docker Compose, including a compose file showing integration of CF and a MySQL image (including a dockerfile to intergrate the needed mysql jar file) as well as the CF addons image. Still another compose file shows integration of CF and PMT images.
You really don't want to miss those docs, when getting started with the Adobe CF Docker images.
That said, while the doc page was updated in May to discuss the new "download and docker load" approach to creating images, it has NOT yet been updated to mention the availability of this AWS ECR registry of CF images, nor does its examples show using them.
A gotcha to beware: Indeed, a side-effect of the last point is that both that docs page AND the "usage" tabs on the ECR pages have an unfortunate problem, at least as of today. They show sometimes use of "docker run" commands where the image name used is just "coldfusion:latest". While that will work if you have used the "download and docker load" approach (which presumes to name the image like that), if you DO proceed to get the images from ecr, then you MUST use the complete container and image name, such as "public.ecr.aws/adobe/coldfusion:latest" for the CF2021 image.
Frustrating, yes, but progress being made
So yes, all this is frustrating, this journey we have been on in recent weeks, indeed months. But it seems there is light at the end of the tunnel. I'm trying to stay focused on the positive.
Yes, it's annoying that we didn't have the CF images in dockerhub to begin with, and yes the curious "download/docker load" approach was all the more annoying.
I'd even say it's frustrating also that news of these plans for dockerhub and the availability of the ECR repos were offered only in a comment on a forum thread, rather than in an Adobe blog post. (There's been a curious vacillation there, with some info going from them to one place or the other, or both--as most recently about the coming support of the Azul JVM, here and here.)
Hey, I'm just a messenger in all this. To be clear, I have nothing to do with any of those decisions and am simply trying to help everyone.
And yes, because I know some will want to make sure it's said...you can "just skip all this and use the Ortus Commandbox Docker images for CF instead". The Ortus images are quite different from the Adobe ones, with each offering different configurable aspects. That said, folks interested in deployment of CFML via containers should be aware of both options, to choose what's best for their needs.
As is often the case, I'm simply trying to help those who ARE using the Adobe-provided means of doing things. Others can make the case for using alternatives--along with the biting commentary, sarcasm, and derision about Adobe and some of their actions.
As always, I'm just trying to help. (And I prefer not to see those sort of negative comments here. There are plenty of other places for that.)
A few things I hope Adobe can fix from all this
So as we wrap up, and in case someone at Adobe may see this and want to take responsibility to improve things, there are a few take-away's/problems/opportunities for improvement I've identified in this post:
- Of course, please get CF into Dockerhub ASAP!
- Please also get CF2018 update 11 into the ECR repo ASAP. That seems an unfortunate oversight
- Please get the API Manager image(s) into the ECR repo, since that was indeed available via Bintray
- Please also be sure to continue to offer (in both the ECR and Dockerhub repos)
all the different updates/versions for each image, as it can be so valuable to run things against an image with a specific CF version and update level, which the Bintray repo did offer
- Please correct the CF Docs page for the Docker images to mention and the availability of the AWS ECR images, and incorporate their use into the page
- Please correct the "usage" tab for ALL the ECR images to clarify that the full ECR path must be used. For example, coldfusion:latest will not work with these
- Please also update the docker run examples there to show at least one example exposing ports. You should probably also add a mention (at the bottom of that "usage" tab info) how the docs page covers environment variables, property-based config, compose files, and more
- I will re-read this tomorrow and see if I missed any points above
For more content like this from Charlie Arehart:
Need more help with problems?
- Signup to get his blog posts by email:
- Follow his blog RSS feed
- View the rest of his blog posts
- View his blog posts on the Adobe CF portal
- If you may prefer direct help, rather than digging around here/elsewhere or via comments, he can help via his online consulting services
- See that page for more on how he can help a) over the web, safely and securely, b) usually very quickly, c) teaching you along the way, and d) with satisfaction guaranteed