DSD is a Docker manager for data science users on a host machine. It provide each user an independent environment and allow users to share the computational resources on the host without disturbing other users. The provided environment is simple but powerful, with which users can work on their data science project right away. It also integrate management of NVidia GPU resources for easy and independent access.
This project is still under development. Before any update, make sure your repository is up-to-date.
DSD console works in a Docker container by default. The simplest way is to start from the provided script as follows.
bash dsd/docker/dsd/run.sh
A container will be created for DSD console at runtime with proper access to the host API.
The script will promote to require sudo
privilege.
Follow the promoted links to visit DSD service.
Enjoy and report any issue to us.
We use a fork & pull-request workflow.
Every developer fork the baseline repository dsddev/dsd
and develop on his/her own repository.
After certain progresses being made, submit a pull-request to the baseline repository.
We appreciate any contribution to this project.
Following are basic steps to work on the code.
-
Fork the baseline repository.
-
Clone your own repository to a local working directory.
git clone git@git.oschina.net:<your_name>/dsd.git
You may need this instruction if this is your first go on git.osc
.
-
Pull from the baseline repository to your own repository to keep it up-to-date. You can use the "sync" button on the web interface.
-
Change to your local working directory. Pull from your own repository to the local working directory.
cd </path/to/>dsd
git pull
-
Resolve conflict if there is any, and commit for the merge of course.
-
Start working with your code. You do that right in the container for DSD console in development mode.
- Start the DSD console container in development mode
bash dsd/docker/dsd/run.sh dev
It is recommend to read
README.md
indocker/dsd
for more information.- Follow the promoted links to visit the development web interface.
Go to the
jupyter
links first, using a browser. Then you will have a web access to the container and be able to develop in it.
Project working directory
dsd
will be mounted at~/workspae/dsd
. You can also use anygit
command there.ssh-key
of the current user on the host are also mounted. You will have the same git privilege.- To start the web app, use the scripts in
~/workspace
.start.sh
will do that for you. Open a terminal on jupyter.
bash start.sh
It invoke
init_db.py
to initialize and start the database, and then start DSD console usingrun.py
. All parameters ofstart.sh
will be pass toinit_db.py
. Usepython init_db.py --help
to see their meaning. More information are available inREADME.md
inworkspace
. -
With any progress, commit your update.
git commit
Push a group of commits to your own repository after that.
git push
-
Submit a pull-request on the web interface back to the baseline repository.
-
Watch the notifications from both email and the web interface. Read the comments and fix any issue presented until the acceptance of the pull-request. You can commit and push any modification during this time and they will be append to the pull-request.
-
After the pull-request being accepted, you already know how we work together. Go back to step 3 and it is another day now.
Life Would Be Easier If I Had The Source Code.