What is Doctor
- Doctor is a Documentation Server for all your project docs.
- Doctor beautifully decouples document serving and document contents.
- Create your docs in markdown. Store them anywhere (github/dropbox/google drive/ anywhere really).
- Login to Doctor's Dashboard. Setup links to your doc files in Doctor's Dashboard.
- You are done!
Live Demo
- Doctor's website is a site hosted on doctor using this very Readme.MD file. Yeah very meta.
- Minio Docs has a doctor server running that pulls together MD files that reside across a number of github repos :
Eg:
- README.md in https://github.com/minio/minio
- Markdown files in https://github.com/minio/minio/tree/master/docs
You may use the Suggest Edits
feature in Doctor to submit changes to any of the MD files in github. Doctor relies on github workflow to accept PRs for changes.
Deployment
Heroku
Scalingo
Docker
Using Docker Compose
Pre-requisite: Install and set up docker on your machine.
# get the docker-compose.yml file from the minio/doctor repo
wget https://raw.githubusercontent.com/minio/doctor/master/docker-compose.yml
wget https://raw.githubusercontent.com/minio/doctor/master/.env
# If you want to start the services in production
RAILS_ENV=production docker-compose up -d
# If you want to start the services in development
docker-compose up -d
# get the container name of the web service
docker ps
# setup the database in a one-off command
docker exec docapp bundle exec rake db:setup
- Open http://localhost:3000 on your browser to see doctor running from docker container.
- Note: If you start doctor in production mode, all http requests are redirected to https.
Features
- Documents are organized under Categories.
- Login to the dashboard
- Step 1 : Use the Dashboard to create a new Category : http://localhost:3000/categories/new
- Step 2 : Use the Dashboard to create a link to a new Document : http://localhost:3000/docs/new
- Step 3: Paste the raw URL to the md file when linking a new document. The "Raw" button is on the top of the MD file in github.
- Required : All documents need to be associated under a Category
Development
Quickstart: Setup on OSX
- Install Ruby 2.2.2 using the instructions here.
- Install Rails 4.2.4 using the instructions here.
- Install Postgres using the command
brew install postgres
. Configure Launch Agent to start it automatically or use the commandpg_ctl -D /usr/local/var/postgres -l /usr/local/var/postgres/server.log start
to start it manually.
Quickstart: Setup on Ubuntu
Clone and start doctor
> git clone https://github.com/minio/doctor.git
> cd doctor
> bundle install
> rake db:drop
> rake db:setup
> rails s
Now visit http://localhost:3000
Use sysadmin@doctor.io
with password Doctor!23
to login. Visit http://localhost:3000 to navigate the docs. This can be changed anytime via the Dashboard. We highly recommend that you do if you use Doctor in deployment.
Note - Ping us on our gitter channel to report any installation issues on your platform.