# Containerized Service

When you install the TERR service on a Linux computer, by default, it is configured to use a Docker® container. A containerized TERR service is available only for Linux installations.

To use a containerized TERR service on a Linux system, download and install Docker.

- If you have not yet installed the TERR service, install Docker first, and then install the TERR service.
- If you have already installed the TERR service before installing Docker, then stop the TERR service, install Docker, set the configuration to use Docker, and then restart the TERR service.

The version of Docker you use depends on your Linux system. See the system requirements for the recommended version. See www.docker.com for more information about Docker.

The primary benefit of installing and using the TERR service in a container is that it operates the service in a "sandbox", so the TERR engine does not have access to the host file system. (For more information about script and data function trust, see the Spotfire client user guide). Running the TERR service in a container results in negligible performance impact.

Warning: Containerization of the engines does not, by default, limit access to the network. If your system supports untrusted or public users creating data functions, consider additional firewall configuration on the host system to limit container exposure to the network or internet to only necessary sites and servers. Consult your OS or Docker documentation for further guidance.

The only container framework with which we developed and tested the TERR service is Docker. We do not provide Docker with the base installation; however, you must have Docker installed for the TERR service to work properly. The service downloads and builds a default Docker image based on debian:12-slim from Docker Hub. While you cannot modify the image we provide, you can build and use a different Docker image if you have different configuration requirements. This section contains a few examples of specifying different Docker images. Alternatively, check Docker Hub for an image that might work for you.

Note: Docker is available under separate software license terms and is not part of the Spotfire Server or the TERR service. As such, Docker is not within the scope of your license for Spotfire Server or the TERR service. Docker is not supported, maintained, or warranted in any way by Cloud Software Group, Inc. Download and use of Docker is solely at your own discretion and subject to license terms applicable to Docker.

You can export and change the configuration options to build and install a customized image. See Configuring the Service for more information. The properties to change in the configuration are the following:

- `docker.image.name`
- `startup.hook.script`

Important: After you install Docker, you must create the docker group and then add the spotfire user to the docker group. For more information about setting up this group, see https://docs.docker.com/engine/install/linux-postinstall/.

After you install and configure both the container and the TERR service, you can start the service. When the service starts, containers are created as needed.

Note: Optionally, you can set the configuration option `use.engine.containers` to `FALSE` to disable the container option.