- Notifications
You must be signed in to change notification settings - Fork0
Run PostgresML + goodies in one command
License
armelhbobdad/postgresml-docker
Folders and files
| Name | Name | Last commit message | Last commit date | |
|---|---|---|---|---|
Repository files navigation
RunPostgresML,TimescaleDB andpgAdmin in one command. This repository contains adocker-compose file to run a PostgresML database with TimescaleDB and a PgAdmin instance. The stack is configured to use theNVIDIA Container Toolkit to enable GPU support for the PostgresML database. Additionally there are bulgarian dictionaries that provide full text search support for the Bulgarian language that can be spicy combined with the functionality that PostgresML provides to achieve wonderful stuff.
TimescaleDB currently is not included in the stack. It will be added in the future.
Install the NVIDIA Container Toolkit on Ubuntu 22.04
curl -fsSL https://nvidia.github.io/libnvidia-container/gpgkey| sudo gpg --dearmor -o /usr/share/keyrings/nvidia-container-toolkit-keyring.gpg \&& curl -s -L https://nvidia.github.io/libnvidia-container/stable/deb/nvidia-container-toolkit.list| \ sed's#deb https://#deb [signed-by=/usr/share/keyrings/nvidia-container-toolkit-keyring.gpg] https://#g'| \ sudo tee /etc/apt/sources.list.d/nvidia-container-toolkit.listsudo apt-get updatesudo apt-get install -y nvidia-container-toolkit
git clone https://github.com/athennamind/postgresml-docker.gitcd postgresml-dockerBefore running the containers, take a look at the.env file and adjust the values to your needs. By default the stack is configured to use all available GPUs as specified inNVIDIA_VISIBLE_DEVICES. If you have a single GPU, you can leave the default value. For multiple GPUs please refer to theDocker Documentation to pin specific GPUs.
vim .env# ..........docker compose up -d# wait for the containers to startdocker compose logs -f
- Validate that we are all good
dockerexec -it pgml psql -U postgres -d pgml -c"SELECT pgml.xgboost_version();" xgboost_version----------------- 1.62(1 row)
- Open your browser and navigate to
http://localhost:8000to access the PostgresML dashboard/ui/whatever. - Open your browser and navigate to
http://localhost:8001to access the PgAdmin instance.
If you want to tweak the postgres config, do by editing theconfigs/pgml/postgressql.conf file. Do not forget to restart the compose after.
This compose was used on the following system:
- Ubuntu 22.04
- Docker version 25.0.4, build 1a576c5
- 16GB of RAM
- 8 CPU cores
- 2x NVIDIA RTX 3090
- 1TB Local SSD Storage
Please always consider benchmark and adjusting the resources to your needs, especially if you are going to run this compose in a production environment.
To stop and remove the containers and volumes, run the following command:
docker compose downdocker volume ls| grep"postgresml-docker"| awk'{print $2}'| grep -v"VOLUME"| xargs docker volume rm -f
About
Run PostgresML + goodies in one command
Resources
License
Uh oh!
There was an error while loading.Please reload this page.
Stars
Watchers
Forks
Releases
Packages0
Languages
- Shell75.2%
- Dockerfile23.2%
- Makefile1.6%