Skip to content

Dev Installation with Virtual Machine

colinsullivan edited this page Nov 28, 2011 · 13 revisions

To make life easier for some people, I have installed Concert on a virtual machine that you should be able to run in your favorite VM player. I am using VMware Fusion on OS X, so I know it works there. If anyone gets it running on VirtualBox or anything, please post any tips here so others can benefit.

The VM image was originally taken from bitnami, and then modified.

Download

https://s3.amazonaws.com/concertsoundorganizer/development/concert-vm.zip

VM Player Setup

As I mentioned above, I am using VMware Fusion, so this is how my setup works:

  • Open image with VMware
  • Add a "Shared Folder" to your Concert/ folder on your host machine. This allows editing of the files on your host machine, and just executing them in the VM.

VM Setup

Once you get your image up and running, the Linux credentials are:

bitnami / concert6^6

Ensure that your local machine's Concert directory is linked to by /mnt/hgfs/Concert.

Concert Setup

Use the following for your database settings in settings.py:

    DATABASES = {
        'default': {
            'ENGINE': 'django.db.backends.sqlite3',
            'NAME': '/opt/concert/db/database.db',
            'HOST': '',
            'PORT': '',
            'USER': '',
            'PASSWORD': ''
        }
    }

For the amazon settings at the bottom, please ask Colin.

Database setup

To initialize your database, run the following script from inside the concertapp/ folder:

./flushdb.sh

Running Concert

Because of the way the VM is set up, celery cannot be run on startup. This means we need to initialize it manually. From the concertapp/ folder:

    screen                         # Start a screen session so celery can run in the background.
    ./manage.py celeryd -l info    # Starts celery
    ctrl-a, then d                 # Detach screen session

Restarting Concert

Without restarting the virtual machine itself, you can restart concert by doing the following:

    screen -r                                       # Resume previously saved screen session
    ctrl-a then 0 or 1 or 2...                      # Navigate to "screen" where celery is running
    ctrl-c                                          # Kill celery
    sudo /opt/bitnami/ctlscript.sh restart apache   # Restart apache
    ./manage.py celeryd -l info                     # Start celery
    ctrl-a then d                                   # Detach screen

Running Concert without Apache

First, ensure that both celery and apache are turned off:

    screen -r                                       # Resume previously saved screen session
    ctrl-a then 0 or 1 or 2...                      # Navigate to "screen" where celery is running
    ctrl-c                                          # Kill celery
    sudo /opt/bitnami/ctlscript.sh stop apache      # Kill apache

Then, still in a screen session (from the concertapp/ directory):

    ./manage.py celeryd -l info                     # Start celery
    ctrl-a, c                                       # Create a new "screen"
    sudo ./manage.py runserver VM_IP_ADDRESS:80     # Start the Django development server

Be sure to replace VM_IP_ADDRESS in the above instructions with your virtual machine's IP address.

Extra stuff

  • Set the time/timezone of your server:

    sudo dpkg-reconfigure tzdata

Enjoy!