侧边栏壁纸
  • 累计撰写 47 篇文章
  • 累计创建 23 个标签
  • 累计收到 3 条评论

目 录CONTENT

文章目录

创建Google App Engine服务,部署一个动态网站(博客系统、公司官网、后台服务等)

elthon
2023-08-14 / 0 评论 / 0 点赞 / 108 阅读 / 3276 字

Google App Engine是Google云服务中的一项产品,被归类到“无服务器“分类下面。 这个对于构建单例应用应该非常的方便,支持的语言有Python、Golang、Java、PHP等,对于做动态网站还是够用了。 看介绍Google App Engine属于代管式应用平台。
image-1692008100927

激活Conda Python环境

conda create --name googlecloud
conda activate googlecloud

安装Google Cloud SDK

现在我们在一个独立的Python环境中了,这样比较方便管理Python的包,避免一些包的冲突。

image-1691980149972

gcloud init

运行初始化命令

gcloud init

image-1691981083925
会弹出一个浏览器页面来,需要用自己的google账号进行登录,然后授权。
授权成功以后,需要做一些基本的配置

  1. 选择你的项目,这里我创建了几个项目,选择其中一个就可以了,这个和之后的付费账单相关联。
  2. 选择Google Compute Engine的区域,这里我选择的11(us-west1-b),靠近西海岸,这里可以看到有亚洲可选。
    做好这两个选择后,init命令就算是初始化好了。

创建一个测试项目

mkdir helloworld
cp https://github.com/GoogleCloudPlatform/python-docs-samples/blob/main/appengine/standard/hello_world/main.py main.py
cp https://github.com/GoogleCloudPlatform/python-docs-samples/blob/main/appengine/standard/hello_world/app.yaml app.yaml
gcloud  app deploy

最后通过gcloud app deploy命令将这个helloworld程序提交到App Engine服务上
image-1691981521755
提示是否确认信息,按Y键确认,稍等一会儿,进行服务的创建。
image-1691981588018
服务代码成功上传并部署成功了,可以看到服务的地址。
image-1691981635556
直接使用浏览器访问这个地址,可以看到已经正常的显示到了
image-1692008870004

设置一下自动扩展的参数,避免耗费大量的实例导致费用超标,这里直接禁用自动扩展功能。
image-1691982361406

AppEngine控制台

查看自己部署的版本,我最开始是用的是python2进行的部署,后面发现可以支持到python3,所以我重新下载了python3版本的示例代码,然后运行deploy命令进行部署。
直接在项目目录下面重新运行这个命令就可以了。

gcloud app deploy

image-1691984920022
可以看到每次deploy后,都会生成一个新的版本号,这个就是版本控制了。第一个版本可以看到是100%的流量,表明当前是这个版本的代码在提供服务。
image-1691985166855

AppEngine还提供了防火墙规则,可以针对IP进行允许/拒绝设置。比如下面这个我就设置了单IP的限制,避免本地直接访问到这个服务地址。
image-1692007788734

计费

我目前还只是把服务部署起来了,访问了几次,按照Google到Free Tier的规则,我目前的使用应该还属于免费的,应该还没超过免费配额。
网络流量是1Gb,实例是每天28小时的F实例使用时间。
我明天在看下计费的情况在看看具体怎么结算的吧。

0

评论区