在 centos 部署angular与dotnet core服务

2019-05-24  本文已影响0人  户口米青

部署到linux服务器

服务器环境要求

CentOS ≥ 7.0
node ≥ v12.13.0
nginx 最新
pm2 最新

安装nodejs

首先安装wget

yum install -y wget

如果已经安装了可以跳过该步

下载nodejs最新的bin包

wget https://nodejs.org/dist/v12.13.0/node-v12.13.0-linux-x64.tar.xz

然后就是等着下载完毕。

解压包,依次执行

xz -d node-v12.13.0-linux-x64.tar.xz
tar -xf node-v12.13.0-linux-x64.tar

移动文件夹到 /usr/local/nodejs

mv node-v12.13.0-linux-x64 /usr/local/nodejs

最后,还需要配置下环境变量

vim /etc/profile

在文件最未尾添加:

export NODE_HOME=/usr/local/nodejs
export PATH=$NODE_HOME/bin:$PATH

:wq 保存后,然后运行,

source /etc/profile

查看环境变量是否生效

echo $PATH

最后测试

node -v
npm -v
npx -v

安装nginx

安装先决条件:

sudo yum install yum-utils

要设置yum存储库,请创建 /etc/yum.repos.d/nginx.repo 包含以下内容的文件 :

sudo vim /etc/yum.repos.d/nginx.repo
[nginx-stable]
name=nginx stable repo
baseurl=http://nginx.org/packages/centos/$releasever/$basearch/
gpgcheck=1
enabled=1
gpgkey=https://nginx.org/keys/nginx_signing.key
module_hotfixes=true
[nginx-mainline]
name=nginx mainline repo
baseurl=http://nginx.org/packages/mainline/centos/$releasever/$basearch/
gpgcheck=1
enabled=0
gpgkey=https://nginx.org/keys/nginx_signing.key
module_hotfixes=true

默认情况下,使用稳定的nginx软件包的存储库。如果要使用主线nginx软件包,请运行以下命令:

sudo yum-config-manager --enable nginx-mainline

要安装nginx,请运行以下命令:

sudo yum update
sudo yum install nginx

当提示您接受GPG密钥时,请验证指纹是否匹配 573B FD6B 3D8F BC64 1079 A6AB ABF5 BD82 7BD9 BF62 ,如果是,则接受它。

安装完成后查看版本

nginx -v

nginx使用

安装完成后,nginx的几个目录

 执行目录:/usr/sbin/nginx
 模块所在目录:/usr/lib64/nginx/modules
 配置所在目录:/etc/nginx/
 默认站点目录:/usr/share/nginx/html
 主要配置文件:/etc/nginx/nginx.conf 指向:/etc/nginx/conf.d/default.conf
 PID目录:/var/run/nginx.pid
 错误日志:/var/log/nginx/error.log
 访问日志:/var/log/nginx/access.log

查看nginx状态

systemctl status nginx.service

启动、停止、重载命令

systemctl start nginx.service
systemctl stop nginx.service
systemctl reload nginx.service
systemctl status nginx.service

注意:当配置完Nginx.conf并重新启动Nginx时,需要一定的时间才会生效。

centos重启后自动启动nginx

systemctl enable nginx.service

配置nginx服务器

server {
        listen       80;
        server_name  test.web.baidu.com;
        root         /usr/share/nginx/html;

        # Load configuration files for the default server block.
        include /etc/nginx/default.d/*.conf;

        location / {
            proxy_pass http://localhost:5651;
        }

        error_page 404 /404.html;
            location = /40x.html {
        }

        error_page 500 502 503 504 /50x.html;
            location = /50x.html {
        }
}

server {
        listen        80;
        server_name   test.api.baidu.com;
        root              /www/testSite;
        index         index.html;
 }

文件上传需在http节点设置较大的缓存 client_max_body_size 100m;

然后重启nginx

安装mariadb

curl -sS https://downloads.mariadb.com/MariaDB/mariadb_repo_setup | sudo bash

要设置yum存储库,请创建 /etc/mariadb.repos 包含以下内容的文件 :

sudo vim /etc/yum.repos.d/mariadb.repos
# MariaDB 10.5 [Stable] CentOS repository list - created 2020-08-06 08:56 UTC
# https://mariadb.org/download-test/
[mariadb]
name=MariaDB
baseurl=https://mirrors.tuna.tsinghua.edu.cn/mariadb/yum/10.5/centos7-amd64
gpgkey=https://mirrors.tuna.tsinghua.edu.cn/mariadb/yum/RPM-GPG-KEY-MariaDB
gpgcheck=1

安装mariadb

sudo yum update
sudo yum install MariaDB-server MariaDB-client

启动MariaDB

systemctl start mariadb

首次修改root密码

mysqladmin -u root -p password 123456

修改完登录

mysql -u root -p123456

安装.net core 3.1

安装 .NET 之前,请运行以下命令,将 Microsoft 包签名密钥添加到受信任密钥列表,并添加 Microsoft 包存储库。 打开终端并运行以下命令:

sudo rpm -Uvh https://packages.microsoft.com/config/centos/7/packages-microsoft-prod.rpm

安装运行时
.NET Core 运行时允许运行使用不随附运行时的 .NET Core 所开发的应用。 以下命令安装 ASP.NET Core 运行时,这是与 .NET Core 最兼容的运行时。 在终端中,运行以下命令。

sudo yum install aspnetcore-runtime-3.1

安装pm2

npm install pm2 -g

启动nodejs程序

pm2 start app.js

启动dotnet core程序

pm2 start "dotnet 路径/某.dll"

监控

pm2 monit

其它命令

pm2 list
pm2 stop
pm2 restart
pm2 delete

centos重启服务器后自启

pm2 startup

保存已经定义的pm2任务

pm2 save

传输文件到linux服务器

使用命令传输文件夹

scp -r /本地电脑路径 root@远程服务器ip:/远程服务器路径

如果使用的是共享服务器,可以指定端口

scp  -P 端口 -r /本地电脑路径 root@远程服务器ip:/远程服务器路径

传输文件则不使用-r参数

部署到angular-ssr 到 windows服务器

服务器环境要求
iis ≥ 7.0
node ≥ v12.13.0
iisnode ≥ 0.2.26 (full-x64)
url-rewrite 需要最新版

iisnode 下载地址 [https://github.com/Azure/iisnode](https://github.com/Azure/iisnode)

1.iis站点权限要配置 IIS_USER 可读写
2. 应用程序池 NET CLR版本修改为 无托管
3. 应用程序池模式修改为 经典
4. 应用程序池标识修改为 ApplicationPoolIdentity
5. 运行命令行 %windir%\system32\inetsrv\appcmd unlock config -section:system.webServer/handlers

申请HTTPS证书

使用certbot工具申请letsencrypt发行的免费ssl证书

上一篇下一篇

猜你喜欢

热点阅读