我是 systemd 的新手,想知道在部署新版本时重新启动 Web 应用程序的最佳策略是什么。
目前我在启动时启动我的服务,它只是坐在那里,但是我希望它在我更改文件时自动重新启动,因为每当我在 gitlab 上推送到 master 时,运行程序都会获取文件,编译并将其复制到正确的目录。然后我想重新启动它或关闭它,但是我不知道如何重新启动它需要 sudo。
这是我的服务文件
[Unit]
After=mongod.service
[Service]
WorkingDirectory=/var/app/mywebsite/Web
Environment="HOME=/home/stan"
Environment="DOTNET_CLI_TELEMETRY_OPTOUT=1"
Environment="DOTNET_SKIP_FIRST_TIME_EXPERIENCE=1"
ExecStart=/usr/bin/dotnet run -c Release -p /var/app/mywebsite/Web/project.json
[Install]
WantedBy=multi-user.target
Run Code Online (Sandbox Code Playgroud)
这是我的 ci 文件,更具体
before_script:
- set DOTNET_CLI_TELEMETRY_OPTOUT=1
- set DOTNET_SKIP_FIRST_TIME_EXPERIENCE=1
- set HOME=/home/stan
- cd Web
- dotnet restore
- dotnet build -c Release
- cd ..
copy:
script:
- cp -R ./* /var/app/mywebsite/ # After this I would like to restart the website service
Run Code Online (Sandbox Code Playgroud) 我只想在启动时运行一个非常简单的命令。我怎样才能做到这一点?我搜索过谷歌,它有非常复杂的例子,但我需要的只是在启动时运行这个脚本。我怎样才能做到这一点?
脚本
./init.d/opscenter-agent start
可能的重复:
如何在不更改名称的情况下隐藏文件夹?
我想隐藏一些我不想隐藏所有我不使用的文件夹的文件夹。由于系统正在使用它们,我无法真正重命名它们以添加.到它们前面。有没有其他办法?
我在某处看到 MonoDev 允许这样做,但是当我安装 Ubuntu 和 MonoDev 时,我确实发现只有 MVC1 作为创建项目的选项。因此,也许有人确实知道它是否真的支持 ASP.NET MVC3 (C#),如果支持,那么如何设置它。另外,DB呢?我能否运行需要 Linq2SQL 模型数据绑定器的应用程序?