Skip to end of metadata
Go to start of metadata

You are viewing an old version of this content. View the current version.

Compare with Current View Version History

« Previous Version 58 Next »

Preparing container runtime

Deploying software as containers requires a container runtime. This documentation provides the required information. It also provides examples for docker container runtime.

Installation of docker or another container runtime following Open Container Initiative (OCI) standard is prerequisite for deploying tia Core as container.

Images for deployment of tia Core are stored at https://images.docker.kgs-cloud.de .

An account is required. It is provided for licensed installations via kgs Customer Support.

On this image hub images are available no older than tia® Content Server core Version 2.1.0.

Example preparation with docker container runtime:

docker login https://images.docker.kgs-cloud.de

Docker will prompt for user and password.

Deploying tia Core

Deploying tia Core requires the following:

  • repository.cfg file. A default repository.cfg file is attached below, which is suitable for test systems only. For repository configuration settings refer to Repository-wide settings.

  • license file. This file is provided by kgs.

In addition, decide about and prepare these settings depending on your requirements in order to run the container.

Docker parameter

Placeholder name to be replaced

Mapping to container-configuration

Explanation

--name

<Name>

Give the tia Core container a custom name. This name is also the application context name.

Hint: You can start multiple instances of the same containers with different ports and different names.

-p

<Hostport>

SERVER_PORT

<Hostport>: Listener port on host that forwards to the listener port in the container, which is configured by server.port application-wide setting (default: 8080).

-v

<Config Folder>

/application/config

The folder location on host system where the repository.cfg resides.

-v

<License Folder>

/application/config/license/

The location on host system where the license file resides. For more information refer to Location of the license file .

-v

<Temp Folder>

/temp/data

Optional: Mapping container’s temp directory to host file system.

-e

<Loglevel>

LOGGING_LEVEL_ROOT

The log level sets the verboseness of the log writing. Valid are: OFF; ERROR; WARN; INFO orDEBUG.It is recommended to use ERROR or WARN in production environments and WARN or INFO in test systems. Set DEBUG level only when being ask be kgs Customer Support. For more information on logging refer to Logging .

-e

<BcryptHash>

WEBAPP_SECURITY_AUTH_BASIC_PASSWORD

To login to the tia Status UI, a password is required that when being hashed must match this value. For more information refer to tia® Status UI Authentication .

-d

Run as daemon in background

<Image>

Referencing the image as last parameter in the docker command.

The image is referenced like this:

images.docker.kgs-cloud.de/tia/core/<Product>:<Version>

with

<Product>: The tia Core product to be deployed: saphttp , cmis, or ilm.

<Version>: The version of tia Core to be deployed. kgs recommends to use the latest available version. For this use latest.

Template of docker run command for copy & paste:

docker run --name <Name> -p <Hostport>:<Containerport> -v data_volume:/temp/data  -v <License Folder>:/application/config/license/ -v <Config Folder>/repository.cfg:/application/config/repository.cfg -e LOGGING_LEVEL_ROOT=<Loglevel> -e WEBAPP_SECURITY_AUTH_BASIC_PASSWORD="<BcryptHash>" -d <Image>

Example:

docker run --name tiacore-AL -p 8080:8080 -v data_volume:/temp/data  -v ./tiacore/license:/application/config/license/ -v ./tiacore/repository.cfg:/application/config/repository.cfg -e LOGGING_LEVEL_ROOT=INFO -e WEBAPP_SECURITY_AUTH_BASIC_PASSWORD="\$2a\$10\$5E1KpGIKSq6xuWmGf92bheB17V0l4fEMnVmYPqhWiazKddcx1TF/e" -d images.docker.kgs-cloud.de/tia/core/saphttp:latest

Explanation of docker command:

The parameter -p maps ports, and -v volumes (directories or files) between host and container. -e sets environmental variables in the container.

Using -v allows to store data like configuration permanently at host, edit and maintain it there even when the container is started, destroyed and restarted again.

Hint: When host is running Windows, the path may contain drive letter with colon ( : ) and backslashes ( \ ). Use quotation marks and double the backslash to allow correct interpretation.

E.g.: -v "G:\\host\\location":/container/location

For information about the environmental variables set, refer to Reference of application-wide parameters .

When the tia Core container is running,

  • access its Status User Interface in web browser. See tia® Status User-Interface

  • setup the repository in SAP to connect to tia Core Content Server

How to connect SAP to tia Core contentserver:

use the transaction code OAC0 to create the repository T1

specify the required connection information for your tia Core Content Server

  1. perform the connection test → the result should be as following

  1. send out the sap certificate to the tia core contentserver

Congratulations, you are now able to use tia core for archiving documents via ArchiveLink (smile)


FAQ

 I do not want log files inside my container (for tia® Content Server core < 2.6.0 )

This is no longer required for tia® Content Server core 2.6.0 or higher

  • Use e.g this log4j2.xml without file appender


Map it to the container with -v <Folder>/log4j2.xml:/application/config/log4j2.xml

And set environment variable for the container -e LOGGING_CONFIG=/application/config/log4j2.xml

 I want to use ILM or SAPHTTP?

Both is available on Nexus/Harbor

 I want to check the container logs

You can do that with the following command

sudo docker container logs [container name / or / container-id]
 Is respository.cfg shared?

In the example repository.cfg is shared when mutiple container use the same repository.cfg. Change one and restart container so that new repository.cfg works for both.

 Where is the tomcat?

Tomcat is now embedded and maintained by kgs.

 How do I update a container

Pull the new image sudo docker pull [docker_image]

Find the ID of the running container sudo docker ps

Stop Container sudo docker stop [container_id]
Remove Container sudo docker rm [container_id]

Start Container docker run -p 8080:8080 -v data_volume:/temp/ -v <Folder>/repository.cfg:/application/config/repository.cfg -d docker.kgs-software.com/tia/core/cmis:<Version>

 Are there files or directories that need to be mapped in the container and need to be permanent with read/write access?
  • Yes, but it depends on your configuration.

    • tia® Content Server core requires a metadata directory (<repo>.configdata.filesystem.root)

    • tia® Content Server core can require a keystore, when you configure it, make sure this file is available for all

      • <repo>.keystoreservice.pkcs12.name

      • <repo>.keystoreservice.pkcs12.path

    • tia® Content Server core requires a temp directory to cache files it is /tmp there are only temporary files stored for short time.

  • No labels