基础环境搭建
部署 Deno 应用之前,确保你的机器上已经安装了 Deno。可以通过运行以下命令来检查是否已安装 Deno:
deno --version
如果未安装 Deno,可以参考 Deno 官方文档进行安装。
安装 Deno
使用脚本安装
对于大多数用户,推荐使用脚本来安装 Deno。该脚本会自动检测操作系统并下载适合的 Deno 版本。执行以下命令:
curl -fsSL https://deno.land/x/install/install.sh | sh
手动安装
如果需要手动安装,可以从 Deno 的 GitHub 发布页面下载最新版本的 Deno,并按照官方文档中的说明进行安装。
设置环境变量
为了方便使用,建议将 Deno 添加到系统路径中。对于 Linux 和 macOS 用户,可以在 ~/.bashrc
或 ~/.zshrc
文件中添加以下行:
export DENO_INSTALL="$HOME/.deno" export PATH="$DENO_INSTALL/bin:$PATH"
然后重新加载配置文件:
source ~/.bashrc
或
source ~/.zshrc
对于 Windows 用户,可以通过编辑环境变量来实现。
创建一个简单的 Deno 应用
在开始部署之前,我们先创建一个简单的 Deno 应用来测试环境是否配置正确。
创建项目结构
首先,创建一个新的目录作为项目的根目录,并在其中初始化一个新的 Deno 项目:
mkdir my-deno-app cd my-deno-app
编写代码
在项目根目录下创建一个名为 main.ts
的文件,并在其中编写如下代码:
-- -------------------- ---- ------- -- ------- ------ - ----- - ---- ----------------------------------------------- ----- - - ------- ----- ---- --- ----------------- ------ --------- -- ------------------------ --- ----- ------ --- -- -- - ------------- ----- ------ -------- --- -
这段代码定义了一个简单的 HTTP 服务器,它会在 http://localhost:8000
上响应 "Hello World"。
运行应用
在项目根目录下,通过 Deno 运行这个应用:
deno run --allow-net main.ts
打开浏览器访问 http://localhost:8000
,你应该能看到 "Hello World" 的输出。
部署到服务器
接下来,我们将介绍如何将 Deno 应用部署到远程服务器上。
准备服务器
假设你有一个 Linux 服务器可用,首先确保服务器上安装了 Deno。根据前面提到的方法安装 Deno。
上传代码
你可以通过多种方式将代码上传到服务器,比如使用 scp
、rsync
或者 Git。这里以 scp
为例:
scp -r /path/to/my-deno-app user@your-server:/path/to/destination
在服务器上运行应用
登录到服务器后,进入项目目录,并运行 Deno 应用:
cd /path/to/destination deno run --allow-net main.ts
为了使应用在后台持续运行,可以使用 nohup
或者类似工具如 pm2
。
使用 nohup
nohup deno run --allow-net main.ts &
这样即使关闭终端,应用也会继续运行。
使用 pm2
首先安装 pm2:
npm install -g pm2
然后使用 pm2 启动应用:
pm2 start main.ts --name my-deno-app --interpreter deno
这将允许你更方便地管理应用的生命周期,如重启、停止等。
配置域名和 SSL
为了使应用对外提供服务,通常需要配置域名和 SSL。
配置域名
假设你已经购买了域名并指向你的服务器 IP。你需要在服务器上配置 DNS 解析,这通常由域名提供商提供管理界面完成。
配置 SSL
Deno 支持通过 HTTPS 提供服务。为了使用 SSL,你需要获取证书。可以使用 Let's Encrypt 免费获得 SSL 证书。
使用 certbot 获取证书
sudo apt-get update sudo apt-get install certbot python3-certbot-nginx sudo certbot --nginx -d yourdomain.com -d www.yourdomain.com
根据提示操作,安装完成后,certbot 将自动生成并安装证书。
配置 HTTPS
修改你的 Deno 应用代码,使其支持 HTTPS:
-- -------------------- ---- ------- -- ------- ------ - ----- - ---- ----------------------------------------------- ------ - -- ----- ---- -------- ------ -- ---- ------------------------------------------ ----- ------- - - --------- ----------------- ---- ----- ---------------------------------------------------------------------- ----- ----- ------------------------------------------------------------------------ -- ----- - - ------- ----- --- -- --------- ------------------ ------ --------- -- ------------------------- --- ----- ------ --- -- -- - ------------- ----- ------ -------- --- -
记得调整端口和路径以匹配你的证书存储位置。
以上步骤完成之后,你的 Deno 应用就可以通过 HTTPS 提供服务了。