Running Atlassian products on Docker might fail during startup because of Docker Engine version

Platform Notice: Data Center Only - This article only applies to Atlassian products on the Data Center platform.

Note that this KB was created for the Data Center version of the product. Data Center KBs for non-Data-Center-specific features may also work for Server versions of the product, however they have not been tested. Support for Server* products ended on February 15th 2024. If you are running a Server product, you can visit the Atlassian Server end of support announcement to review your migration options.

*Except Fisheye and Crucible

Summary

Running an Atlassian application (Bitbucket, Confluence, Crowd, Jira Software or Jira Service Management) on a Docker container fails during the application startup.

This problem only occurs with a more recent image. Trying to start the same application with an old image works fine.

The issue only occurs if the Docker Engine version is lower than 20.10.10.

The remainder of the document will help identifying if you are running into this problem and the remediation actions.

Diagnosis

The following commands may help identifying if affected by this issue.

1 2 docker version docker logs --follow <container-id>

The Docker version installed is lower than 20.10.10.

In this example we validated the problem with Docker version 20.10.8.

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 ubuntu@ip-10-100-10-10:~$ sudo apt list --installed | grep -i docker WARNING: apt does not have a stable CLI interface. Use with caution in scripts. docker-ce-cli/focal,now 5:20.10.8~3-0~ubuntu-focal amd64 [installed,upgradable to: 5:20.10.17~3-0~ubuntu-focal] docker-ce-rootless-extras/focal,now 5:20.10.8~3-0~ubuntu-focal amd64 [installed,upgradable to: 5:20.10.17~3-0~ubuntu-focal] docker-ce/focal,now 5:20.10.8~3-0~ubuntu-focal amd64 [installed,upgradable to: 5:20.10.17~3-0~ubuntu-focal] docker-scan-plugin/focal,now 0.17.0~ubuntu-focal amd64 [installed,automatic] ubuntu@ip-10-100-10-10:~$ ubuntu@ip-10-100-10-10:~$ docker version Client: Docker Engine - Community Version: 20.10.8 API version: 1.41 Go version: go1.16.6 Git commit: 3967b7d Built: Fri Jul 30 19:54:27 2021 OS/Arch: linux/amd64 Context: default Experimental: true Server: Docker Engine - Community Engine: Version: 20.10.8 API version: 1.41 (minimum version 1.12) Go version: go1.16.6 Git commit: 75249d8 Built: Fri Jul 30 19:52:33 2021 OS/Arch: linux/amd64 Experimental: false containerd: Version: 1.6.6 GitCommit: 10c12954828e7c7c9b6e0ea9b0c02b01407d3ae1 runc: Version: 1.1.2 GitCommit: v1.1.2-0-ga916309 docker-init: Version: 0.19.0 GitCommit: de40ad0 ubuntu@ip-10-100-10-10:~$

Checking the Container logs shows one of the following errors.

Bitbucket

Starting Bitbucket on Docker may fail with an error similar to the below.

1 2 3 4 5 JRE_HOME '/opt/java/openjdk' is Java Atlassian Bitbucket requires Java 8 to run Set JRE_HOME to a Java 8 JRE and try again Startup has been aborted

