401 Unauthorized when accessing Jmix BPM dependencies in Docker build

I’m encountering an issue when building a Jmix 2.7.3 project with BPM dependencies inside Docker. Locally, the project builds successfully using my Jmix account credentials, and I do have an active subscription that includes BPM. However, during the Docker build, Gradle fails to resolve io.jmix.bpm:jmix-bpm-starter and jmix-bpm-flowui-starter with a 401 Unauthorized error from the premium repository (https://global.repo.jmix.io/repository/premium). I’m passing credentials via Docker build args and mapping them to ORG_GRADLE_PROJECT_premiumRepoUser and premiumRepoPass, and I’ve verified that the values are correctly set inside the container. Despite this, Gradle still cannot authenticate. Occasionally, I also see TLS handshake warnings when accessing Jmix repositories. Has anyone experienced issues with authenticating to the Jmix premium repository in Docker builds, or is there a recommended way (e.g., token-based auth or different property naming) to handle this setup reliably?

I would recommend setting up your own caching artifact repository, for example Nexus. This repository can use your credentials when accessing the Jmix premium repo and provide artifacts to your local network without authentication.

It would save you from authentication problems and possible AWS downtime.

Regards,
Konstantin

Hi @krivopustov ,
I have set up a Nexus proxy repository pointing to:
https://global.repo.jmix.io/repository/premium/

However, Nexus logs show the following error when attempting to fetch dependencies:
HTTP/1.1 401 Unauthorized checking remote for update

Additionally, when testing directly via curl through Nexus:

curl -I -u admin: http://127.0.0.1:8081/repository/jmix-premium/io/jmix/bpm/jmix-bpm-starter/2.7.3/jmix-bpm-starter-2.7.3.pom

I receive:

HTTP/1.1 503 Service Unavailable

The dependency that is failing to resolve is:

io.jmix.bpm:jmix-bpm-starter:2.7.3

Could you please confirm:

  1. The correct Maven repository credentials (username/password or token) for accessing the premium repository?
  2. Whether any additional configuration is required when using Nexus as a proxy?

It seems the license key alone is not sufficient for Maven repository authentication.

Thanks.

Use your subscription key parts as username/password in the Nexus proxy repository configuration (HTTP → Authentication section), the same as they are used in your build.gradle: https://docs.jmix.io/jmix/bpm/index.html#installation

No, just authentication.

Regards,
Konstantin

One additional question:

Are the Maven repository credentials the same as the Jmix account login credentials used for the Jmix website/subscription portal, or is a separate repository username/password (or access token) required for Nexus proxy authentication?

Thanks.

They are different.

Repository credentials are described at https://docs.jmix.io/jmix/bpm/index.html#installation:

Get the repository credentials from your license key: the first part of the key before dash is the repository user name, the part after dash is the password. For example, if your key is 123456123456-abcdefabcdef , then the user name is 123456123456 and the password is abcdefabcdef .

Your personal login credentials for the Jmix website do not provide access to the premium repository.

Regards,
Konstantin