Building Teamwork Cloud container
These procedures are intended for users with Docker knowledge. We do not provide Docker support, just provide guidelines on how to use it with our product. For more information about Docker, see https://docs.docker.com/
Teamwork Cloud is the core backend platform for the container network.
Downloading Teamwork Cloud software
To download the Teamwork Cloud software
- Download the <product_name>_<version_number>_linux64.zip file from https://software.3ds.com. See 3DS Media list.
- Copy <product_name>_<version_number>_linux64.zip to /twc on the server . Change directory to twc
cd /twcSHELL - Unzip <product_name>_<version_number>_linux64.zip and copy all the files from TeamworkCloud directory using below command
cp -r CATIANoMagicServices/TeamworkCloud/* twc/twcloud/twcloud/*SHELL
Building Teamwork Cloud image
Please check the correct component version in the Third-Party Component Compatibility page and edit the Java versions in the configuration files.
- Create the following files :
- twcloud/Dockerfile
FROM eclipse-temurin:21-jdk COPY twcloud /twcloud RUN apt-get -y update && apt-get -y upgrade && apt-get -y install apt-utils sudo wget netcat-openbsd && rm -rf /var/lib/apt/lists/* COPY docker.scripts /scripts RUN sh /scripts/init.sh WORKDIR /twcloud EXPOSE 8111 3579 VOLUME /certs CMD ["/scripts/entrypoint.sh"]TEXT - twcloud/docker-compose.ymlChange "FQDN" to your hostname.
version: '2.4' services: twcloud: image: localhost/twc_twcloud:latest container_name: twcloud mem_limit: 3g ports: - "8111:8111" - "3579:3579" environment: TWCLOUD_OPTS: >- -Desi.httpd.ssl.keystorePath=certs/twcloud.p12 -Dakka.cluster.seed-nodes.0=akka://twcloud@twcloud:2552 -Desi.persistence.datastax-java-driver.basic.contact-points.0=cassandra:9042 -Desi.indexer.enabled=true -Desi.server.actor.query.component-enabled=true -Desi.auth.url=https://FQDN:8443 -Desi.zookeeper.url=zookeeper:2181 -Desi.auth.https.file=certs/trust/webapp.crt -Desi.query.es.node.host=elasticsearch volumes: - ../data/certs:/twcloud/certs networks: - twc-net healthcheck: test: ["CMD", "nc", "-z", "-w2", "localhost", "3579"] interval: 10s timeout: 5s retries: 30 networks: twc-net: external: trueSHELL twcloud/docker.scripts/entrypoint.sh
#!/bin/bash echo "JAVA_HOME=${JAVA_HOME}" echo "TWCLOUD_OPTS=${TWCLOUD_OPTS}" echo ====================================================== free -h echo ====================================================== java -version echo ====================================================== ls -la sed -i 's/\r//g' twcloud sed -i 's/\r//g' jvm.options sed -i 's/\r//g' configuration/application.conf echo ====================================================== cat configuration/application.conf echo ====================================================== cat jvm.options echo ====================================================== echo "Starting..." ./twcloud echo "Exiting... $?" echo ======================================================SHELLtwcloud/docker.scripts/init.sh
#!/bin/bash echo "=== INIT ===" apt-get -y update && apt-get -y upgrade && apt-get -y install apt-utils sudo wget netcat && rm -rf /var/lib/apt/lists/* echo "/=== INIT ===/"SHELL- Build the image by running the following command:
cd /twc/twcloud; docker compose build --no-cacheSHELL
- twcloud/Dockerfile
2. Start Teamwork Cloud by running the following command:
docker compose up -d
SHELL
3. Run a health check by executing the following command to check if TWC is operational:
docker exec -it twcloud nc -vz localhost 3579
SHELL