在 Amazon Lightsail 上部署容器 LAMP Web

PHP
0
0
{"value":"### **摘要**\n大多数人在学习技术知识的时候希望拥有个人博客,分享或者记录日常学习进步的点滴。如何来搭建一个个人博客网站或者小型站点呢,市面上的解决方案有很多。\n问题来了,如果我们要有一个快速部署、管理和扩展的小型网站和数据库怎么办?想要一个具有成本效益的简单月度计划怎么办?\n在这些情况下,[Amazon Lightsail](https://aws.amazon.com/lightsail/) 是一个不错的选择。它是一款易于使用的虚拟专用服务器 (VPS),最低配置仅$3.5/月。对于个人建站和一些中小应用是很合适的选择。[Amazon Lightsail](https://aws.amazon.com/lightsail/) 不仅可以快速搭建[WordPress](http://wordpress.la/),而且可以根据实际情况创建 LAMP 堆栈部署自己的 web 网站。\n下面我们根据官方教程使用 Amazon Lightsail blueprints 创建一个 LAMP 堆栈,并将 PHP 应用程序部署到 Lightsail。原文链接如下:[https://aws.amazon.com/cn/getting-started/guides/deploy-lamp-lightsail/?trk=c99d0ed8-185f-413f-800c-f5de121121e4&sc_channel=ba](https://aws.amazon.com/cn/getting-started/guides/deploy-lamp-lightsail/?trk=c99d0ed8-185f-413f-800c-f5de121121e4&sc_channel=ba)\n### **一、Amazon Web Services 介绍**\n像谷歌,微软和 IBM 是许多领域的领先技术巨头,虽然拥有数十亿用户,但他们有一个业务部门,多年来总是追随亚马逊。值得一提的是,这个业务部门不是电子商务,而是一个以亚马逊名字命名的领域。越来越多的从业者已经熟知这家公司在这个领域运营,影响了数十亿用户,行业世界排名第一。它就是 Amazon Web Services,云计算 IaaS 和 PaaS 平台服务。\n其中有些著名 Amazon 产品也经常被大家提起:\n- **亚马逊简单存储服务(Amazon S3)** 。 提供一种将数据作为对象进行管理的计算机数据存储架构,使 Amazon S3非常适合备份和恢复,数据归档以及混合云存储。 Amazon S3使用与 Amazon.com 网站相同的可扩展存储基础架构。\n- **Amazon Elastic Compute Cloud(EC2)** 。 提供对预装有应用程序软件(包括数据库和 Web 服务器)的虚拟计算机集群的访问。\n- **Amazon Lambda** 。 这是一个无服务器,事件驱动的计算平台,旨在构建按需运行的应用程序,这些应用程序可以响应特定事件而运行代码。 \n- Lambda 自动管理运行代码所需的计算资源,这使其成为配置响应HTTP请求而触发的后端服务的理想之选,然后在不再需要这些资源时自动取消它们的配置。\n而今天,我们的主角是 Amazon Lightsail。\n### **二、Amazon Lightsail 介绍**\nLightsail 是一个云平台,可提供部署和托管 WordPress 网站所需的一切,包括实例,托管数据库,静态IP地址和负载平衡器。 尽管我们将专注于使用 Lightsail 启动 WordPress 实例,但是我们也可以使用 Lightsail 部署小型Web应用程序,商业软件,开发人员沙箱和测试环境。像知名的 Gourmeat、AcCentric Solutions 都在使用 Lightsail 去改善其业务流。\nLightsail 除了商业用户以外,在个人用户中,由于 WordPress 的原因也非常受欢迎,它虽然不是托管 WordPress 网站的唯一选择。但其有独特的优点,本次我们来展示如何安装 WordPress,或在 Amazon Lightsail 上启动部署的个人web网站,以确保它是适合您的平台。\nLightsail 提供了许多预配置的一键启动应用程序或开发堆栈,包括 WordPress、Plesk、LAMP 和 Node.js 等。还提供简单的操作系统,包括 Amazon Linux、Windows Server、Ubuntu 和 CentOS 等。其中Lightsail 提供易于建立的虚拟服务器(实例),以 强大功能和可靠性为后盾。可以在几分钟内启动网站、Web 应用程序或项目,并通过直观的 Lightsail 控制台或 API 管理实例。借助 Lightsail Container Service,只需几个步骤即可运行容器化的应用程序,并从 Internet 安全访问。\n那么为什么我们要选择 LAMP 架构呢?或者什么情况下选择 LAMP 架构\n### **三、LAMP 架构优势**\nLAMP 是指 Linux(操作系统)+ Apache (HTTP 服务器)+ MySQL(数据库)和 PHP(网络编程语言)。这是一组常用来搭建动态网站或者服务器的开源软件。它们本身都是各自独立的程序,但是因为常被放在一起使用,拥有了越来越高的兼容度,共同组成了一个强大的Web应用程序平台。\nLAMP 和 Java/J2EE 架构相比, LAMP 具有 Web 资源丰富、轻量、快速开发等特点;与微软的 .NET 架构相比,LAMP 具有通用、跨平台、高性能、低价格的优势。因此 LAMP 无论是性能、质量还是价格都是企业、个人搭建网站的首选平台\n同时,[WordPress](http://wordpress.la/) 在行业内的实力和影响力已经有目共睹,其组合环境常见的有 Lamp 环境和 Lnmp 两种,而 LAMP 环境因为 Apache 比较适合处理“动态”请求比较多的站点系统。所以,像 WordPress 有大量动态数据请求的场景很适合采用 LAMP 方案。\n\n![image.png](https://dev-media.amazoncloud.cn/7917ce4e53064b1e8db8eada7858e6b7_image.png)\n\n### **四、在 Lightsail 中创建 LAMP 堆栈**\n话不多说,我们现在根据教程创建 Lightsail 实例,感受下其便捷和强大的功能\n根据教程呢,主要是 bash 脚本里快速构建的过程\nPlain Text\n```\naws lightsail create-instances \\\n --instance-names \"LightsailLampExample\" \\\n --availability-zone eu-west-1a \\#可用区选择\n --blueprint-id lamp_7 \\ #选择lamp_7\n --bundle-id micro_2_0 \\\n --key-pair-name LightsailGuide \\#ssh脚本生成的密钥\n --user-data '# 粘贴的部分\n```\n第一次操作呢我们根据 Amazon 的 GUI 向导也可以实现实例创建\n1、在 Amazon 管理控制台的“服务”下拉选项中单击“Lightsail”。或者使用快捷向导点击【在[使用虚拟服务器构建](https://lightsail.aws.amazon.com/ls/webapp/create/instance) With Lightsail (2 分钟)】\n2、点击开始,点击创建实例\n3、根据账户情况选择可用区\n\n![image.png](https://dev-media.amazoncloud.cn/cb3646d3a3934410b3c21cd21616b039_image.png)\n\n4、在“选择平台”下选中“Linux/Unix\n5、选择 lamp(PHP7)图标(点击 wordpress 快速创建 wordpress 堆栈容器,这里我们选择 Lamp)\n\n![image.png](https://dev-media.amazoncloud.cn/86fe8df9d75c48c7842f16466976c434_image.png)\n\n### **五、部署LAMP应用程序**\n接下来安装应用程序代码\n1.单击 +**单击启动脚本**。\n\n![image.png](https://dev-media.amazoncloud.cn/190ce4ff7145432cafbb56c6a219ea56_image.png)\n\n2.将教程中的的脚本粘贴到启动脚本文本窗口中\n脚本将执行以下操作:\n- 删除默认的 Apache 网站\n- 将应用程序代码从 GitHub 克隆到 htdocs 目录中\n- 确保配置文件可写入\n- 使用 sed 从磁盘上的文件中读取本地数据库密码,并将其插入配置文件中\n- 运行 SQL 脚本以设置应用程序的数据库\nPlain Text\n```\n# remove default website\n#-----------------------\ncd /opt/bitnami/apache2/htdocs \nrm -rf *\n\n# clone github repo\n#------------------\ngit clone -b loft https://github.com/mikegcoleman/todo-php .\n\n# set write permissons on the settings file\n#-----------------------------------\nchown bitnami:daemon connectvalues.php\nchmod 666 connectvalues.php\n\n# inject database password into configuration file\n#-------------------------------------------------\nsed -i.bak \"s/<password>/$(cat /home/bitnami/bitnami_application_password)/;\" /opt/bitnami/apache2/htdocs/connectvalues.php\n\n# create database\n#----------------\ncat /home/bitnami/htdocs/data/init.sql | /opt/bitnami/mysql/bin/mysql -u root -p$(cat /home/bitnami/bitnami_application_password)\n```\n2.选择免费套餐实例计划。\n\n![image.png](https://dev-media.amazoncloud.cn/5f6047b73ad0435db0a00635abacb062_image.png)\n\n3、向下滚动并单击**创建实例**。\n\n![image.png](https://dev-media.amazoncloud.cn/a5acd4b1624a41dfbd138e6d9f762808_image.png)\n\n4.复制 IP 地址并将其粘贴到您的浏览器中\n\n![image.png](https://dev-media.amazoncloud.cn/9cd02cfd3be54ff3a3c46b4dc980bc89_image.png)\n\n5.大功告成\n\n![image.png](https://dev-media.amazoncloud.cn/1cdf442289b142e28b9fe87db2b61164_image.png)\n\n### **Amazon Lightsail优点及总结:**\n1. 便宜\n对于动辄$5/10每月的竞品价位而言,Amazon Lightsail 提供的主机的配置和流量包很有优势。另外对入门用户比较好的一点是,Amazon Lightsail 目前支持选购最低配512MB内存的主机,且该配置的首月可以免费。\n2. 高效\n与运行ECS或EC2服务相比,设置 Amazon Lightsail 实例是一项相当简单的任务。不仅可以从 Amazon 控制台进行配置。并且支持从 Amazon LightSail 进行设置或者从 Amazon CLI 进行管理和设置。10分钟快速上手,半个小时进行简单建站。非常的高效。\n3. 功能强大\nAmazon Lightsail 作为 EC2的更简单替代方案,它提供了构建网站和小型Web应用程序所需的所有工具。 不仅有多个机房可以选择,特别是日本机房,应该是非常符合国内的需求。而且他直接提供了安装好的服务包,热门的 wordpress,[LAMP](https://link.zhihu.com/?target=https://blog.jing.do/tag/lamp/),Nginx 他都有。内置 wordpress 的感觉就是 lamp 加了一个 wordpress 的安装包,装好后直接就可以访问,如果需要整合的话,直接导入文件和数据库就行了。\n4. 便于升级\n当资源不足已支撑项目时,Amazon Lightsail 可以升级 EC2,方便项目体量增加。\n整体而言,相对于其他厂家,Lightsail 的核心是每月的定价模型和易于使用的界面。上手起来难度不高,价格合适,值得尝试。对于托管 WordPress 博客,API 服务器和暂存环境,它绝对是一个不错的选择。","render":"<h3><a id=\"_0\"></a><strong>摘要</strong></h3>\n<p>大多数人在学习技术知识的时候希望拥有个人博客,分享或者记录日常学习进步的点滴。如何来搭建一个个人博客网站或者小型站点呢,市面上的解决方案有很多。<br />\n问题来了,如果我们要有一个快速部署、管理和扩展的小型网站和数据库怎么办?想要一个具有成本效益的简单月度计划怎么办?<br />\n在这些情况下,<a href=\"https://aws.amazon.com/lightsail/\" target=\"_blank\">Amazon Lightsail</a> 是一个不错的选择。它是一款易于使用的虚拟专用服务器 (VPS),最低配置仅$3.5/月。对于个人建站和一些中小应用是很合适的选择。<a href=\"https://aws.amazon.com/lightsail/\" target=\"_blank\">Amazon Lightsail</a> 不仅可以快速搭建<a href=\"http://wordpress.la/\" target=\"_blank\">WordPress</a>,而且可以根据实际情况创建 LAMP 堆栈部署自己的 web 网站。<br />\n下面我们根据官方教程使用 Amazon Lightsail blueprints 创建一个 LAMP 堆栈,并将 PHP 应用程序部署到 Lightsail。原文链接如下:<a href=\"https://aws.amazon.com/cn/getting-started/guides/deploy-lamp-lightsail/?trk=c99d0ed8-185f-413f-800c-f5de121121e4&amp;sc_channel=ba\" target=\"_blank\">https://aws.amazon.com/cn/getting-started/guides/deploy-lamp-lightsail/?trk=c99d0ed8-185f-413f-800c-f5de121121e4&amp;sc_channel=ba</a></p>\n<h3><a id=\"Amazon_Web_Services__5\"></a><strong>一、Amazon Web Services 介绍</strong></h3>\n<p>像谷歌,微软和 IBM 是许多领域的领先技术巨头,虽然拥有数十亿用户,但他们有一个业务部门,多年来总是追随亚马逊。值得一提的是,这个业务部门不是电子商务,而是一个以亚马逊名字命名的领域。越来越多的从业者已经熟知这家公司在这个领域运营,影响了数十亿用户,行业世界排名第一。它就是 Amazon Web Services,云计算 IaaS 和 PaaS 平台服务。<br />\n其中有些著名 Amazon 产品也经常被大家提起:</p>\n<ul>\n<li><strong>亚马逊简单存储服务(Amazon S3)</strong> 。 提供一种将数据作为对象进行管理的计算机数据存储架构,使 Amazon S3非常适合备份和恢复,数据归档以及混合云存储。 Amazon S3使用与 Amazon.com 网站相同的可扩展存储基础架构。</li>\n<li><strong>Amazon Elastic Compute Cloud(EC2)</strong> 。 提供对预装有应用程序软件(包括数据库和 Web 服务器)的虚拟计算机集群的访问。</li>\n<li><strong>Amazon Lambda</strong> 。 这是一个无服务器,事件驱动的计算平台,旨在构建按需运行的应用程序,这些应用程序可以响应特定事件而运行代码。</li>\n<li>Lambda 自动管理运行代码所需的计算资源,这使其成为配置响应HTTP请求而触发的后端服务的理想之选,然后在不再需要这些资源时自动取消它们的配置。<br />\n而今天,我们的主角是 Amazon Lightsail。</li>\n</ul>\n<h3><a id=\"Amazon_Lightsail__13\"></a><strong>二、Amazon Lightsail 介绍</strong></h3>\n<p>Lightsail 是一个云平台,可提供部署和托管 WordPress 网站所需的一切,包括实例,托管数据库,静态IP地址和负载平衡器。 尽管我们将专注于使用 Lightsail 启动 WordPress 实例,但是我们也可以使用 Lightsail 部署小型Web应用程序,商业软件,开发人员沙箱和测试环境。像知名的 Gourmeat、AcCentric Solutions 都在使用 Lightsail 去改善其业务流。<br />\nLightsail 除了商业用户以外,在个人用户中,由于 WordPress 的原因也非常受欢迎,它虽然不是托管 WordPress 网站的唯一选择。但其有独特的优点,本次我们来展示如何安装 WordPress,或在 Amazon Lightsail 上启动部署的个人web网站,以确保它是适合您的平台。<br />\nLightsail 提供了许多预配置的一键启动应用程序或开发堆栈,包括 WordPress、Plesk、LAMP 和 Node.js 等。还提供简单的操作系统,包括 Amazon Linux、Windows Server、Ubuntu 和 CentOS 等。其中Lightsail 提供易于建立的虚拟服务器(实例),以 强大功能和可靠性为后盾。可以在几分钟内启动网站、Web 应用程序或项目,并通过直观的 Lightsail 控制台或 API 管理实例。借助 Lightsail Container Service,只需几个步骤即可运行容器化的应用程序,并从 Internet 安全访问。<br />\n那么为什么我们要选择 LAMP 架构呢?或者什么情况下选择 LAMP 架构</p>\n<h3><a id=\"LAMP__18\"></a><strong>三、LAMP 架构优势</strong></h3>\n<p>LAMP 是指 Linux(操作系统)+ Apache (HTTP 服务器)+ MySQL(数据库)和 PHP(网络编程语言)。这是一组常用来搭建动态网站或者服务器的开源软件。它们本身都是各自独立的程序,但是因为常被放在一起使用,拥有了越来越高的兼容度,共同组成了一个强大的Web应用程序平台。<br />\nLAMP 和 Java/J2EE 架构相比, LAMP 具有 Web 资源丰富、轻量、快速开发等特点;与微软的 .NET 架构相比,LAMP 具有通用、跨平台、高性能、低价格的优势。因此 LAMP 无论是性能、质量还是价格都是企业、个人搭建网站的首选平台<br />\n同时,<a href=\"http://wordpress.la/\" target=\"_blank\">WordPress</a> 在行业内的实力和影响力已经有目共睹,其组合环境常见的有 Lamp 环境和 Lnmp 两种,而 LAMP 环境因为 Apache 比较适合处理“动态”请求比较多的站点系统。所以,像 WordPress 有大量动态数据请求的场景很适合采用 LAMP 方案。</p>\n<p><img src=\"https://dev-media.amazoncloud.cn/7917ce4e53064b1e8db8eada7858e6b7_image.png\" alt=\"image.png\" /></p>\n<h3><a id=\"_Lightsail__LAMP__25\"></a><strong>四、在 Lightsail 中创建 LAMP 堆栈</strong></h3>\n<p>话不多说,我们现在根据教程创建 Lightsail 实例,感受下其便捷和强大的功能<br />\n根据教程呢,主要是 bash 脚本里快速构建的过程<br />\nPlain Text</p>\n<pre><code class=\"lang-\">aws lightsail create-instances \\\n --instance-names &quot;LightsailLampExample&quot; \\\n --availability-zone eu-west-1a \\#可用区选择\n --blueprint-id lamp_7 \\ #选择lamp_7\n --bundle-id micro_2_0 \\\n --key-pair-name LightsailGuide \\#ssh脚本生成的密钥\n --user-data '# 粘贴的部分\n</code></pre>\n<p>第一次操作呢我们根据 Amazon 的 GUI 向导也可以实现实例创建<br />\n1、在 Amazon 管理控制台的“服务”下拉选项中单击“Lightsail”。或者使用快捷向导点击【在<a href=\"https://lightsail.aws.amazon.com/ls/webapp/create/instance\" target=\"_blank\">使用虚拟服务器构建</a> With Lightsail (2 分钟)】<br />\n2、点击开始,点击创建实例<br />\n3、根据账户情况选择可用区</p>\n<p><img src=\"https://dev-media.amazoncloud.cn/cb3646d3a3934410b3c21cd21616b039_image.png\" alt=\"image.png\" /></p>\n<p>4、在“选择平台”下选中“Linux/Unix<br />\n5、选择 lamp(PHP7)图标(点击 wordpress 快速创建 wordpress 堆栈容器,这里我们选择 Lamp)</p>\n<p><img src=\"https://dev-media.amazoncloud.cn/86fe8df9d75c48c7842f16466976c434_image.png\" alt=\"image.png\" /></p>\n<h3><a id=\"LAMP_50\"></a><strong>五、部署LAMP应用程序</strong></h3>\n<p>接下来安装应用程序代码<br />\n1.单击 +<strong>单击启动脚本</strong>。</p>\n<p><img src=\"https://dev-media.amazoncloud.cn/190ce4ff7145432cafbb56c6a219ea56_image.png\" alt=\"image.png\" /></p>\n<p>2.将教程中的的脚本粘贴到启动脚本文本窗口中<br />\n脚本将执行以下操作:</p>\n<ul>\n<li>删除默认的 Apache 网站</li>\n<li>将应用程序代码从 GitHub 克隆到 htdocs 目录中</li>\n<li>确保配置文件可写入</li>\n<li>使用 sed 从磁盘上的文件中读取本地数据库密码,并将其插入配置文件中</li>\n<li>运行 SQL 脚本以设置应用程序的数据库<br />\nPlain Text</li>\n</ul>\n<pre><code class=\"lang-\"># remove default website\n#-----------------------\ncd /opt/bitnami/apache2/htdocs \nrm -rf *\n\n# clone github repo\n#------------------\ngit clone -b loft https://github.com/mikegcoleman/todo-php .\n\n# set write permissons on the settings file\n#-----------------------------------\nchown bitnami:daemon connectvalues.php\nchmod 666 connectvalues.php\n\n# inject database password into configuration file\n#-------------------------------------------------\nsed -i.bak &quot;s/&lt;password&gt;/$(cat /home/bitnami/bitnami_application_password)/;&quot; /opt/bitnami/apache2/htdocs/connectvalues.php\n\n# create database\n#----------------\ncat /home/bitnami/htdocs/data/init.sql | /opt/bitnami/mysql/bin/mysql -u root -p$(cat /home/bitnami/bitnami_application_password)\n</code></pre>\n<p>2.选择免费套餐实例计划。</p>\n<p><img src=\"https://dev-media.amazoncloud.cn/5f6047b73ad0435db0a00635abacb062_image.png\" alt=\"image.png\" /></p>\n<p>3、向下滚动并单击<strong>创建实例</strong>。</p>\n<p><img src=\"https://dev-media.amazoncloud.cn/a5acd4b1624a41dfbd138e6d9f762808_image.png\" alt=\"image.png\" /></p>\n<p>4.复制 IP 地址并将其粘贴到您的浏览器中</p>\n<p><img src=\"https://dev-media.amazoncloud.cn/9cd02cfd3be54ff3a3c46b4dc980bc89_image.png\" alt=\"image.png\" /></p>\n<p>5.大功告成</p>\n<p><img src=\"https://dev-media.amazoncloud.cn/1cdf442289b142e28b9fe87db2b61164_image.png\" alt=\"image.png\" /></p>\n<h3><a id=\"Amazon_Lightsail_103\"></a><strong>Amazon Lightsail优点及总结:</strong></h3>\n<ol>\n<li>便宜<br />\n对于动辄$5/10每月的竞品价位而言,Amazon Lightsail 提供的主机的配置和流量包很有优势。另外对入门用户比较好的一点是,Amazon Lightsail 目前支持选购最低配512MB内存的主机,且该配置的首月可以免费。</li>\n<li>高效<br />\n与运行ECS或EC2服务相比,设置 Amazon Lightsail 实例是一项相当简单的任务。不仅可以从 Amazon 控制台进行配置。并且支持从 Amazon LightSail 进行设置或者从 Amazon CLI 进行管理和设置。10分钟快速上手,半个小时进行简单建站。非常的高效。</li>\n<li>功能强大<br />\nAmazon Lightsail 作为 EC2的更简单替代方案,它提供了构建网站和小型Web应用程序所需的所有工具。 不仅有多个机房可以选择,特别是日本机房,应该是非常符合国内的需求。而且他直接提供了安装好的服务包,热门的 wordpress,<a href=\"https://link.zhihu.com/?target=https://blog.jing.do/tag/lamp/\" target=\"_blank\">LAMP</a>,Nginx 他都有。内置 wordpress 的感觉就是 lamp 加了一个 wordpress 的安装包,装好后直接就可以访问,如果需要整合的话,直接导入文件和数据库就行了。</li>\n<li>便于升级<br />\n当资源不足已支撑项目时,Amazon Lightsail 可以升级 EC2,方便项目体量增加。<br />\n整体而言,相对于其他厂家,Lightsail 的核心是每月的定价模型和易于使用的界面。上手起来难度不高,价格合适,值得尝试。对于托管 WordPress 博客,API 服务器和暂存环境,它绝对是一个不错的选择。</li>\n</ol>\n"}
目录
亚马逊云科技解决方案 基于行业客户应用场景及技术领域的解决方案
联系亚马逊云科技专家
亚马逊云科技解决方案
基于行业客户应用场景及技术领域的解决方案
联系专家
0
目录
关闭
contact-us