如今有很多服务器环境来运行网站、应用和服务。https://www.lenovohs.com/你可以走标准路径或容器路径。你也可以走虚拟机路线,然后沿着这些路径中的任何一条或者混合搭配。
今天我们用另一种方法来提供这些网站、服务和应用程序呢,这个平台就是Caddy。
Caddy是一个用Go编写的可扩展平台,它可以让你的网站、服务和应用服务化。事实上,Caddy可以做很多事情。你可以把它当作:
网站服务器、标准代理、反向代理、西德卡代理、负载平衡器、API网关、入口控制器、系统管理器、流程管理器、任务调度器。
我想向您介绍在Ubuntu Server 18.04上安装Caddy的过程,然后演示如何使用它来提供基本的网站。
准备工作:
正常运行Ubuntu Server 18.04系统的服务器(尽管它将在所有当前受支持的版本上运行)
具有sudo特权的用户
1、如何安装Caddy
Caddy不能从标准仓库中安装,所以我们必须将必要的repo添加到Ubuntu服务器中。打开一个终端窗口并发出命令。
echo deb [trusted=yes] https://apt.fury.io/caddy/ / | sudo tee -a /etc/apt/sources.list.d/caddy-fury.list
添加存储库后,使用以下命令更新apt:
sudo apt-get update
最后,使用以下命令安装Caddy:
sudo apt-get install caddy -y
安装完成后,可以通过发出以下命令来进行验证:
caddy version
上面的命令应该打印出Caddy的完整版本字符串(图A)。
2、如何使用Caddy部署简单的网站
现在已经安装了Caddy,让我们创建一个简单的网站。发出命令:
curl localhost:2019/config/
您应该看到以下文本:
a href=/config/Moved Permanently/a.
我们将创建一个非常简单的页面并将其上传到Caddy服务器。Caddy的配置都是用JSON写的。因此,使用以下命令创建一个新文件:
nano caddy.json
在该新文件中,粘贴以下内容:
{
“ apps”:{
“ http”:{
“ servers”:{
“ example”:{
“ listen”:[“:2015”],
“ routes”:[
{
“ handle”:[{
“ handler”:“ static_response ”,
“ body”:“您好,Lenovohs!”
}]
}
]
}
}
}
}
}
保存并关闭文件。使用以下命令启动Caddy:
caddy run
您将不会得到提示,因此请使用另一个实例登录到服务器并使用以下命令上传文件:
curl localhost:2019/load -X POST -H Content-Type: application/json -d @caddy.json
发出curl命令:
curl localhost:2019
您应该看到打印输出“ Hello,Lenovohs!”。
您还可以将浏览器指向http:// SERVER_IP:2015(其中SERVER_IP是托管Caddy的服务器的IP地址),你应该也能看到打印出来的信息。
当然,您不必编写JSON文件即可打印出“ Hello,Lenovohs”。幸运的是,开发人员包括使用Caddyfile进行部署的功能。您可以使用以下命令创建一个新文件,而不用写大括号密集型JSON:
nano Caddyfile
在该文件中,粘贴以下内容:
:2015
respond Hello, Lenovohs!
保存并关闭文件。
使用Ctrl + C组合键停止Caddy,然后加载新的配置文件并使用以下命令重新启动Caddy:
caddy adapt
上面的命令必须在Caddyfile所在的目录中运行。如果没有,则可以将命令发出为:
caddy adapt --config /path/to/Caddyfile
/ path / to / Caddyfile是Caddyfile的完整路径。
将浏览器指向http:// SERVER_IP:2015(其中SERVER_IP是托管服务器的IP地址),您应该会再次看到 Hello, Lenovohs!的信息。
3、如何使用Caddy服务静态网站
至此,您已经提供了一个文件。如果您要使用静态网站怎么办?将所有必需的文件放在一个目录(例如〜/ website)中,该目录包括一个index.html文件,然后发出以下命令:
caddy file-server --browse --root ~/website --listen :2015
运行该命令后,将浏览器指向http:// SERVER_IP:2015(其中SERVER_IP是托管Caddy的服务器的IP地址),您应该在浏览器中看到index.html页面。
以上就是Caddy的要点。当然,我们所做的只是提供一个非常基本的网站。Caddy可以做的事情还有很多。下次我们再来看看Caddy,我们会更深入一点,甚至可以从一个Caddy文件中提供多个网站。
成都联想服务器代理【公司名称】成都鸿盛广达科技有限公司
【代理级别】成都联想服务器总代理
【销售经理】成都鸿盛广达科技有限公司
【联系方式】座机:028-85952921 手机:13981931555
【公司地址】成都市武侯区人民南路四段一号时代数码广场A座17楼