Zammad default Docker-Compose uses 'latest'
-
The Zammad from elest.io uses
SOFTWARE_VERSION_TAG=latest
in the .env for the docker-compose. In the Zammad docs it says
Never use the latest tag. Use a tag which has a version attached.
(see https://docs.zammad.org/en/latest/install/docker-compose.html)
However, even with auto-update on I currently have version 5.2.3 installed through elest.io. But the current 'latest'-tag points to 5.3.0-30 (see
https://hub.docker.com/r/zammad/zammad-docker-compose/tags).Two questions:
- Any idea why it's not updating to the actual latest?
- Should it maybe not point to latest like it says in the docs?
I'd like to have automated security updates for both the OS (as it's default with Elestio) and the software. But not automated major-updates because I'm afraid it might just break my production system.
-
@lclc Auto-update is done only on Sunday night by default, this can be adjusted in the service dashboard, there you can also do an UPDATE NOW
About latest ... when deploying a new service we give the user opportunity to select a specific version in the dropdown. Since it's rapidly changing, by default we keep latest selected. But indeed for a production system we recommend to fix the major version using tag "5" for eg
-
I guess I picked 'latest' here when I set it up, but it's a bit messy, showing all the tags.
I assume it comes from their messy Docker repository (https://hub.docker.com/r/zammad/zammad-docker-compose/tags).
When I click UPDATE NOW it stays on 5.2.3 (which was probably the latest when I set it up), even though it has 'latest' set as SOFTWARE_VERSION_TAG in the ENV file.
I've now cloned my existing instance and choose stable, but the docker-compose doesn't work with stable because there aren't images tagged as stable for all the backend images of zammad in there (e.g. there is no zammad-postgresql-stable)
The latest image of zammad-postgresql- is zammad-postgresql-5.2.3-32 (2 months ago). It looks like they discontinued publishing those, which means the docker-compose file from Elestio doesn't work anymore.
-
Ah yes, see this commit on November 4th: https://github.com/zammad/zammad-docker-compose/commit/c5c1db541a05f18480169490ee92146a8883a3b8#diff-e45e45baeda1c1e73482975a664062aa56f20c03dd9d64a827aba57775bed0d3
They are using the upstream postgres images now.
Probably best to track their https://github.com/zammad/zammad-docker-compose/releases, which are independent of the zammad releases.
-
@lclc Thanks for telling us!
We have fixed our CI/CD template (https://github.com/elestio-examples/zammad) and we are going to fix as well the dedicated service template in the next 2 days -
@jbenguira sounds good. FYI your link points to a private GitHub repo.
-
@lclc Indeed, fixed now
-
@jbenguira how can I check when the new docker-compose (service template) is up without creating a new VM?
-
@lclc here it is
version: '3.3' services: zammad-backup: command: ["zammad-backup"] depends_on: - zammad-railsserver entrypoint: /usr/local/bin/backup.sh environment: - BACKUP_SLEEP=86400 - HOLD_DAYS=10 - POSTGRESQL_USER=${POSTGRES_USER} - POSTGRESQL_PASSWORD=${SOFTWARE_PASSWORD} image: ${IMAGE_REPO}:zammad-postgresql-${SOFTWARE_VERSION_TAG} links: - zammad-postgresql restart: ${RESTART} volumes: - ./zammad_backup:/var/tmp/zammad - ./zammad_data:/opt/zammad zammad-elasticsearch: environment: - discovery.type=single-node image: ${IMAGE_REPO}:zammad-elasticsearch-${SOFTWARE_VERSION_TAG} restart: ${RESTART} volumes: - ./elasticsearch_data:/usr/share/elasticsearch/data zammad-init: command: ["zammad-init"] depends_on: - zammad-postgresql environment: - POSTGRESQL_USER=${POSTGRES_USER} - POSTGRESQL_PASS=${SOFTWARE_PASSWORD} image: ${IMAGE_REPO}:zammad-${SOFTWARE_VERSION_TAG} links: - zammad-elasticsearch - zammad-postgresql restart: on-failure volumes: - ./zammad_data:/opt/zammad zammad-memcached: command: memcached -m 256M image: memcached:1.6.9-alpine restart: ${RESTART} zammad-nginx: command: ["zammad-nginx"] ports: - "172.17.0.1:8080:8080" depends_on: - zammad-railsserver image: ${IMAGE_REPO}:zammad-${SOFTWARE_VERSION_TAG} environment: - NGINX_SERVER_SCHEME=https links: - zammad-railsserver - zammad-websocket restart: ${RESTART} volumes: - ./zammad_data:/opt/zammad zammad-postgresql: environment: - POSTGRES_USER=${POSTGRES_USER} - POSTGRES_PASSWORD=${SOFTWARE_PASSWORD} image: ${IMAGE_REPO}:zammad-postgresql-${SOFTWARE_VERSION_TAG} restart: ${RESTART} volumes: - ./postgresql_data:/var/lib/postgresql/data zammad-railsserver: command: ["zammad-railsserver"] depends_on: - zammad-memcached - zammad-postgresql image: ${IMAGE_REPO}:zammad-${SOFTWARE_VERSION_TAG} links: - zammad-elasticsearch - zammad-memcached - zammad-postgresql restart: ${RESTART} volumes: - ./zammad_data:/opt/zammad zammad-scheduler: command: ["zammad-scheduler"] depends_on: - zammad-memcached - zammad-railsserver image: ${IMAGE_REPO}:zammad-${SOFTWARE_VERSION_TAG} links: - zammad-elasticsearch - zammad-memcached - zammad-postgresql restart: ${RESTART} volumes: - ./zammad_data:/opt/zammad zammad-websocket: command: ["zammad-websocket"] depends_on: - zammad-memcached - zammad-railsserver image: ${IMAGE_REPO}:zammad-${SOFTWARE_VERSION_TAG} links: - zammad-postgresql - zammad-memcached restart: ${RESTART} volumes: - ./zammad_data:/opt/zammad
-
@jbenguira but that one still has
image: ${IMAGE_REPO}:zammad-postgresql-${SOFTWARE_VERSION_TAG}
instead of
image: postgres:${POSTGRES_VERSION}
(taken from GitHub https://github.com/elestio-examples/zammad/blob/main/docker-compose.yml#L16)
-
@lclc you are right, we are in the process of unifying with the Git repos,
this will be done soon for Zamad -
@jbenguira great. Can you let me know or is there a way to see when it's updated without creating a new instance?