Teamwork Cloud is the core backend platform for the container network.

Downloading Teamwork Cloud software

To download the Teamwork Cloud software


  1. Download the <product_name>_<version_number>_linux64.zip file from https://software.3ds.com. See 3DS Media list.
  2. Copy <product_name>_<version_number>_linux64.zip to /twc on the server . Change directory to twc
    cd /twc
    SHELL
  3. 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

  1. Create the following files : 
    1. 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
    2. twcloud/docker-compose.yml
      Change "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: true
       
      SHELL
    3. 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 ======================================================
      SHELL
    4. twcloud/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
    5. Build the image by running the following command:
      cd /twc/twcloud;
      docker compose build --no-cache
      SHELL

 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