I'll explain briefly how you start a new project and there's a nice clean copy of the code at the bottom that you can cut and paste.
Let's get the show on the road. Choose a name for the project and create and switch to a virtual environment:
PROJ=py27_gae_project
mkvirtualenv ${PROJ}
cdvirtualenv
Note that note that "--no-site-packages" and "--distribute" are now the defaults for mkvirtualenv. You don't even need to use "--python=python2.7" on Ubuntu 12.04.Now we need to know what the latest version of App Engine is, but as of writing it's 1.6.5:
GAE=1.6.5
wget -O /tmp/gae.zip http://googleappengine.googlecode.com/files/google_appengine_${GAE}.zip
unzip /tmp/gae.zip
Now let's create an App Engine app. The app will need a name that has been created in the App Engine Console:
GAE_APP_NAME=dummy mkdir -p gae_app/staticNow create the app.yaml file:
echo """application: ${GAE_APP_NAME}
version: development
runtime: python27
api_version: 1
threadsafe: true
default_expiration: 7d
handlers:
- url: /static
static_dir: static
- url: .*
script: wsgi_app.app
""" > gae_app/app.yaml
And finally the app itself:
echo """import webapp2
class MainPage(webapp2.RequestHandler):
def get(self):
self.response.headers['Content-Type'] = 'text/plain'
self.response.out.write('Please replace me with a decent WSGI App Framework such as Flask')
app = webapp2.WSGIApplication([('/', MainPage)],
debug=True)
""" > gae_app/wsgi_app.py
And finally to run the development server:
python ./google_appengine/dev_appserver.py gae_app/
I hope that this has all been of some help to you. Did I miss anything? Please comment below.
Link to 'the latest version of App Engine' seems broken.
ReplyDeleteThanks. Fixed now.
ReplyDeleteApparently, GAE is at 1.7 now.
ReplyDeletehttp://googleappengine.googlecode.com/files/google_appengine_1.7.0.zip
Here's what I did on Ubuntu 12.04 Precise Pangolin:
ReplyDeletesudo apt-get install python-pip python-virtualenv virtualenvwrapper
# log out and in to make virtualenv active for your shell
# then follow the rest of Terse's instructions, except for a newer version of GAE.
I don't get it. I'm a complete noob here so bear with me. I followed Terse's instruction and I failed on the first step.
ReplyDeleteThis is what I got:
mkvirtualenv: command not found
Then I tried Ace Suares's and so far I got until this far:
qoyyuum@qoyyuum-desktop:~$ sudo apt-get install python-pip python virtualenv virtualenvwrapper
[sudo] password for qoyyuum:
Reading package lists... Done
Building dependency tree
Reading state information... Done
E: Unable to locate package virtualenv
Why did that happen?
I know it's a bit confusing, but try using apt-get to install pip and then use pip to install the rest at system wide level:
ReplyDeletesudo apt-get install python-pip
sudo pip install virtualenv
sudo pip install virtualenvwrapper