Skip to content

Commit

Permalink
Add TS_SERVE_CONFIG.json and docker-compose.minio-weaviate-python.ts.…
Browse files Browse the repository at this point in the history
…yaml files.
  • Loading branch information
Cdaprod committed Jun 14, 2024
1 parent 10b4bc4 commit d56f45e
Show file tree
Hide file tree
Showing 4 changed files with 175 additions and 6 deletions.
35 changes: 35 additions & 0 deletions TS_SERVE_CONFIG.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,35 @@
{
"TCP": {
"443": {
"HTTPS": true
}
},
"Web": {
"minio.${TS_CERT_DOMAIN}:443": {
"Handlers": {
"/": {
"Proxy": "http://127.0.0.1:9001"
}
}
},
"weaviate.${TS_CERT_DOMAIN}:443": {
"Handlers": {
"/": {
"Proxy": "http://127.0.0.1:8080"
}
}
},
"python.${TS_CERT_DOMAIN}:443": {
"Handlers": {
"/": {
"Proxy": "http://127.0.0.1:80"
}
}
}
},
"AllowFunnel": {
"minio.${TS_CERT_DOMAIN}:443": false,
"weaviate.${TS_CERT_DOMAIN}:443": false,
"python.${TS_CERT_DOMAIN}:443": false
}
}
134 changes: 134 additions & 0 deletions docker-compose.minio-weaviate-python.ts.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,134 @@
version: '3.8'

services:
tailscale-minio:
image: tailscale/tailscale:latest
hostname: tailscale-minio
volumes:
- /dev/net/tun:/dev/net/tun
- ${PWD}/tailscale-minio/state:/var/lib/tailscale
- ${PWD}/TS_SERVE_CONFIG.json:/TS_CONFIG.json
environment:
- TS_AUTHKEY=${TS_AUTHKEY}
- TS_STATE_DIR=/var/lib/tailscale
- TS_SERVE_CONFIG=/TS_CONFIG.json
- TS_EXTRA_ARGS=--advertise-routes=192.168.0.0/24 --advertise-tags=tag:infra --accept-routes --advertise-exit-node --ssh
cap_add:
- NET_ADMIN
- SYS_MODULE
network_mode: host
restart: unless-stopped

minio:
image: minio/minio:latest
hostname: minio_server
environment:
MINIO_ROOT_USER: ${MINIO_ROOT_USER}
MINIO_ROOT_PASSWORD: ${MINIO_ROOT_PASSWORD}
MINIO_DOMAIN: minio.${TS_CERT_DOMAIN}
MINIO_BROWSER_REDIRECT_URL: https://${MINIO_DOMAIN}
command: server /data --address ":9000" --console-address ":9001"
volumes:
- minio_data:/data
depends_on:
- tailscale-minio
network_mode: service:tailscale-minio
ports:
- "9000:9000"
- "9001:9001"

tailscale-weaviate:
image: tailscale/tailscale:latest
hostname: tailscale-weaviate
volumes:
- /dev/net/tun:/dev/net/tun
- ${PWD}/tailscale-weaviate/state:/var/lib/tailscale
- ${PWD}/TS_SERVE_CONFIG.json:/TS_CONFIG.json
environment:
- TS_AUTHKEY=${TS_AUTHKEY}
- TS_STATE_DIR=/var/lib/tailscale
- TS_SERVE_CONFIG=/TS_CONFIG.json
- TS_EXTRA_ARGS=--advertise-routes=192.168.0.0/24 --advertise-tags=tag:infra --accept-routes --advertise-exit-node --ssh
cap_add:
- NET_ADMIN
- SYS_MODULE
network_mode: host
restart: unless-stopped

