telekinesis-deployment 0.0.1__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (32) hide show
  1. telekinesis_deployment-0.0.1/LICENSE.txt +6 -0
  2. telekinesis_deployment-0.0.1/PKG-INFO +127 -0
  3. telekinesis_deployment-0.0.1/README.md +115 -0
  4. telekinesis_deployment-0.0.1/pyproject.toml +31 -0
  5. telekinesis_deployment-0.0.1/setup.cfg +4 -0
  6. telekinesis_deployment-0.0.1/src/telekinesis_deployment/__init__.py +1 -0
  7. telekinesis_deployment-0.0.1/src/telekinesis_deployment/assets/__init__.py +1 -0
  8. telekinesis_deployment-0.0.1/src/telekinesis_deployment/assets/compose/.env.developer.example +55 -0
  9. telekinesis_deployment-0.0.1/src/telekinesis_deployment/assets/compose/.env.user.example +55 -0
  10. telekinesis_deployment-0.0.1/src/telekinesis_deployment/assets/compose/__init__.py +1 -0
  11. telekinesis_deployment-0.0.1/src/telekinesis_deployment/assets/compose/compose.yaml +221 -0
  12. telekinesis_deployment-0.0.1/src/telekinesis_deployment/cli.py +868 -0
  13. telekinesis_deployment-0.0.1/src/telekinesis_deployment/compose_manager.py +734 -0
  14. telekinesis_deployment-0.0.1/src/telekinesis_deployment/config.py +135 -0
  15. telekinesis_deployment-0.0.1/src/telekinesis_deployment/console.py +441 -0
  16. telekinesis_deployment-0.0.1/src/telekinesis_deployment/constants.py +139 -0
  17. telekinesis_deployment-0.0.1/src/telekinesis_deployment/docker_client.py +129 -0
  18. telekinesis_deployment-0.0.1/src/telekinesis_deployment/errors.py +39 -0
  19. telekinesis_deployment-0.0.1/src/telekinesis_deployment/health.py +403 -0
  20. telekinesis_deployment-0.0.1/src/telekinesis_deployment/image_loader.py +116 -0
  21. telekinesis_deployment-0.0.1/src/telekinesis_deployment/installer.py +168 -0
  22. telekinesis_deployment-0.0.1/src/telekinesis_deployment/licensing.py +36 -0
  23. telekinesis_deployment-0.0.1/src/telekinesis_deployment/preflight.py +293 -0
  24. telekinesis_deployment-0.0.1/src/telekinesis_deployment/process.py +192 -0
  25. telekinesis_deployment-0.0.1/src/telekinesis_deployment/provisioning.py +106 -0
  26. telekinesis_deployment-0.0.1/src/telekinesis_deployment/registry.py +47 -0
  27. telekinesis_deployment-0.0.1/src/telekinesis_deployment.egg-info/PKG-INFO +127 -0
  28. telekinesis_deployment-0.0.1/src/telekinesis_deployment.egg-info/SOURCES.txt +30 -0
  29. telekinesis_deployment-0.0.1/src/telekinesis_deployment.egg-info/dependency_links.txt +1 -0
  30. telekinesis_deployment-0.0.1/src/telekinesis_deployment.egg-info/entry_points.txt +2 -0
  31. telekinesis_deployment-0.0.1/src/telekinesis_deployment.egg-info/requires.txt +3 -0
  32. telekinesis_deployment-0.0.1/src/telekinesis_deployment.egg-info/top_level.txt +1 -0
