Setting up the web app

From OpenHatch wiki
Revision as of 16:42, 4 March 2011 by imported>Jesstess (→‎Section 2: Installing software)

Objective

After going through this setup document, you will have a Python, git, and Django environment that lets you write Python code locally. You will be able to use Github.com and git to track changes to the code you write.

This document is available on the web; if you have a printed copy, you can see the URL on the last page. You can always refer back to it, or show it to other people.


Section 1: Accounts on the web

Time: 15 minutes, hopefully.

You're going to need accounts on:

  • Alwaysdata.com: This is a French web hosting company. Their free account level has Django support, so you'll use it to run your code and let other people access it over the web.
  • Github.com: This is the most popular hosting company for git, a popular version control system. You will use them to store versions of your code.

Alwaysdata account

Alwaysdata.com lets you create a free hosting account. You'll give them your name and email address and set a password that you'll use to log into the account.

  • Go to alwaysdata.com
  • Click Sign up now
  • Choose the "Pack gratuit (10 Mo)". It means "Free account (10 megabytes of storage)".
  • Choose the monthly payment plan.

Note: They will send you your password by email. If you feel queasy about receiving your password by email, then use one that you don't mind receiving.

On the back of this piece of paper, take a moment to write down the username, email address, and maybe password that you used to sign up for the Alwaydata.com account.

Github.com

Github.com is the most popular git-based service you can use to store files.

Go to http://github.com/ and create an account. You can choose whatever username you want. Once it is configured, you can continue on through these setup instructions.

Testing

You might be itching to make sure you created these accounts properly. We'll test that later.

Section 2: Installing software

Now we're going to install Django, Python, git, and a text editor.

Click the link that matches your operating system.

Section 4: Configuring your accounts on the web

Alwaysdata: Enable SSH

  • Log into your Alwaysdata account at https://admin.alwaysdata.com/
  • In the left-hand side, underneath Remote access, click SSH
  • Click the gear icon for your user
  • Click the "Enabled" checkbox to enable ssh access.
  • Click Submit!

Put your SSH key on Github

Follow Github's instructions:

To find your public key on Windows, type this from a GitBash:

notepad .ssh/id_rsa.pub

If you need help finding your SSH key, ask a volunteer. You're looking for a file called id_rsa.pub.

Make sure Git and Github are working together

Follow the instructions carefully; for example, do call your repository Hello World as they suggest.

If it worked, you'll see a new repository listed in your Github.com account, and it will have a README file explaining what it is.

Section 5: Deploying your first web application

Remember how you made a Django site earlier in the directions? The volunteers made a site like, too, and we added some special configuration to make it work well with Alwaysdata.com.

You're going to fork this git repository so that when make your own changes to it, you can push those changes to your personal Github account. (You have to fork the repository because otherwise Github won't let you make changes to "my" project!)

Fork our project on Github

Clone it to alwaysdata.com

  • Copy the "Git Read-Only" version of the repository URL to the clipboard (this is probably not the default, so be sure to click the "Git Read-Only" tab)
  • In your SSH client (PuTTY or ssh), connect to this host:
your_alwaysdata_username@ssh.alwaysdata.com
  • Enter this command into the terminal, but don't press enter yet:
git clone
  • Now paste in the repository URL, and hit enter. The full command will look something like "git clone git@github.com:paulproteus/workshop_mysite.git".

Configure alwaysdata.com to serve your site

This is the last step: Tell alwaysdata.com how to serve up your site to the world.

  • Go to the Alwaysdata.com Domains administration page: https://admin.alwaysdata.com/domain/
  • Find your domain, and click the gear to edit.
  • Enter this into the form as the Root directory:
/workshop_mysite/public/