Files
supersonic/docker/docker-compose.yml

77 lines
1.9 KiB
YAML

version: '3.8'
services:
mysql:
image: mysql:8.0
container_name: supersonic_mysql
environment:
MYSQL_ROOT_PASSWORD: root_password
MYSQL_DATABASE: supersonic_db
MYSQL_USER: supersonic_user
MYSQL_PASSWORD: supersonic_password
ports:
- "3306:3306"
volumes:
- mysql_data:/var/lib/mysql
networks:
- supersonic_network
dns:
- 8.8.8.8
- 8.8.4.4
db_init:
image: supersonicbi/supersonic:0.9.2-SNAPSHOT
container_name: supersonic_db_init
depends_on:
- mysql
networks:
- supersonic_network
command: >
sh -c "
sleep 30 &&
if ! mysql -h supersonic_mysql -usupersonic_user -psupersonic_password -e 'use supersonic_db; show tables;' | grep -q 's2_database'; then
mysql -h supersonic_mysql -usupersonic_user -psupersonic_password supersonic_db < /usr/src/app/supersonic-standalone-0.9.2-SNAPSHOT/conf/db/schema-mysql.sql &&
mysql -h supersonic_mysql -usupersonic_user -psupersonic_password supersonic_db < /usr/src/app/supersonic-standalone-0.9.2-SNAPSHOT/conf/db/data-mysql.sql
else
echo 'Database already initialized.'
fi
"
dns:
- 8.8.8.8
- 8.8.4.4
chroma:
image: chromadb/chroma:0.5.3
container_name: supersonic_chroma
ports:
- "8000:8000"
networks:
- supersonic_network
dns:
- 8.8.8.8
- 8.8.4.4
java_backend:
image: supersonicbi/supersonic:0.9.2-SNAPSHOT
container_name: supersonic_java_backend
environment:
DB_HOST: supersonic_mysql
DB_NAME: supersonic_db
DB_USERNAME: supersonic_user
DB_PASSWORD: supersonic_password
ports:
- "9080:9080"
depends_on:
- mysql
- db_init
- chroma
networks:
- supersonic_network
dns:
- 8.8.8.8
- 8.8.4.4
volumes:
mysql_data:
networks:
supersonic_network: