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 http://localhost: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 即可

数据库 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

运行

定位到目录,然后使用 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=/root/cms
ExecStart=/usr/local/bin/dotnet /root/cms/ZKEACMS.WebHost.dll
Restart=always
RestartSec=
SyslogIdentifier=zkeacms
User=root
Environment=ASPNETCORE_ENVIRONMENT=Production [Install]
WantedBy=multi-user.target

启动服务

systemctl start zkeacms.service

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

原文链接

http://www.zkea.net/codesnippet/detail/post-40

在 CentOS 上运行 ZKEACMS的更多相关文章

  1. Net Core应用,在CentOS上运行

    Net Core应用,在CentOS上运行 本文主要介绍下运用docker虚拟技术打包Asp.net core应用. Docker作为一个开源的应用容器引擎,近几年得到广泛的应用,使用Docker我们 ...

  2. Centos上运行.net core2.0

    一.在centos7上安装.net core sdk 微软文档:https://www.microsoft.com/net/learn/get-started/linux/centos 二.直接在Ce ...

  3. Docker打包 Asp.Net Core应用,在CentOS上运行

    本文主要介绍下运用docker虚拟技术打包Asp.net core应用. Docker作为一个开源的应用容器引擎,近几年得到广泛的应用,使用Docker我们可以轻松实现应用的持续集成部署,一次打包,到 ...

  4. Docker打包 Asp.Net Core应用,在CentOS上运行(转)

    转载连接:https://www.cnblogs.com/ibeisha/archive/2017/09/09/netcoreondocker.html 本文主要介绍下运用docker虚拟技术打包As ...

  5. Ubuntu、CentOS上运行.net桌面程序

    1.mono->winform 2.wine->windows程序

  6. Linux系统入门学习:在CentOS上安装phpMyAdmin

    问题:我正在CentOS上运行一个MySQL/MariaDB服务,并且我想要通过网络接口来用phpMyAdmin来管理数据库.在CentOS上安装phpMyAdmin的最佳方法是什么? phpMyAd ...

  7. centos 上安装phpstorm

    phpstorm在centos上运行依赖JDK,所以先安装JDK环境. 假如是centos自带的openjdk,直接卸载,不支持phpstorm. 下载jdk-7u45-linux-i586.tar. ...

  8. CentOS上部署JAVA服务【转】

    http://www.th7.cn/Program/java/201511/686437.shtml 本文将介绍如何在CentOS上运行Java Web服务,其中将包括如何搭建JAVA运行环境.如何开 ...

  9. asp.net core 错误定位 & vs2017 远程调试部署在centos上的asp.net core程序

        前言 程序运行中会出现各种BUG. 排除BUG有三种方式. 一.访问页面直接报错误信息 出于安全,服务器是关闭这个功能的.在centos上可以用 命令设置环境变量来解决:   export A ...

随机推荐

  1. firefox 插件 取消认证签名

    Firebug Tab Mix plus :系统退出自动保存tab List.     tab mix options>Session>start/exit>when browse ...

  2. UNITY IMGUI

    这几天研究OPENGL时,想找一个UI库来用,发现了IMGUI,到网上搜索评估中,突然发现它似乎和UNITY有关系. UNITY文档中提到过IMGUI,不知道是不一个东西,仔细看了下文档,果然是.原文 ...

  3. 201671010140. 2016-2017-2 《Java程序设计》java学习第九周

    第七章:<异常,断言和日志>知识点小结       本周,进行了对Java中的异常处理的了解学习,以下是部分所得. 一.未检查异常与已检查异常的区别: 未检查异常处理方法:1.捕获2.继续 ...

  4. C++ std::unordered_map

    std::unordered_map template < class Key, // unordered_map::key_type class T, // unordered_map::ma ...

  5. robotframework中文显示乱码

    问题描述:接口.数据库返回信息有中文的时候会显示unicode的样式,如图 解决方法: 1.robotframework为3.0.X 2.找到Python安装目录下的\Lib\site-package ...

  6. linux环境下搭建osm_web服务器二(Mapnik及apache2mod_tile配置):

    Mapnik及apache2mod_tile配置 上一篇,我们配置好了PostgreSQL服务器,导入了测试数据.今天,我们来配置 mapnik2 + apache2 + mod_tile 的WMS服 ...

  7. fgetc()

    fgetc() 函数从文件指针中读取一个字符.

  8. Flip

    Flip是一个能够让任意HTML.文本或jQuery Element产生漂亮翻转效果的jQuery插件. 可以配置翻转方向:从右到左.上到下或从左到右.下到上.翻转的速度也可以配置. 效果如下图所示: ...

  9. Java 前台后台数据传递、中文乱码解决方法

    1.向前台传递数据;2.向后台传递数据;3.ajax post 提交数据到服务端时中文乱码解决方法;4.数组类型参数传递; 1.向前台传递数据:1.1 字符串数据传递:  这种方式只是单一的向前台传递 ...

  10. 实践作业4:Web测试实践(小组作业)每日任务记录3

    会议时间:2017年12月23日 会议地点:东九教学楼自习区 主  持  人:王晨懿 参会人员:王晨懿.余晨晨.郑锦波.杨潇.侯欢.汪元 记  录  人:王晨懿 会议议题:小组作业第二阶段 下面是今天 ...