使用 Google Code + 临时服务器

53 阅读4分钟

我们正在启动一个新的项目,使用 Django 开发一个网站。我们在 Google 代码上创建了一个项目。我们希望能够偶尔向一些人展示网站的进度,而无需购买真正的服务器。我们都是通过 Eclipse 和 SVN 修改项目的。什么办法可以创建一个 runserver 类型的东西,但允许他人暂时通过互联网访问?

2、解决方案

有几种方法可以实现这一点:

方法一:使用 Google App Engine

Google App Engine (GAE) 是 Google 提供的云计算平台,它允许您在 Google 的基础设施上部署和运行您的应用程序。GAE 提供了免费的层级,您可以使用它来托管您的 Django 项目。

要使用 GAE,您需要创建一个 GAE 项目,然后将您的 Django 项目部署到该项目中。GAE 将为您提供一个公共的 URL,您可以使用它来访问您的网站。

# 在您的 Django 项目中,运行以下命令:

gcloud app create

# 这将创建一个新的 GAE 项目。

# 接下来,您需要将您的 Django 项目部署到您的 GAE 项目中。为此,运行以下命令:

gcloud app deploy

# 这将把您的 Django 项目部署到您的 GAE 项目中。

# 一旦您的项目被部署,您就可以使用以下 URL 访问它:

https://your-project-id.appspot.com

方法二:使用 Amazon Web Services (AWS)

AWS 是亚马逊提供的云计算平台,它提供了一系列服务,包括虚拟机、存储和数据库。您可以使用 AWS 来托管您的 Django 项目。

要使用 AWS,您需要创建一个 AWS 账户,然后创建一个 EC2 实例。EC2 实例是一个虚拟机,您可以在其中安装和运行您的 Django 项目。

# 在您的 Django 项目中,运行以下命令:

pip install awscli

# 这将安装 AWS CLI 工具。

# 接下来,您需要创建一张 S3 存储桶。S3 存储桶是一个对象存储服务,您可以将您的 Django 项目文件存储在其中。为此,运行以下命令:

aws s3api create-bucket --bucket your-bucket-name

# 这将创建一个名为 your-bucket-name 的 S3 存储桶。

# 接下来,您需要启动一个 EC2 实例。为此,运行以下命令:

aws ec2 run-instances --image-id ami-id --instance-type t2.micro --key-name your-key-name

# 这将启动一个 t2.micro 实例,并使用 your-key-name 密钥对进行 SSH 访问。

# 一旦您的实例启动,您可以使用以下命令 SSH 登录到它:

ssh -i your-key-name.pem ubuntu@your-instance-public-ip

# 这将使用 your-key-name.pem 密钥对以 ubuntu 用户身份登录到您的实例。

# 登录到您的实例后,您可以运行以下命令来安装 Django:

sudo apt-get update
sudo apt-get install python3-django

# 这将安装 Django。

# 一旦您安装了 Django,您就可以将您的 Django 项目复制到您的实例中。为此,运行以下命令:

scp -i your-key-name.pem django_project.zip ubuntu@your-instance-public-ip:/tmp

# 这将把 django_project.zip 文件复制到您的实例上的 /tmp 目录。

# 接下来,您需要解压缩 django_project.zip 文件。为此,运行以下命令:

cd /tmp
unzip django_project.zip

# 这将解压缩 django_project.zip 文件,并将文件提取到当前目录。

# 接下来,您需要将您的 Django 项目移动到您的实例上的正确位置。为此,运行以下命令:

sudo mv django_project /var/www/html

# 这将把 django_project 目录移动到 /var/www/html 目录。

# 接下来,您需要配置您的 Django 项目。为此,编辑 /var/www/html/django_project/settings.py 文件,并更新 DATABASES 设置。确保将 DATABASES['default'] 设置为以下内容:

DATABASES = { 'default': { 'ENGINE': 'django.db.backends.postgresql', 'HOST': 'localhost', 'PORT': '5432', 'USER': 'postgres', 'PASSWORD': 'postgres', 'NAME': 'postgres', } }

一旦您更新了 DATABASES 设置,您就可以运行以下命令来创建数据库:

sudo -u postgres createdb -E UTF-8 postgres

这将创建一个名为 postgres 的数据库。

接下来,您需要运行以下命令来创建数据库用户:

sudo -u postgres createuser -s django

这将创建一个名为 django 的数据库用户。

接下来,您需要运行以下命令来授予 django 用户对 postgres 数据库的访问权限:

sudo -u postgres psql -c "GRANT ALL PRIVILEGES ON DATABASE postgres TO django;"

这将授予 django 用户对 postgres 数据库的所有权限。

接下来,您需要运行以下命令来应用 Django 迁移:

cd /var/www/html/django_project python3 manage.py migrate

这将应用 Django 迁移。

一旦您应用了 Django 迁移,您就可以运行以下命令来启动 Django 开发服务器:

python3 manage.py runserver 0.0.0.0:8000

这将启动 Django 开发服务器,并使其在 0.0.0.0:8000 上可用。

现在,您就可以使用以下 URL 访问您的网站:

http://your-instance-public-ip:8000