@@ -0,0 +1,6 @@
1
+ Copyright (c) Telekinesis
2
+
3
+ All rights reserved.
4
+
5
+ This software is proprietary and confidential.
6
+ Unauthorized copying, distribution, or use is prohibited.
@@ -0,0 +1,127 @@
1
+ Metadata-Version: 2.4
2
+ Name: telekinesis-deployment
3
+ Version: 0.0.1
4
+ Summary: Installer and CLI for the Telekinesis deployment stack.
5
+ Requires-Python: <3.13,>=3.11
6
+ Description-Content-Type: text/markdown
7
+ License-File: LICENSE.txt
8
+ Requires-Dist: docker==7.1.0
9
+ Requires-Dist: loguru==0.7.3
10
+ Requires-Dist: requests==2.33.1
11
+ Dynamic: license-file
12
+
13
+ <div align="center">
14
+ <p>
15
+ <a href="https://telekinesis.ai" target="_blank">
16
+ <img
17
+ width="100%"
18
+ src="https://assets.telekinesis.ai/logo/telekinesis-banner.png"
19
+ alt="Telekinesis"
20
+ >
21
+ </a>
22
+ </p>
23
+
24
+ <br>
25
+
26
+ [![Python versions](https://img.shields.io/badge/python-3.11%20%7C%203.12-blue)](https://www.python.org/)
27
+ [![License](https://img.shields.io/badge/license-proprietary-lightgrey)](LICENSE.txt)
28
+ </div>
29
+
30
+ <p align="center">
31
+ <a href="https://github.com/telekinesis-ai">GitHub</a>
32
+ &nbsp;&bull;&nbsp;
33
+ <a href="https://www.linkedin.com/company/telekinesis-ai/">LinkedIn</a>
34
+ &nbsp;&bull;&nbsp;
35
+ <a href="https://x.com/telekinesis_ai">X</a>
36
+ &nbsp;&bull;&nbsp;
37
+ <a href="https://discord.gg/7NnQ3bQHqm">Discord</a>
38
+ </p>
39
+
40
+ # Telekinesis Deployment
41
+
42
+ Telekinesis Deployment provides the installation tooling and backend delivery
43
+ workflows for the Telekinesis platform.
44
+
45
+ It includes:
46
+
47
+ - Cloud deployment to Amazon EKS using Helm
48
+ - Local, single-node, and evaluator deployment using Docker Compose
49
+ - A command-line interface for installing and managing Telekinesis services
50
+ - Shared configuration, health checks, licensing, and provisioning utilities
51
+
52
+ ## Release Model
53
+
54
+ Telekinesis Deployment is currently in active development (pre-1.0). Features
55
+ and interfaces may evolve between minor releases. Use the version specified by
56
+ the Telekinesis development team for production deployments.
57
+
58
+ ## Installation
59
+
60
+ 1. Install [Miniconda](https://docs.conda.io/projects/miniconda/en/latest/) or
61
+ another Python environment manager.
62
+
63
+ 2. Clone this repository:
64
+
65
+ ```bash
66
+ git clone -b develop https://gitlab.com/telekinesis/deployment.git
67
+ cd deployment
68
+ ```
69
+
70
+ 3. Create and activate a supported Python environment:
71
+
72
+ > Telekinesis Deployment supports Python 3.11 and 3.12.
73
+
74
+ ```bash
75
+ conda create -n telekinesis-deployment python=3.11
76
+ conda activate telekinesis-deployment
77
+ ```
78
+
79
+ 4. Install the CLI and its dependencies in editable mode:
80
+
81
+ ```bash
82
+ pip install -e .
83
+ ```
84
+
85
+ 5. Verify the installation:
86
+
87
+ ```bash
88
+ telekinesis server --help
89
+ ```
90
+
91
+ ## Example
92
+
93
+ Initialize a local deployment and start its services:
94
+
95
+ ```bash
96
+ telekinesis server init
97
+ telekinesis server install
98
+ telekinesis server status
99
+ ```
100
+
101
+ Use `telekinesis server init --profile developer` to initialize a developer
102
+ environment. Run `telekinesis server --help` to see all available commands.
103
+
104
+ ## Deployment Modes
105
+
106
+ | Mode | When to use |
107
+ | --- | --- |
108
+ | [Cloud deployment](docs/helm/overview.md) | Deploy backend services to Amazon EKS with Helm |
109
+ | [Compose deployment](docs/compose/overview.md) | Run the backend locally, on a single server, or for evaluator installations |
110
+
111
+ ## Resources
112
+
113
+ - [Development guide](DEVELOPMENT.md)
114
+ - [Installer documentation](docs/installer/overview.md)
115
+ - [Telekinesis documentation](https://docs.telekinesis.ai)
116
+ - [Release history](RELEASE.md)
117
+
118
+ ## Support
119
+
120
+ For issues and questions, contact the Telekinesis development team at
121
+ [support@telekinesis.ai](mailto:support@telekinesis.ai) or join the
122
+ [Telekinesis Discord](https://discord.com/invite/7NnQ3bQHqm).
123
+
124
+ ## License
125
+
126
+ This repository is proprietary and confidential. See [LICENSE.txt](LICENSE.txt)
127
+ for details.
@@ -0,0 +1,115 @@
1
+ <div align="center">
2
+ <p>
3
+ <a href="https://telekinesis.ai" target="_blank">
4
+ <img
5
+ width="100%"
6
+ src="https://assets.telekinesis.ai/logo/telekinesis-banner.png"
7
+ alt="Telekinesis"
8
+ >
9
+ </a>
10
+ </p>
11
+
12
+ <br>
13
+
14
+ [![Python versions](https://img.shields.io/badge/python-3.11%20%7C%203.12-blue)](https://www.python.org/)
15
+ [![License](https://img.shields.io/badge/license-proprietary-lightgrey)](LICENSE.txt)
16
+ </div>
17
+
18
+ <p align="center">
19
+ <a href="https://github.com/telekinesis-ai">GitHub</a>
20
+ &nbsp;&bull;&nbsp;
21
+ <a href="https://www.linkedin.com/company/telekinesis-ai/">LinkedIn</a>
22
+ &nbsp;&bull;&nbsp;
23
+ <a href="https://x.com/telekinesis_ai">X</a>
24
+ &nbsp;&bull;&nbsp;
25
+ <a href="https://discord.gg/7NnQ3bQHqm">Discord</a>
26
+ </p>
27
+
28
+ # Telekinesis Deployment
29
+
30
+ Telekinesis Deployment provides the installation tooling and backend delivery
31
+ workflows for the Telekinesis platform.
32
+
33
+ It includes:
34
+
35
+ - Cloud deployment to Amazon EKS using Helm
36
+ - Local, single-node, and evaluator deployment using Docker Compose
37
+ - A command-line interface for installing and managing Telekinesis services
38
+ - Shared configuration, health checks, licensing, and provisioning utilities
39
+
40
+ ## Release Model
41
+
42
+ Telekinesis Deployment is currently in active development (pre-1.0). Features
43
+ and interfaces may evolve between minor releases. Use the version specified by
44
+ the Telekinesis development team for production deployments.
45
+
46
+ ## Installation
47
+
48
+ 1. Install [Miniconda](https://docs.conda.io/projects/miniconda/en/latest/) or
49
+ another Python environment manager.
50
+
51
+ 2. Clone this repository:
52
+
53
+ ```bash
54
+ git clone -b develop https://gitlab.com/telekinesis/deployment.git
55
+ cd deployment
56
+ ```
57
+
58
+ 3. Create and activate a supported Python environment:
59
+
60
+ > Telekinesis Deployment supports Python 3.11 and 3.12.
61
+
62
+ ```bash
63
+ conda create -n telekinesis-deployment python=3.11
64
+ conda activate telekinesis-deployment
65
+ ```
66
+
67
+ 4. Install the CLI and its dependencies in editable mode:
68
+
69
+ ```bash
70
+ pip install -e .
71
+ ```
72
+
73
+ 5. Verify the installation:
74
+
75
+ ```bash
76
+ telekinesis server --help
77
+ ```
78
+
79
+ ## Example
80
+
81
+ Initialize a local deployment and start its services:
82
+
83
+ ```bash
84
+ telekinesis server init
85
+ telekinesis server install
86
+ telekinesis server status
87
+ ```
88
+
89
+ Use `telekinesis server init --profile developer` to initialize a developer
90
+ environment. Run `telekinesis server --help` to see all available commands.
91
+
92
+ ## Deployment Modes
93
+
94
+ | Mode | When to use |
95
+ | --- | --- |
96
+ | [Cloud deployment](docs/helm/overview.md) | Deploy backend services to Amazon EKS with Helm |
97
+ | [Compose deployment](docs/compose/overview.md) | Run the backend locally, on a single server, or for evaluator installations |
98
+
99
+ ## Resources
100
+
101
+ - [Development guide](DEVELOPMENT.md)
102
+ - [Installer documentation](docs/installer/overview.md)
103
+ - [Telekinesis documentation](https://docs.telekinesis.ai)
104
+ - [Release history](RELEASE.md)
105
+
106
+ ## Support
107
+
108
+ For issues and questions, contact the Telekinesis development team at
109
+ [support@telekinesis.ai](mailto:support@telekinesis.ai) or join the
110
+ [Telekinesis Discord](https://discord.com/invite/7NnQ3bQHqm).
111
+
112
+ ## License
113
+
114
+ This repository is proprietary and confidential. See [LICENSE.txt](LICENSE.txt)
115
+ for details.
@@ -0,0 +1,31 @@
1
+ [build-system]
2
+ requires = ["setuptools>=68"]
3
+ build-backend = "setuptools.build_meta"
4
+
5
+ [project]
6
+ name = "telekinesis-deployment"
7
+ version = "0.0.1"
8
+ description = "Installer and CLI for the Telekinesis deployment stack."
9
+ readme = "README.md"
10
+ requires-python = ">=3.11, <3.13"
11
+ dependencies = [
12
+ "docker==7.1.0",
13
+ "loguru==0.7.3",
14
+ "requests==2.33.1",
15
+ ]
16
+
17
+ [project.scripts]
18
+ telekinesis = "telekinesis_deployment.cli:main"
19
+
20
+ [tool.setuptools]
21
+ package-dir = {"" = "src"}
22
+
23
+ [tool.setuptools.packages.find]
24
+ where = ["src"]
25
+
26
+ [tool.setuptools.package-data]
27
+ telekinesis_deployment = [
28
+ "assets/compose/compose.yaml",
29
+ "assets/compose/.env.user.example",
30
+ "assets/compose/.env.developer.example",
31
+ ]
@@ -0,0 +1,4 @@
1
+ [egg_info]
2
+ tag_build =
3
+ tag_date = 0
4
+
@@ -0,0 +1 @@
1
+ """Utilities and CLI entry points for Telekinesis deployment workflows."""
@@ -0,0 +1 @@
1
+ """Packaged runtime assets for Telekinesis deployment."""
@@ -0,0 +1,55 @@
1
+ INSTALL_PROFILE=developer
2
+ IMAGE_REGISTRY=registry.gitlab.com/telekinesis
3
+
4
+ THALAMUS_TAG=0.1.1
5
+ RETINA_API_TAG=0.1.2
6
+ CORNEA_API_TAG=0.2.3
7
+ PUPIL_API_TAG=0.3.1
8
+ VITREOUS_API_TAG=0.2.1
9
+ TRITON_CORNEA_TAG=0.2.0
10
+ TRITON_RETINA_INSTANCE_1_TAG=0.1.0
11
+ TRITON_RETINA_INSTANCE_2_TAG=0.1.0
12
+
13
+ # Thalamus API
14
+ # Postgres
15
+ POSTGRES_USER=postgres
16
+ POSTGRES_PASSWORD=changeme
17
+ POSTGRES_HOST=db
18
+ POSTGRES_PORT=5432
19
+ POSTGRES_DB=thalamus
20
+
21
+ # Cognito
22
+ COGNITO_REGION=us-east-1
23
+ COGNITO_USER_POOL_ID=us-east-1_SXLeSuunn
24
+ COGNITO_CLIENT_ID=6it51v8ct58lrind00val9f7of
25
+
26
+ # Retina API
27
+ RETINA_THALAMUS_URL=http://127.0.0.1:4000
28
+ RETINA_TRITON_URL_INSTANCE_1=127.0.0.1:8011
29
+ RETINA_TRITON_URL_INSTANCE_2=127.0.0.1:8021
30
+
31
+ # Cornea API
32
+ CORNEA_THALAMUS_URL=http://127.0.0.1:4000
33
+ CORNEA_TRITON_URL=127.0.0.1:8001
34
+
35
+ # Pupil API
36
+ PUPIL_THALAMUS_URL=http://127.0.0.1:4000
37
+
38
+ # Vitreous API
39
+ VITREOUS_THALAMUS_URL=http://127.0.0.1:4000
40
+ VITREOUS_TRITON_URL_INSTANCE_1=127.0.0.1:8051
41
+ VITREOUS_TRITON_URL_INSTANCE_2=127.0.0.1:8061
42
+
43
+ # Triton Cornea
44
+ TRITON_CORNEA_MODEL_REPOSITORY=
45
+
46
+ # Triton Retina Instance 1
47
+ TRITON_RETINA_INSTANCE_1_MODEL_REPOSITORY=
48
+
49
+ # Triton Retina Instance 2
50
+ TRITON_RETINA_INSTANCE_2_MODEL_REPOSITORY=
51
+
52
+ # Triton Iris
53
+ TRITON_IRIS_MODEL_REPOSITORY=
54
+
55
+ HF_TOKEN=<huggingface-token>
@@ -0,0 +1,55 @@
1
+ INSTALL_PROFILE=user
2
+ IMAGE_REGISTRY=registry.gitlab.com/telekinesis
3
+
4
+ THALAMUS_TAG=0.1.1
5
+ RETINA_API_TAG=0.1.2
6
+ CORNEA_API_TAG=0.2.3
7
+ PUPIL_API_TAG=0.3.1
8
+ VITREOUS_API_TAG=0.2.1
9
+ TRITON_CORNEA_TAG=0.2.0
10
+ TRITON_RETINA_INSTANCE_1_TAG=0.1.0
11
+ TRITON_RETINA_INSTANCE_2_TAG=0.1.0
12
+
13
+ # Thalamus API
14
+ # Postgres
15
+ POSTGRES_USER=postgres
16
+ POSTGRES_PASSWORD=changeme
17
+ POSTGRES_HOST=db
18
+ POSTGRES_PORT=5432
19
+ POSTGRES_DB=thalamus
20
+
21
+ # Cognito
22
+ COGNITO_REGION=us-east-1
23
+ COGNITO_USER_POOL_ID=
24
+ COGNITO_CLIENT_ID=
25
+
26
+ # Retina API
27
+ RETINA_THALAMUS_URL=http://127.0.0.1:4000
28
+ RETINA_TRITON_URL_INSTANCE_1=127.0.0.1:8011
29
+ RETINA_TRITON_URL_INSTANCE_2=127.0.0.1:8021
30
+
31
+ # Cornea API
32
+ CORNEA_THALAMUS_URL=http://127.0.0.1:4000
33
+ CORNEA_TRITON_URL=127.0.0.1:8001
34
+
35
+ # Pupil API
36
+ PUPIL_THALAMUS_URL=http://127.0.0.1:4000
37
+
38
+ # Vitreous API
39
+ VITREOUS_THALAMUS_URL=http://127.0.0.1:4000
40
+ VITREOUS_TRITON_URL_INSTANCE_1=127.0.0.1:8051
41
+ VITREOUS_TRITON_URL_INSTANCE_2=127.0.0.1:8061
42
+
43
+ # Triton Cornea
44
+ TRITON_CORNEA_MODEL_REPOSITORY=
45
+
46
+ # Triton Retina Instance 1
47
+ TRITON_RETINA_INSTANCE_1_MODEL_REPOSITORY=
48
+
49
+ # Triton Retina Instance 2
50
+ TRITON_RETINA_INSTANCE_2_MODEL_REPOSITORY=
51
+
52
+ # Triton Iris
53
+ TRITON_IRIS_MODEL_REPOSITORY=
54
+
55
+ HF_TOKEN=
@@ -0,0 +1 @@
1
+ """Packaged Docker Compose assets for Telekinesis deployment."""
@@ -0,0 +1,221 @@
1
+
2
+ name: telekinesis-backend
3
+
4
+ services:
5
+ thalamus:
6
+ image: ${IMAGE_REGISTRY:-registry.gitlab.com/telekinesis}/thalamus:${THALAMUS_TAG:-latest}
7
+ container_name: thalamus-local
8
+ ports:
9
+ - "4000:4000"
10
+ restart: unless-stopped
11
+ environment:
12
+ # Postgres — POSTGRES_HOST overridden to the compose service name.
13
+ POSTGRES_USER: ${POSTGRES_USER}
14
+ POSTGRES_PASSWORD: ${POSTGRES_PASSWORD}
15
+ POSTGRES_HOST: db
16
+ POSTGRES_PORT: ${POSTGRES_PORT}
17
+ POSTGRES_DB: ${POSTGRES_DB}
18
+ # Cognito
19
+ COGNITO_REGION: ${COGNITO_REGION}
20
+ COGNITO_USER_POOL_ID: ${COGNITO_USER_POOL_ID}
21
+ COGNITO_CLIENT_ID: ${COGNITO_CLIENT_ID}
22
+ depends_on:
23
+ - db
24
+ extra_hosts:
25
+ - "host.docker.internal:host-gateway"
26
+ networks:
27
+ - telekinesis-net
28
+
29
+ db:
30
+ image: postgres:15
31
+ container_name: db-local
32
+ restart: unless-stopped
33
+ ports:
34
+ - "5432:5432"
35
+ volumes:
36
+ - pgdata:/var/lib/postgresql/data
37
+ environment:
38
+ POSTGRES_USER: ${POSTGRES_USER}
39
+ POSTGRES_PASSWORD: ${POSTGRES_PASSWORD}
40
+ POSTGRES_DB: ${POSTGRES_DB}
41
+ networks:
42
+ - telekinesis-net
43
+
44
+ adminer:
45
+ image: adminer
46
+ container_name: adminer-local
47
+ restart: unless-stopped
48
+ ports:
49
+ - "8080:8080"
50
+ networks:
51
+ - telekinesis-net
52
+
53
+
54
+ retina-api:
55
+ image: ${IMAGE_REGISTRY:-registry.gitlab.com/telekinesis}/retina:${RETINA_API_TAG:-latest}
56
+ container_name: retina-api-local
57
+ ports:
58
+ - "4300:4300"
59
+ restart: unless-stopped
60
+ environment:
61
+ # Cognito
62
+ COGNITO_REGION: ${COGNITO_REGION}
63
+ COGNITO_USER_POOL_ID: ${COGNITO_USER_POOL_ID}
64
+ COGNITO_CLIENT_ID: ${COGNITO_CLIENT_ID}
65
+ # Service URLs — overridden to use compose network names instead of 127.0.0.1.
66
+ RETINA_THALAMUS_URL: http://thalamus:4000
67
+ RETINA_TRITON_URL_INSTANCE_1: triton-retina-instance-1:8001
68
+ RETINA_TRITON_URL_INSTANCE_2: triton-retina-instance-2:8001
69
+ extra_hosts:
70
+ - "host.docker.internal:host-gateway"
71
+ networks:
72
+ - telekinesis-net
73
+
74
+ cornea-api:
75
+ image: ${IMAGE_REGISTRY:-registry.gitlab.com/telekinesis}/cornea:${CORNEA_API_TAG:-latest}
76
+ container_name: cornea-api-local
77
+ ports:
78
+ - "4400:4400"
79
+ restart: unless-stopped
80
+ environment:
81
+ # Service URLs — overridden to use compose network names instead of 127.0.0.1.
82
+ CORNEA_THALAMUS_URL: http://thalamus:4000
83
+ CORNEA_TRITON_URL: triton-cornea:8001
84
+ extra_hosts:
85
+ - "host.docker.internal:host-gateway"
86
+ networks:
87
+ - telekinesis-net
88
+
89
+
90
+ pupil-api:
91
+ image: ${IMAGE_REGISTRY:-registry.gitlab.com/telekinesis}/pupil:${PUPIL_API_TAG:-latest}
92
+ container_name: pupil-api-local
93
+ ports:
94
+ - "4200:4200"
95
+ restart: unless-stopped
96
+ environment:
97
+ # Service URLs — overridden to use compose network names instead of 127.0.0.1.
98
+ PUPIL_THALAMUS_URL: http://thalamus:4000
99
+ extra_hosts:
100
+ - "host.docker.internal:host-gateway"
101
+ networks:
102
+ - telekinesis-net
103
+
104
+ vitreous-api:
105
+ image: ${IMAGE_REGISTRY:-registry.gitlab.com/telekinesis}/vitreous:${VITREOUS_API_TAG:-latest}
106
+ container_name: vitreous-api-local
107
+ ports:
108
+ - "4100:4100"
109
+ restart: unless-stopped
110
+ environment:
111
+ # Service URLs — overridden to use compose network names instead of 127.0.0.1.
112
+ VITREOUS_THALAMUS_URL: http://thalamus:4000
113
+ VITREOUS_TRITON_URL_INSTANCE_1: triton-vitreous-instance-1:8001
114
+ VITREOUS_TRITON_URL_INSTANCE_2: triton-vitreous-instance-2:8001
115
+ extra_hosts:
116
+ - "host.docker.internal:host-gateway"
117
+ networks:
118
+ - telekinesis-net
119
+
120
+
121
+ triton-cornea:
122
+ image: triton-cornea:${TRITON_CORNEA_TAG:-latest}
123
+ container_name: triton-cornea
124
+ runtime: nvidia
125
+ environment:
126
+ NVIDIA_VISIBLE_DEVICES: all
127
+ NVIDIA_DRIVER_CAPABILITIES: compute,utility
128
+ HF_TOKEN: ${HF_TOKEN}
129
+ ports:
130
+ - "8000:8000" # HTTP
131
+ - "8001:8001" # gRPC
132
+ - "8002:8002" # metrics
133
+ volumes:
134
+ - ${TRITON_CORNEA_MODEL_REPOSITORY:-./cornea/model_repository}:/models
135
+ command:
136
+ - --model-repository=/models
137
+ - --disable-auto-complete-config
138
+ # - --model-control-mode=poll
139
+ # - --repository-poll-secs=15
140
+ shm_size: "2gb"
141
+ networks:
142
+ - telekinesis-net
143
+
144
+ triton-retina-instance-1:
145
+ image: triton-retina-instance-1:${TRITON_RETINA_INSTANCE_1_TAG:-latest}
146
+ container_name: triton-retina-instance-1
147
+ runtime: nvidia
148
+ environment:
149
+ NVIDIA_VISIBLE_DEVICES: all
150
+ NVIDIA_DRIVER_CAPABILITIES: compute,utility
151
+ HF_TOKEN: ${HF_TOKEN}
152
+ ports:
153
+ - "8010:8000" # HTTP
154
+ - "8011:8001" # gRPC
155
+ - "8012:8002" # metrics
156
+ volumes:
157
+ - ${TRITON_RETINA_INSTANCE_1_MODEL_REPOSITORY:-./retina-instance-1/model_repository}:/models
158
+ command:
159
+ - --model-repository=/models
160
+ - --disable-auto-complete-config
161
+ # - --model-control-mode=poll
162
+ # - --repository-poll-secs=15
163
+ shm_size: "2gb"
164
+ networks:
165
+ - telekinesis-net
166
+
167
+ triton-retina-instance-2:
168
+ image: triton-retina-instance-2:${TRITON_RETINA_INSTANCE_2_TAG:-latest}
169
+ container_name: triton-retina-instance-2
170
+ runtime: nvidia
171
+ environment:
172
+ NVIDIA_VISIBLE_DEVICES: all
173
+ NVIDIA_DRIVER_CAPABILITIES: compute,utility
174
+ HF_TOKEN: ${HF_TOKEN}
175
+ ports:
176
+ - "8020:8000" # HTTP
177
+ - "8021:8001" # gRPC (retina / Qwen)
178
+ - "8022:8002" # metrics
179
+ volumes:
180
+ - ${TRITON_RETINA_INSTANCE_2_MODEL_REPOSITORY:-./retina-instance-2/model_repository}:/models
181
+ command:
182
+ - --model-repository=/models
183
+ - --disable-auto-complete-config
184
+ # - --model-control-mode=poll
185
+ # - --repository-poll-secs=15
186
+ shm_size: "2gb"
187
+ networks:
188
+ - telekinesis-net
189
+
190
+ triton-iris-local:
191
+ image: nvcr.io/nvidia/tritonserver:25.05-py3
192
+ container_name: triton-iris-local
193
+ runtime: nvidia
194
+ environment:
195
+ NVIDIA_VISIBLE_DEVICES: all
196
+ NVIDIA_DRIVER_CAPABILITIES: compute,utility
197
+ ports:
198
+ - "8040:8000" # HTTP
199
+ - "8041:8001" # gRPC
200
+ - "8042:8002" # metrics
201
+ extra_hosts:
202
+ - "host.docker.internal:host-gateway"
203
+ volumes:
204
+ - ${TRITON_IRIS_MODEL_REPOSITORY:-./iris/model_repository}:/models
205
+ command:
206
+ - tritonserver
207
+ - --model-repository=/models
208
+ - --disable-auto-complete-config
209
+ - --model-control-mode=poll
210
+ - --repository-poll-secs=30
211
+ - --log-verbose=1
212
+ shm_size: "2gb"
213
+ networks:
214
+ - telekinesis-net
215
+
216
+ networks:
217
+ telekinesis-net:
218
+ name: telekinesis-net
219
+
220
+ volumes:
221
+ pgdata: