.Net Core 项目部署到 ContOS 7服务器

将所有的压缩包都放在统一位置:1、CoreSDK目录:root/dotnet、 2、项目:root/www、4:方向代理:root/nginx、

第一步:安装.net Core SDK

到压缩包的位置执行:
mkdir -p $HOME/dotnet && tar zxf dotnet-sdk-2.2.207-linux-x64.tar.gz -C $HOME/dotnet
export DOTNET_ROOT=$HOME/dotnet
export PATH=$PATH:$HOME/dotnet

配置全局变量
vi /etc/profile 中加入:
export DOTNET_ROOT=$HOME/dotnet
export PATH=$PATH:$HOME/dotnet

使文件生效:source /etc/profile

重启计算机:shutdown -r now

第二步:上传项目文件
    
第三步启动:
 dotnet Olms.Web.Host.dll

打开防火强:参考网站:https://www.cnblogs.com/liuxiaoji/p/9907984.html
sudo firewall-cmd --permanent --zone=public --add-service=http 
sudo firewall-cmd --permanent --zone=public --add-service=https
sudo firewall-cmd --reload

第四步:安装Nginx :略
tar zxf nginx-1.18.0.tar.gz
-------------------------------------------------------------------------
第五步:安装python2.7.9 参考网站:https://www.cnblogs.com/toulanboy/articles/7753502.html
1、下载python#
wget https://www.python.org/ftp/python/2.7.9/Python-2.7.9.tgz

 
2、解压、编译安装(依次执行以下5条命令)#
tar -zxvf Python-2.7.9.tgz

cd Python-2.7.9

./configure --prefix=/usr/local/python-2.7.9

make

make install

3、系统自带了python版本,我们需要为新安装的版本添加一个软链#
ln -s /usr/local/python-2.7.9/bin/python /usr/bin/python2.7.9

4、查看python版本  
python -version

-------------------------------------------------------------------------

第六步:安装supervisor :参考网站https://www.cnblogs.com/kaituorensheng/p/5020793.html

1、安装这里用源码
supervisor-3.1.3.tar.gz
tar -zxvf supervisor-3.1.3.tar.gz
cd supervisor-3.1.3
sudo python setup.py install

其中这里会报错。在执行python setup.py install 时候

这里我们需要安装 setuptools 
supervisor-3.3.2]# python ez_setup.py
会出现这个要求:
Downloading http://pypi.python.org/packages/2.7/s/setuptools/setuptools-0.6c11-py2.7.egg

下载结果并且执行
[root@localhost supervisor-3.3.2]# sh setuptools-0.6c11-py2.7.egg

执行完就可以执行 
python setup.py install 了

这一步supervisor安装完成
在执行
echo_supervisord_conf > /etc/supervisord.conf  时报错误

-----------------------------------------------------------------------------

[root@localhost bin]# echo_supervisord_conf > /etc/supervisord.conf
Traceback (most recent call last):
File "/usr/bin/echo_supervisord_conf", line 5, in <module>
    from pkg_resources import load_entry_point
File "/usr/lib/python2.7/site-packages/setuptools-0.6c11-py2.7.egg/pkg_resourc es.py", line 2603, in <module>
    working_set.require(__requires__)
File "/usr/lib/python2.7/site-packages/setuptools-0.6c11-py2.7.egg/pkg_resourc es.py", line 666, in require
    needed = self.resolve(parse_requirements(requirements))
File "/usr/lib/python2.7/site-packages/setuptools-0.6c11-py2.7.egg/pkg_resourc es.py", line 565, in resolve
    raise DistributionNotFound(req)  # XXX put more info here
pkg_resources.DistributionNotFound: meld3>=0.6.5

---------------------------------------------------------------------------

解决方案参考:https://blog.csdn.net/nb7474/article/details/103821255

wget https://pypi.python.org/packages/source/m/meld3/meld3-1.0.2.tar.gz 
tar -zxf meld3-1.0.2.tar.gz 
cd meld3-1.0.2 
python setup.py install

-------------------------------------------------------------------------

echo_supervisord_conf > /etc/supervisord.conf  
执行就成功了

现在可以去修改默认的 /supervisord.conf  配置了

默认配置中,我们不需要修改其他的

参考:https://www.cnblogs.com/ruanraun/p/supervisor.html

只需要将最后一句注释的那句:
 ;[include] ;files = relative/directory/*.ini

改为
[include] 
files = supervisord.d/*.conf
即可

然后在/etc目录下创建文件夹supervisord.d
在添加一个olms.conf即可

启动进程守护:
supervisord -c /etc/supervisord.conf

查看进程:
ps aux | grep supervisord

进程结果:
root     13996  0.0  0.2 215112  9916 ?        Ss   23:18   0:00 /usr/bin/python /usr/bin/supervisord -c /etc/supervisord.conf
root     14013  0.0  0.0 112824   984 pts/0    S+   23:18   0:00 grep --color=auto supervisord

查看进程命令

supervisorctl 是 supervisord 的命令行客户端工具,使用的配置和 supervisord 一样,这里就不再说了。下面,主要介绍 supervisorctl 操作的常用命令:

输入命令 supervisorctl 进入 supervisorctl 的 shell 交互界面,就可以在下面输入命令了。

help # 查看帮助
status # 查看程序状态
stop program_name # 关闭 指定的程序
start program_name # 启动 指定的程序
restart program_name # 重启 指定的程序
tail -f program_name # 查看 该程序的日志
update # 重启配置文件修改过的程序(修改了配置,通过这个命令加载新的配置)
也可以直接通过 shell 命令操作:

supervisorctl status
supervisorctl update

-------  启动  ------------------------------------------------------------

status: 查看当前运行的进程列表
stop xxx: 停止某一个进程(xxx),xxx为[program:theprogramname]里配置的值。
start xxx: 启动某个进程
restart xxx: 重启某个进程
stop groupworker: 重启所有属于名为groupworker这个分组的进程(start,restart同理)
stop all,停止全部进程,注:start、restart、stop都不会载入最新的配置文件。

配置supervisorctl重启

Olms.Web.Host.


------  重新配置   ------------------------------------------------------

[root@localhost www]# supervisorctl /etc/supervisord.d/olms.conf
*** Unknown syntax: /etc/supervisord.d/olms.conf
[root@localhost www]# supervisorctl
Olms.Web.Host.dll                FATAL     can‘t find command ‘dotnet‘
supervisor>
[root@localhost www]# cd /etc/supervisord.d
[root@localhost supervisord.d]# systemctl start supervisord.service
[root@localhost supervisord.d]# supervisorctl start Olms.Web.Host
Olms.Web.Host: ERROR (no such process)
[root@localhost supervisord.d]#

------ 启动 Supervisord 服务 -----------------------------------------

supervisord -c /etc/supervisord.conf

------ 启动 Supervisord 服务出现错误---------------------------------

Starting supervisor: Error: Another program is already listening on a port that one of our HTTP servers is configured to use.  Shut this program down first before starting supervisord.
For help, use /usr/bin/supervisord -h

------   解决办法   -----------------------------------------------------   

ps -ef | grep supervisord

root   2503  1  0 Nov19 ?  00:03:23 /usr/bin/python /usr/bin/supervisord
root   21337 2556  0 18:15 pts/8   00:00:00 grep --color=auto supervisord

pid=2503

kill -s SIGTERM 2503  

------ 重启项目 -------------------------------------------------------
supervisord -c /etc/supervisord.conf

.Net Core 项目部署到 ContOS 7服务器

上一篇:jQuery 接收参数


下一篇:vue+.net iis+nginx配置说明