Expand to see full output...

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 ubuntu@ip-10-100-10-10:~$ docker pull atlassian/bitbucket-server:7.21.1 7.21.1: Pulling from atlassian/bitbucket-server 405f018f9d1d: Already exists 9c045aca8dd9: Already exists efd1c42ec938: Already exists 35541a1051f3: Already exists 916f58ac27a6: Pull complete 6b85b42cfe3f: Pull complete 7138cd25743b: Pull complete a15123125861: Pull complete ac6afafd9658: Pull complete 8c62a84e3977: Pull complete 53f8e904b5bf: Pull complete ed2eafe9be0a: Pull complete Digest: sha256:56dcd54599c66ba6d9d715a9d36b5346d591c7867e6db24a3fd630099ddbfe51 Status: Downloaded newer image for atlassian/bitbucket-server:7.21.1 docker.io/atlassian/bitbucket-server:7.21.1 ubuntu@ip-10-100-10-10:~$ mkdir bb-home7211 ubuntu@ip-10-100-10-10:~$ docker run --name="bitbucket-7211" \ > -v /home/ubuntu/bb-home7211:/var/atlassian/application-data/bitbucket \ > -d -p 7990:7990 -p 7999:7999 \ > atlassian/bitbucket-server:7.21.1 35e266b547799f72df4bd3aeb7afa6ebc2f4d8947e507df7220551ee649c5757 ubuntu@ip-10-100-10-10:~$ docker logs --follow bitbucket-7211 WARNING:root:###################################################################### WARNING:root:Starting Bitbucket with embedded search service. Note that this is not a recommended configuration and is known to have issues with clean shutdown. Ideally OpenSearch (previously Elasticsearch) should be started in a separate container/pod. WARNING:root:###################################################################### INFO:root:User is currently root. Will change directory ownership and downgrade run user to bitbucket INFO:root:User is currently root. Will downgrade run user to bitbucket INFO:root:Running Bitbucket with command '/opt/atlassian/bitbucket/bin/start-bitbucket.sh', arguments ['/opt/atlassian/bitbucket/bin/start-bitbucket.sh', '-fg'] JRE_HOME '/opt/java/openjdk' is Java Atlassian Bitbucket requires Java 8 to run Set JRE_HOME to a Java 8 JRE and try again Startup has been aborted ubuntu@ip-10-100-10-10:~$

Confluence

Starting Confluence on Docker may fail with an error similar to the below examples.

1 2 3 4 5 Using Java: /opt/java/openjdk/bin/java [0.019s][warning][os,thread] Failed to start thread - pthread_create failed (EPERM) for attributes: stacksize: 1024k, guardsize: 4k, detached. # # There is insufficient memory for the Java Runtime Environment to continue. # Cannot create worker GC thread. Out of system resources.
1 2 Using CATALINA_PID: /opt/atlassian/confluence/work/catalina.pid /opt/atlassian/confluence/bin/catalina.sh: 1: eval: Syntax error: "(" unexpected
1 2 Cannot find /opt/atlassian/confluence/bin/setclasspath.sh This file is needed to run this program

Crowd

Starting Crowd on Docker may fail with an error similar to the below.

1 2 3 4 [0.020s][warning][os,thread] Failed to start thread - pthread_create failed (EPERM) for attributes: stacksize: 1024k, guardsize: 4k, detached. # # There is insufficient memory for the Java Runtime Environment to continue. # Cannot create worker GC thread. Out of system resources.

Jira Software or Jira Service Management

Starting Jira on Docker may fail with an error similar to the below.

1 2 3 4 5 6 7 8 9 Server startup logs are located in /opt/atlassian/jira/logs/catalina.out /opt/atlassian/jira/bin/check-java.sh: line 31: [: -ne: unary operator expected /opt/atlassian/jira/bin/set-gc-params.sh: line 5: [: -ge: unary operator expected Unrecognized VM option 'UseGCLogFileRotation' [0.000s][warning][gc] -Xloggc is deprecated. Will use -Xlog:gc:/opt/atlassian/jira/logs/atlassian-jira-gc-%t.log instead. Error: Could not create the Java Virtual Machine. Error: A fatal exception has occurred. Program will exit.

Cause

Atlassian (Docker) images were recently updated and now require Docker Engine version >= 20.10.10.

The issue is related to the update to the Adoptium OpenJDK and incompatibilities with older versions of the Docker Engine.

Refer to each product's Docker Hub page:

Solution

Upgrade the Docker Engine to version 20.10.10 or a more recent one.

Refer to Docker Engine release notes for more information about Docker versions.

Updated on April 17, 2025

Still need help?

The Atlassian Community is here for you.