Here are listed some recommendations when deploying Aspire using the container images.

Official container images:

 - (online distribution)
- (offline distribution)

Local Maven repository (development and testing)

The official docker image provided with Aspire assumes Internet connectivity for downloading the jar files needed for the different connectors and components on Aspire.

If running with the official container image, it is recommended to provide a volume pointing to /opt/aspire/.m2/repository on all containers for the jars to be downloaded only once, otherwise if restarted, the container would download all the jar files again.

If you are running the service locally and deploying to your local .m2 repository, you could provide:

- ~/.m2/repository:/opt/aspire/.m2/repository

So your containers can see what you install locally when running "mvn clean install" on your aspire components

Login to Aspire's Docker registry

  1. Login to artifactory docker registry:

    $ docker login

    You'll need to use your registered email/password credentials.

Offline Mode (production)

For production deployments it is recommended to create a custom Aspire image, containing all the jar files needed for the deployment to run. This way no new downloads will be required during restarts and uptime will be improved.

There is an official docker image of aspire containing all the basic components jar files, only missing the premium components ones. Those premium jar files must be downloaded and added to your custom aspire image manually.

You'll need to have Maven 3 installed, and configured to use as the repository. Follow Configuring Maven for Aspire.

  1. Create a directory for your custom aspire image, and one for the jar files to be downloaded
    1. mkdir custom-aspire-image
      mkdir custom-aspire-image/jars
  2. Download the jar files you'll need
    1. Change directory to your image folder

      cd custom-aspire-image
    2. For each premium component you'll need to execute: (where VERSION is 5.0, 5.0.1, 5.0.2, 5.1, 5.1.2 etc, and COMPONENT-ARTIFACT-ID is the maven artifact id of the component)

      mvn dependency:copy[COMPONENT-ARTIFACT-ID]:[VERSION] -Dmdep.useBaseVersion=true -DoutputDirectory=custom-aspire-image/jars
  3. Create a Dockerfile based on the official aspire docker image with all the basic jars.
    1. Should be called "Dockerfile"

      ADD jars/* /opt/aspire/bundles/aspire
  4. Build your custom aspire image
    1. docker build -t [image-name]:[image-tag] .

      For instance:

      docker build -t custom-aspire:5.1.2 .
  5. Modify your docker-compose.yaml, or .env or kubernetes yaml files to use the new image.

  • No labels