weaviate:
image: semitechnologies/weaviate:latest
hostname: weaviate_server
command:
- --host
- 0.0.0.0
- --port
- '8080'
- --scheme
- http
environment:
QUERY_DEFAULTS_LIMIT: 20
AUTHENTICATION_ANONYMOUS_ACCESS_ENABLED: 'true'
WEAVIATE_ORIGIN: ${WEAVIATE_ORIGIN}
PERSISTENCE_DATA_PATH: '/var/lib/weaviate'
ENABLE_MODULES: 'backup-s3,text2vec-cohere,text2vec-huggingface,text2vec-palm,text2vec-openai,generative-openai,generative-cohere,generative-palm,ref2vec-centroid,reranker-cohere,qna-openai'
BACKUP_S3_BUCKET: 'weaviate-backups'
BACKUP_S3_ENDPOINT: 'https://${MINIO_DOMAIN}:9000'
BACKUP_S3_ACCESS_KEY_ID: ${MINIO_ROOT_USER}
BACKUP_S3_SECRET_ACCESS_KEY: ${MINIO_ROOT_PASSWORD}
BACKUP_S3_USE_SSL: 'true'
ports:
- "8080:8080"
- "50051:50051" # gRPC port
depends_on:
- tailscale-weaviate
- minio
network_mode: service:tailscale-weaviate
volumes:
- weaviate_data:/var/lib/weaviate

tailscale-python:
image: tailscale/tailscale:latest
hostname: tailscale-python
volumes:
- /dev/net/tun:/dev/net/tun
- ${PWD}/tailscale-python/state:/var/lib/tailscale
- ${PWD}/TS_SERVE_CONFIG.json:/TS_CONFIG.json
environment:
- TS_AUTHKEY=${TS_AUTHKEY}
- TS_STATE_DIR=/var/lib/tailscale
- TS_SERVE_CONFIG=/TS_CONFIG.json
- TS_EXTRA_ARGS=--advertise-routes=192.168.0.0/24 --advertise-tags=tag:infra --accept-routes --advertise-exit-node --ssh
cap_add:
- NET_ADMIN
- SYS_MODULE
network_mode: host
restart: unless-stopped

python-app:
image: cdaprod/python-app
hostname: python_app
build:
context: ./app
dockerfile: Dockerfile
depends_on:
- weaviate
- minio
environment:
- KEEP_CONTAINER_ALIVE=true # Set to false or remove for production
network_mode: service:tailscale-python

volumes:
minio_data:
driver: local
weaviate_data:
driver: local
tailscale-minio:
driver: local
tailscale-weaviate:
driver: local
tailscale-python:
driver: local

networks:
app_network:
driver: bridge
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,7 @@ services:
environment:
- TS_AUTHKEY=${TS_AUTHKEY}
- TS_STATE_DIR=/var/lib/tailscale
- TS_SERVE_CONFIG=/TS_CONFIG.json
- TS_SERVE_CONFIG=/TS_SERVE_CONFIG.json
- TS_EXTRA_ARGS=--advertise-routes=192.168.0.0/24 --advertise-tags=tag:infra --accept-routes --advertise-exit-node --ssh
cap_add:
- NET_ADMIN
Expand Down Expand Up @@ -56,7 +56,7 @@ services:
environment:
- TS_AUTHKEY=${TS_AUTHKEY}
- TS_STATE_DIR=/var/lib/tailscale
- TS_SERVE_CONFIG=/TS_CONFIG.json
- TS_SERVE_CONFIG=/TS_SERVE_CONFIG.json
- TS_EXTRA_ARGS=--advertise-routes=192.168.0.0/24 --advertise-tags=tag:infra --accept-routes --advertise-exit-node --ssh
cap_add:
- NET_ADMIN
Expand Down Expand Up @@ -104,7 +104,7 @@ services:
environment:
- TS_AUTHKEY=${TS_AUTHKEY}
- TS_STATE_DIR=/var/lib/tailscale
- TS_SERVE_CONFIG=/TS_CONFIG.json
- TS_SERVE_CONFIG=/TS_SERVE_CONFIG.json
- TS_EXTRA_ARGS=--advertise-routes=192.168.0.0/24 --advertise-tags=tag:infra --accept-routes --advertise-exit-node --ssh
cap_add:
- NET_ADMIN
Expand Down
6 changes: 3 additions & 3 deletions docker-compose.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@ version: '3.8'

services:
minio:
container_name: minio_server
hostname: minio
image: minio/minio
build:
context: ./minio
Expand All @@ -24,7 +24,7 @@ services:
- '8080'
- --scheme
- http
container_name: weaviate_server
hostname: weaviate
image: semitechnologies/weaviate:latest
ports:
- 8080:8080
Expand All @@ -49,7 +49,7 @@ services:

python-app:
image: cdaprod/python-app
container_name: python-app
hostname: python-app
build:
context: ./app
dockerfile: Dockerfile
Expand Down

0 comments on commit d56f45e

Please sign in to comment.