Comments (3)
My plan here is to split ModelDB into multiple Docker images. Dockerized projects typically run one service per image, so services can be started/stopped/upgraded at the container level rather than having to shell into them and keep track of what's changed from the image.
I was thinking four images:
- Official MongoDB
- Backend Java app and SQLite
- Frontend NodeJS app
- Pre-built ModelDB client libraries
The current monolithic image on Docker Hub is 5 GB. A server made of split images would only need about 2.5 GB: MongoDB (0.3 GB), backend (1.3 GB), and frontend (0.9 GB).
We could shrink the total another 0.5 GB by removing the Thrift compiler from images after it has served its purpose, but then incremental dev builds would take a long time. That's something to think about for production builds if we want to be aggressive about image sizes.
I'll include a Docker Compose file so end users only need to run docker-compose up
to get a server going.
Thoughts?
from modeldb.
I strongly support going the microservices route as you've suggested. At Scotiabank we were already talking about splitting up the repo into frontend, server, and client containers to achieve our aims - separating out MongoDB makes sense as well.
from modeldb.
@shubhamchopra @skadambi thoughts?
from modeldb.
Related Issues (20)
- please support pyyaml>5.4 HOT 2
- Cannot create_registered_model or get_or_create_registered_model HOT 3
- log_image support? HOT 2
- Got a 404 response when do create_registered_model HOT 2
- Creating local dataset versions not working as expected HOT 3
- verta.data_types doesn't work HOT 2
- verta doesn't support pyYAML 5.4 version HOT 7
- Current verta==0.20.0 version doesn't support click>=8.0 HOT 2
- Documentation: What is ModelDB what is Verta Platform? HOT 1
- Documentation: Model Serving? HOT 1
- docker compose run modeldb not found model registry HOT 3
- Unable to run docker-compose with WSL on Windows HOT 2
- Model registration is not working HOT 1
- Model registration is not working HOT 1
- Manage model dependencies doesn't work(logEnvironment 404) HOT 1
- Docker example: migration failed
- HTTPError 503, connection refused HOT 5
- Add a security policy
- Create SECURITY.md HOT 1
- Could not find artifact ai.verta:protos-public:jar:1.0-SNAPSHOT when building images from source HOT 2
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from modeldb.