CentOS上运行ZKEACMS的详细过程

ZKEACMS Core 是基于 .net core 开发的,可以在 windows, linux, mac 上跨平台运行,接下来我们来看看如何在 CentOS 上运行 ZKEACMS。

安装 .Net Core 运行时

运行以下命令,安装 .Net Core Runtime

sudo yum install libunwind libicu curl -sSL -o dotnet.tar.gz https://go.microsoft.com/fwlink/?linkid=843420 sudo mkdir -p /opt/dotnet && sudo tar zxf dotnet.tar.gz -C /opt/dotnet sudo ln -s /opt/dotnet/dotnet /usr/local/bin

安装 Nginx

sudo yum install epel-release sudo yum install nginx sudo systemctl enable nginx

修改 Nginx 的配置

修改 Nginx 的配置,让它反向代理到 localhost:5000,修改全局配置文件 /etc/nginx/nginx.conf ,修改 location 结点为以下内容

location / { proxy_pass :5000; proxy_http_version 1.1; proxy_set_header Upgrade $http_upgrade; proxy_set_header Connection keep-alive; proxy_set_header Host $host; proxy_cache_bypass $http_upgrade; }

启动 Nginx

sudo systemctl start nginx

到这里,我们的环境就搭配好了,接下来,我们来发布 ZKEACMS

发布 ZKEACMS.Core

发布 ZKEACMS.Core 比较简单,双击 Publish.cmd 即可

CentOS上运行ZKEACMS的详细过程

数据库 SQLite

为了简单起起见,这里使用 SQLite 作为数据库,生成一个SQLite数据命名为 Database.sqlite。在发布好的程序文件夹下,创建 App_Data 文件夹,并将 Database.sqlite 放入 App_Data 目录下。关于如何生成 SQLite 数据,可以进群询问,或者自行百度/谷歌。

修改连接字符串

打开 appsettings.json,加入 SQLite 的数据库连接字符串,结果如下

{ "ConnectionStrings": { "DefaultConnection": "", "Sqlite": "Data Source=App_Data/Database.sqlite", "MySql": "" }, "ApplicationInsights": { "InstrumentationKey": "" }, "Logging": { "IncludeScopes": false, "LogLevel": { "Default": "Debug", "System": "Information", "Microsoft": "Information" } }, "Culture": "zh-CN" }

打包上传服务器

我们将发布好的程序打包为 cms.zip 并上传到 /root 目录下。并解压到 /root/cms 目录下,使用以下命令解压

unzip cms.zip -d cms

CentOS上运行ZKEACMS的详细过程


运行

定位到目录,然后使用 dotnet 命令运行

cd /root/cms dotnet ZKEACMS.WebHost.dll

运行成功以后,就可以使用您服务器的IP或者域名访问了 :)

退出SSH远程连接客户端后,发现访问不了,这是因为 dotnet 也退出了。

以服务方式运行

创建一个服务,让 dotnet 在后台运行。安装 nano 编辑器

yum install nano

创建服务

sudo nano /etc/systemd/system/zkeacms.service

输入以下内容保存

[Unit] Description=ZKEACMS [Service] WorkingDirectory=https://www.jb51.net/root/cms ExecStart=https://www.jb51.net/usr/local/bin/dotnet /root/cms/ZKEACMS.WebHost.dll Restart=always RestartSec=10 SyslogIdentifier=zkeacms User=root Environment=ASPNETCORE_ENVIRONMENT=Production [Install] WantedBy=multi-user.target

启动服务

systemctl start zkeacms.service

这样就可以安心的退出SSH远程连接了。

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/wdpjyj.html