The introduction of Manifest for Docker 4.4.1 . This update also incorporates feature enhancements and usability improvements based on user feedback and feature requests. Version 4.4.1 introduces changes to allow for direct integration with Manifest Maker for autentication and synchronization of draft templates.
** PLEASE ALWAYS BE SURE TO CHECK THE POINT RELEASES TO GUARANTEE YOU ARE ON THE LATEST AND GREATEST DOCKER RELEASE.**PLEASE NOTE THAT WITH THIS RELEASE WE WILL NO LONGER BE USING SENDGRID AS OUR PROVIDER FOR EMAIL DELIVERY. OUR CHOSEN PROVIDER GOING FORWARD WILL BE RESEND. THE DOCKER-COMPOSE.YML ENTRY FOR “MAIL_SERVICE_NAME” SHOULD BE “Resend”. PLEASE REACH OUT TO YOUR ACCOUNT REP FOR UPDATED API KEYS IF NEEDED.Please reference the following for a full outline of what is offered within the Version 4.0 Manifest Applications:
There is an important update that needs to be made to the docker-compose.yml file depending if you are doing a fresh docker install or if you are updating to the newest version of Docker.
Fresh Installs: dbpostgres variable MUST use the following image
Image: postgres: 14.9-alpine
Updating Docker versions: dbpostgres variable MUST use the following image:
For new Manifest users who are implementing an on-premise docker or users who are installing a fresh install on another server or docker instance, the docker-compose.yml file for a fresh installation can be downloaded below. Install instructions are included here.We have updated the login credentials for the docker registry. Please make sure to follow the instructions in the All About Docker article to make sure you are using the newest login and password.Docker 4.4.1 FRESH INSTALL Docker Compose Example File:
# Reference docker-compose.yml for Manifest 4.4.1# Please fill out values in <> brackets with correct values.# Note the passwords you set for the database (PostgreSQL) and Redis need to match in both places, respectively# Reference docker-compose.yml for Manifest 4.3.2# Please fill out values in <> brackets with correct values.# Note the passwords you set for the database (PostgreSQL) and Redis need to match in both places, respectivelyversion: "3.9"volumes: manifest_postgres: redis_data: shared:services: api: image: taqtile.azurecr.io/manifest-api:4.4.1 user: 0:0 depends_on: - dbpostgres ports: - "3000" - "4000" expose: - "3000" - "4000" links: - dbpostgres volumes: - </put/path/to/file/storage/here>:/uploads - shared:/shared environment: POSTGRES_PORT: "5432" POSTGRES_HOST: "dbpostgres" # Note: Set the same password in the postgres service POSTGRES_PASSWORD: "<SET PASSWORD FOR DATABASE>" POSTGRES_USER: "manifest" NODE_ENV: "localhost" IP_ACCESS: "<PUT_VM_IP_ADDRESS>" ADMIN_EMAIL: "<PUT_VM_IP_ADDRESS>" ADMIN_PASSWORD: "<PUT_ADMIN_PASSWORD>" env: "on-prem" LICENSE_KEY: "<PUT_LICENSE_KEY>" POSTGRES_MAIN_DB: "manifestmain" POSTGRES_SSL: "false" HOST: "<PUT_VM_IP_ADDRESS>" PROTOCOL: "https://" SERVER_DOCKER: "true" BCRYPT_SALT_ROUNDS: "10" AUTH_TOKEN_SECRET: "keySecretToken" FILES_UPLOAD_FOLDER: "/uploads/" FILES_IMPORT_DATA: "/uploads/importData/" MAIL_SERVICE_NAME: "SendGrid" MAIL_API_KEY: "SG.none" # Ask your account manager REDIS_HOST: redis REDIS_PORT: "6379" # Note: set the same password in the redis service REDIS_PASSWORD: "<SET PASSWORD FOR REDIS>" ROOT_ADMIN_EMAIL: "<PUT_ADMIN_EMAIL>" ROOT_ADMIN_PASSWORD: "<PUT_ADMIN_PASSWORD>" MIGRATION_REQUIRED: "true" SERVER_PORT: "3000" CONVERTER_HOST: converter CONVERTER_PORT: 5555 DEPLOYMENT_TYPE: "on-prem" # Note: Fresh start is for the first run only to set up the database # IS_FRESH_START: "true" LIVEKIT_API_KEY: "null" LIVEKIT_API_SECRET: "null" LIVEKIT_WS_URL: "null" API_HTTPS: "false" #DB_LOGS_ENABLED: true # set to false for production use restart: on-failure dbpostgres: image: postgres:14.9-alpine volumes: - manifest_postgres:/var/lib/postgresql/data ports: - "5432" environment: - POSTGRES_USER=manifest # set password for database the same as above - POSTGRES_PASSWORD=<PASSWORD FOR DATABASE> - POSTGRES_DB=manifestmain web: image: taqtile.azurecr.io/manifest-web:4.4.1_a user: 0:0 depends_on: - api volumes: - </put/path/to/file/storage/here>:/usr/share/nginx/html/uploads - </put/path/to/nginx/cert/storage/here>:/etc/ssl/private/ - </put/path/to/nginx/cert/storage/here>:/etc/ssl/certs - shared:/shared ports: - "80:80" - "443:443" environment: - NGINX_HOST=localhost - NGINX_PORT=80 - IP_ACCESS="<PUT_VM_IP_ADDRESS>" - EXTERNAL_HOST=localhost - env=on-prem links: - api restart: on-failure manifestCoturn: image: taqtile.azurecr.io/manifest-coturn network_mode: "host" converter: image: taqtile.azurecr.io/manifest-3dconverter-production:3.0.4 volumes: - </put/path/to/file/storage/here>:/manifest-cs/folder ports: - "5555" expose: - "5555" restart: on-failure redis: image: docker.io/bitnamilegacy/redis:7.2 environment: # ALLOW_EMPTY_PASSWORD is recommended only for development. - ALLOW_EMPTY_PASSWORD=yes - REDIS_DISABLE_COMMANDS=FLUSHDB ports: - '6379:6379' volumes: - 'redis_data:/bitnami/redis/data' restart: on-failure
IMPT NOTE: New Installations need to be sure to be using the following dbpostgres image (postgres:14.9-alpine) as outlined above.IMPT TIP!: On a FRESH install ONLY, if after restarting docker compose and waiting a few minutes manifest fails to load you may try these troubleshooting steps. These steps WILL destroy data on an upgrade install:
Do docker-compose down to stop all containers and wait for them to exit
Check volumes with docker volume ls and delete the manifest redis data and postgres volumes, they should be named like FOLDERNAME_redis_data and FOLDERNAME_manifest_postgres where FOLDERNAME is the name of the folder you run docker-compose from. Delete the volumes with docker volume rm NAME for each volume name
Edit your docker-compose.yml adding IS_FRESH_START: “true” below the rest of the settings in the environment: list under api and change the restart: line to restart: no
Save and exit then run docker-compose up –d give the software a few minutes to load and try to open the manifest page. If that works remove the IS_FRESH_START: “true” line from docker-compose.yml and change the restart: line back to restart: on-failure
If it does not work, contact customer support for assistance at support@taqtile.com.
You MUST revert these changes before restarting manifest for any reason.
Please make the following updates to the compose file if you are updating from Version 3.1.2 to 4.4.1. Instructions for updating a docker installation can be found here.We have updated the login credentials for the docker registry. Please make sure to follow the instructions in the All About Docker article to make sure you are using the newest login and password.In addition to updating the docker-compose.yml file with the updated images outlined above, please also make sure you append your docker compose to include these following NEW settings. Please be sure to fill in the information that is indicated with “< >” brackets.
Table 1: API Variables for 4.4.1IMPT NOTE: New Installations need to be sure to be using the following dbpostgres image (postgres:14.9-alpine) as outlined above.Docker 4.4.1 UPDATING CURRENT INSTANCE:
Docker installations needs to be running compatible versions across all client applications (ie. iPadOS, 3D Applications, etc.)It’s important to note the following:
The docker instance must be updated to 4.4.1 before any client applications are updated. Web/API for docker versions 3.1.2 and earlier WILL NOT be compatible with client applications running 4.0 or above. It is NOT FORWARD COMPATIBLE.
Example: If a docker instance is running Version 3.1.2 and the users update their client applications to version 4.0+, there are so many breaking changes that we would not expect the applications to run without encountering multiple errors.
If a Docker instance is running Version 4.4.1 and the client applications are still running on version 3.1.2 or earlier DO NOT EXPECT that the client application to work as expected.
As always, please reach out to your Account Manager for support or contact support@taqtile.com with questions.