--- title: "Zetaly Installation - Docker Linux" slug: "zetaly-installation-docker" updated: 2025-01-20T15:48:40Z published: 2025-01-20T15:48:40Z canonical: "docs.zetaly.io/zetaly-installation-docker" --- > ## Documentation Index > Fetch the complete documentation index at: https://docs.zetaly.io/llms.txt > Use this file to discover all available pages before exploring further. # Zetaly Installation - Docker Linux ## Introduction Zetaly provides a package for offline installation as a `.tar.gz` file, which contains the following: - All the docker images of the modules included in your contract - A `zetalyinstall.cnf` configuration file, which you must edit to define the necessary configuration properties. ## Current Limitations All modules are included except ZSI. ZSI must be installed on a Windows/Linux machine following [this documentation](/v1/docs/bi-tool). Only the offline Docker installation is available with this installer. The installer removes and replaces all of the configuration files when an upgrade is done. If a specific configuration has been done, you need to do it again after each installation. ## Requirements The Zetaly Docker package supports installation on Linux and zCX. The package must be uploaded directly on the host machine, which must have the following elements : - RAM : 16 GB minimum - Storage : 50Go minimum - Bash shell for `.sh` scripts execution - tar package - psql package (since 5.0.0) - Docker - User in the user group named "docker" to be able to execute the Docker CLI - User can perform sudo command - PostgreSQL11 server already installed, can be on another server or in docker (in this case it must be part of the "zetaly" network) Attention:Setting a volume is highly recommended, so that your data is not lost when the container is stopped or removed. - Storage for database : May vary according to your needs, see with your Zetaly commercial representative to get an estimation. - Host machine with the frontal port open (usually 443). This can be done by an admin user, using the following command: ```shell iptables -A INPUT -p tcp --dport 443 -j ACCEPT ``` - Connection to the Zetaly Portal must be done using HTTPS with TLS security. SSL certificates must be produced by your IT department to allow connection to Zetaly Portal. ## Installation 1. Untar the package: ```shell tar -xf file_name.tar.gz ``` 2. Edit the configuration file `zetalyinstall.cnf` to define the necessary configuration properties. For more information, see the [Global Configuration Properties](/v1/docs/configuration-global) article. 3. If necessary, add additional lines to the configuration file `zetalyinstall.cnf` to customize your installation. For more information see the [Docker Configuration Properties](/v1/docs/configuration-docker) article. 4. Launch the `run.sh`script: ```shell bash run.sh ``` The installer creates one directory per module at in the directory defined by the `Installation.Directory` property. By default the modules are installed within the home directory of the installation user under a zetaly folder. The installer then pushes all the images into the Docker registry, mounts volumes, creates containers, and runs them. Note:The `run.sh` script is pre-prepared by Zetaly and typically does not need editing. If you experience installation issues you may need to edit the `run.sh` script. For more information see the [Editing the run.sh Script](/v1/docs/configuration-linux#editing-the-runsh-script) section in the the [Linux Configuration Properties](/v1/docs/configuration-linux) article. ## PostgreSQL Docker Configuration Your PostgreSQL container must be part of the "zetaly" network to allow the Zetaly solution to communicate with it. There are two possible cases : if your PostgreSQL container already exists, or not. #### Case 1 : PostgreSQL Container Already Exists If your PostgresSQL container aleady exists, do the following: 1. Create the network by launching the `network.sh`script: ```shell bash network.sh ``` 2. Determine the ID of your PostgreSQL container by entering the following command: ```shell docker ps --filter "name=postgres" --format "{{.ID}}" ``` The PostgreSQL container ID appears (similar to `1bca1935c9a5` for example). 3. Connect your PostgreSQL container to the network by entering the following command, where `your_id_postgres`is the PostgreSQL container ID you obtained in step 2. ```shell docker network connect zetaly {{your_id_postgres}} ``` #### Case 2 : PostgreSQL Container Does Not Exist If your container for PostgreSQL does not exist, you can directly attach the network when you launch it. To do this, you must enter the following command: ```shell docker run --network=zetaly postgres [...] ``` Docker automatically creates the network "zetaly" if it does not exist, and attaches the PostgreSQL container to it. Note:In the example command above, you will have other parameters to add such as the port. Zetaly does not provide support for the PostgreSQL docker creation. ## Upgrading an Existing Installation Upgrading occurs when you already have an installation and you install a newer version. Rollbacks are not supported by the Zetaly installer. To upgrade your existing installation, do the following: 1. Edit configuration file `zetalyinstall.cnf` from the new package to redefine the necessary configuration properties. 2. Launch the `run.sh`script: ```shell bash run.sh ``` The installer creates one directory per module at in the directory defined by the `Installation.Directory` property. By default the modules are installed within the home directory of the installation user under a zetaly folder. None of your data is modified, unless a specific warning is indicated in the release notes (they are referred as "breaking changes").