Distribution HA Docker Compose Installation

JFrog Installation & Setup Documentation

Content Type
Installation & Setup
ft:sourceType
Paligo

First node installation steps:

  1. Extract the contents of the compressed archive and go to the extracted folder.

    tar -xvf jfrog-distribution-<version>-compose.tar.gz
    cd jfrog-distribution-<version>-compose.tar.gz
  2. Run the config.sh script to setup folders with required ownership.

    ./config.sh
  3. Configure the system.yaml file with the database for the first node configuration details. For example,

    First node system.yaml

    shared:
      database:
        type: postgresql
        driver: org.postgresql.Driver
        url: jdbc: postgresql://<PosgreSQL_Host_IP_address>:<postgres_port>/distribution?sslmode=disable
        username: distribution
        password: password
      security:
        joinKey: <join_key>
  4. Validate and customize the product configuration(optional), including the third party dependencies connection details and ports.

  5. Start and manage Distribution using docker-compose commands.

    cd jfrog-distribution-<version>-compose
     
    # Starting from Distribution 2.5.x Redis has been moved to a compose file of its own, this needs to be started before starting other services
    docker-compose -p distribution-redis -f docker-compose-redis.yaml up -d
     
    # Starting from 2.5.x, PostgreSQL needs to be started before starting the other services.
    docker-compose -p distribution-postgres -f docker-compose-postgres.yaml up -d
     
    docker-compose -p distribution ps
    docker-compose -p distribution up -d
    docker-compose -p distribution down
  6. Access Distribution from your browser at: http://<jfrogUrl>/ui/: go to the Distribution tab in the Application module in the UI.

  7. Check the Distribution log.

    docker-compose -p distribution logs

Additional node installation steps:

  1. Extract the contents of the compressed archive and go to the extracted folder.

    tar -xvf jfrog-distribution-<version>-compose.tar.gz
    cd jfrog-distribution-<version>-compose.tar.gz
  2. Run the config .sh script to setup folders with required ownership.

    ./config.sh
  3. Configure the system.yaml file for the secondary node with master key, database and active node configurations. For example,

    Additional node system.yaml

    shared:
      database:
        type: postgresql
        driver: org.postgresql.Driver
        url: postgresql://<PosgreSQL_Host_IP_address>:<postgres_port>/distribution?sslmode=disable
        username: distribution
        password: password
      security:
        joinKey: <join_key>
  4. Copy the master.key from the first node to the additional node located at $JFROG_HOME/distribution/var/etc/security/master.key.

  5. Customize the product configuration(optional), including the third party dependencies connection details and ports.

  6. Start and manage Distribution using docker-compose commands.

    cd jfrog-distribution-<version>-compose# Starting from Distribution 2.5.x Redis has been moved to a compose file of its own, this needs to be started before starting other services
    docker-compose -p distribution-redis -f docker-compose-redis.yaml up -d
     
    docker-compose -p distribution ps
    docker-compose -p distribution up -d
    docker-compose -p distribution down
  7. Access Distribution from your browser at: http://<jfrogUrl>/ui/: go to the Distribution tab in the Application module in the UI.

  8. Check the Distribution log.

    docker-compose -p distribution logs