Upgrading a Docker container

This section describes how to upgrade a Docker container that is running Swarm to a newer release.

The following process attempts to minimize downtime, but a short period of downtime for Swarm users is unavoidable. There should be no downtime for your Helix Core Server. After a successful upgrade, all Swarm users are logged out.

If you are using Swarm in a production environment, we encourage you to test this upgrade process in a non-production environment first.

To upgrade a Docker container, run the following commands in your Docker setup directory:

  1. Pull down the latest version of the Helix Swarm image. In the below code example, you can change the latest tag to the current version of your Helix Swarm installation, for example, 2022.2.

    docker pull perforce/helix-swarm:latest
  2. View what is currently running in your Docker container using docker ps command.

    docker ps
    CONTAINER ID   IMAGE                  COMMAND                  CREATED          STATUS          PORTS                               
    NAMES
    0b3baaf10387   perforce/helix-swarm   "/bin/sh -c /opt/per…"   22 seconds ago   Up 20 seconds   0.0.0.0:80->80/tcp,
    :::80->80/tcp
    helix-swarm
    f2030d449679   redis                  "docker-entrypoint.s…"   38 seconds ago   Up 37 seconds   6379/tcp helix-redis
  3. Stop and delete the running Helix Swarm image.

    docker stop helix-swarm
    docker rm helix-swarm
  4. Start a new Helix Swarm image using a docker run command. For more information on how to run a Helix Swarm image on a Docker container, see Run Swarm using a Docker container.