Upgrade Artifactory using Docker Compose

JFrog Installation & Setup Documentation

Content Type
Installation & Setup

This topic provides the steps to upgrade your JFrog Artifactory 7.x instance installed via Docker Compose to a newer 7.x version.

If you want to upgrade from any version lower than 7.x, see Upgrading Artifactory from 6.10.x to 7.x.

Preparation and Pre-Upgrade Checks

To ensure a smooth upgrade, consider the following:

  • Backup Your Data: We strongly recommend you to perform a full backup of your Artifactory data directory ($JFROG_HOME/artifactory/var) and database before starting any upgrade process. This allows for recovery in case of unexpected issues.

  • Review Release Notes: Always check the Artifactory Release Notes for the target version. They may contain critical information, breaking changes, or specific pre-upgrade tasks not covered here.

  • Downtime: In a single-node setup, the Artifactory service will be unavailable to users during the upgrade. In High-Availability (HA) mode, a rolling upgrade ensures only one node is down at a time, allowing the service to remain available to users.

Upgrade Steps

  1. Stop the current containers:

    docker-compose -p rt down
  2. Download and extract the new archive: Download the new archive, then extract its contents and navigate to the folder.

    tar -xvf jfrog-artifactory-<pro|oss|cpp-ce>-<version>-compose.tar.gz
    cd artifactory-<pro|oss|cpp-ce>-<version>
  3. Copy the .env file and run the config script: Copy the contents of the original .env file (except for the version field) into the newly extracted .env file. Then, run the config.sh script to set up folders with the required ownership.

    ./config.sh
  4. Start the Artifactory services: Start PostgreSQL first, if applicable, then start the main Artifactory services.

    # Starting from Artifactory 7.8.x, PostgreSQL needs to be started before starting the other services.
    
    # if PostgreSQL 9.6.11 running 
    docker-compose -p rt-postgres -f docker-compose-postgres-9-6.11v.yaml up -d
    
    # if PostgreSQL 10.13 running
    docker-compose -p rt-postgres -f docker-compose-postgres-10-13v.yaml up -d
    
    # if PostgreSQL 12.3 running 
    docker-compose -p rt-postgres -f docker-compose-postgres.yaml up -d
    
    # Start Artifactory
    docker-compose -p rt up -d
  5. Verify the Upgrade:

    • Access UI: Access http://<SERVER_HOSTNAME>:8082/ui/ in your browser to verify the UI loads.

    • Monitor Logs: Use this command to check for any startup errors.

      tail -f $ROOT_DATA_DIR/var/log/console.log

Troubleshooting and Post-Upgrade Notes

  • Database Migrations: During the first startup after an upgrade, Artifactory may run database converters to execute changes in the database schema.