• 在 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 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=10
        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

  • 相关阅读:
    map集合方法。
    正则表达式提取器。
    jmeter使用多台linux进行分布式压测。
    如何配置SSHKey
    为什么要做接口测试?
    npm install -g @angular/cli@latest 失败
    关于Newtonsoft.Json,LINQ to JSON的一个小demo
    mysql循环插入数据、生成随机数及CONCAT函数
    WebApi HTTP Put 405 Method not allowed
    npm install 失败
  • 原文地址:https://www.cnblogs.com/seriawei/p/6733908.html
Copyright © 2020-2023  润新知