Deno 作为 Linux systemd 服务。如何?
Deno as Linux systemd service. How?
由于我不明白的原因,默认情况下 Deno 不是 systemd
服务。它有一个自动安装脚本,可将 deno 可执行文件放入您的 /home
文件夹中。当您 deno run
使用此可执行文件的 Typescript 文件时,它会加载您的脚本,您可以告别控制台被用于其他任何事情。
如何将 deno
作为 systemd
服务添加到 Ubuntu?
是的!我想通了!
不过,如果您能帮我弄清楚为什么 deno
仅在您以 root
用户身份登录时才执行,那就太好了。我无法通过 sudo 用户获得 运行 的 deno。
步骤:
使用他们在 deno.land
提供的 .sh
脚本安装 deno
将您的 httpServer.ts
复制到您的 /home
目录。
通过创建我们将使用的服务文件向 systemd
介绍该应用程序。
sudo touch /etc/systemd/system/deno.service
使用下面的模板编辑这个最近创建的空文件。
[Unit]
Description=Deno 1.1.1 service
Documentation=http://deno.land
Wants=network-online.target
After=network-online.target
[Service]
Type=simple
User=user1
WorkingDirectory=/home
ExecStart=/home/user1/.deno/bin/deno run --allow-net --allow-read httpServer.ts
Restart=on-failure
[Install]
WantedBy=multi-user.target
- 然后启用并启动它。
sudo systemctl enable deno
sudo systemctl start deno
- 检查 deno 服务的状态。
sudo systemctl status deno
截图
由于我不明白的原因,默认情况下 Deno 不是 systemd
服务。它有一个自动安装脚本,可将 deno 可执行文件放入您的 /home
文件夹中。当您 deno run
使用此可执行文件的 Typescript 文件时,它会加载您的脚本,您可以告别控制台被用于其他任何事情。
如何将 deno
作为 systemd
服务添加到 Ubuntu?
是的!我想通了!
不过,如果您能帮我弄清楚为什么 deno
仅在您以 root
用户身份登录时才执行,那就太好了。我无法通过 sudo 用户获得 运行 的 deno。
步骤:
使用他们在 deno.land
提供的.sh
脚本安装 deno将您的
httpServer.ts
复制到您的/home
目录。通过创建我们将使用的服务文件向
systemd
介绍该应用程序。sudo touch /etc/systemd/system/deno.service
使用下面的模板编辑这个最近创建的空文件。
[Unit]
Description=Deno 1.1.1 service
Documentation=http://deno.land
Wants=network-online.target
After=network-online.target
[Service]
Type=simple
User=user1
WorkingDirectory=/home
ExecStart=/home/user1/.deno/bin/deno run --allow-net --allow-read httpServer.ts
Restart=on-failure
[Install]
WantedBy=multi-user.target
- 然后启用并启动它。
sudo systemctl enable deno
sudo systemctl start deno
- 检查 deno 服务的状态。
sudo systemctl status deno
截图