1、ネットコアSDKをインストールします
1.1、 あなたは.NETをインストールする前に、あなたは、マイクロソフトのキーを登録し、製品のリポジトリを登録し、必要な依存関係をインストールする必要があります。各マシンには、一つだけを完了する必要があります。
須藤回転数UVHます。https:// packages.microsoft.com/config/rhel/7/packages-microsoft-prod.rpm
1.2、インストールのための製品のアップデートが利用可能にし、その後は、.NET SDKをインストールします。
sudoのyumの更新 DOTNETをインストールsudoのyumを -sdk- 2.2
1.3、インストールが成功したことを確認
DOTNETの--version
2、ネットコア事業の展開
ネットコアLinuxプロジェクトのリリースは新しいフォルダyunyingにアップロードし、そのフォルダをyunying入力した後、2.1、プロジェクトを実行します
2.2、その後、ブラウザを訪問します。http:// IP:5000、あなたが訪問することができない場合は、最初のファイアウォールをオフにします
3、プロジェクトを転送するためにnginxのnginxのインストールと設定
3.1、ソースを加え
須藤回転数-Uvhます。http:// nginx.org/packages/centos/7/noarch/RPMS/nginx-release-centos-7-0.el7.ngx.noarch.rpm
3.2、nginxのインストール
sudoのyumは-y nginxのインストール
3.3は、nginxのは起動し、自動的に起動するように設定します
sudoはnginxの開始systemctl
nginxのを有効systemctl sudoを
インストールが成功したかどうかを確認するために3.4
ブラウザに入力します。http:// IP
3.5、nginxの設定ファイルを変更し、ファイルの内容が置き換えられ/etc/nginx/conf.d/default.conf:
サーバー{ 聞く 80 。 場所 / { proxy_passます。http:// localhostを:5000; proxy_http_version 1.1 ; proxy_set_header $ http_upgradeをアップグレード。 proxy_set_header接続キープ - 生きています。 proxy_set_headerホスト$ホスト; proxy_cache_bypass $ http_upgrade。 proxy_set_header X -Forwarded- については proxy_add_x_forwarded_for。 proxy_set_header X -Forwarded- プロト$スキーム。 } }
設定nginxのの-sは、2つの操作が再びネットコアプロジェクトを実行し、ポート80にアクセスし実行し、リロードまたは再起動systemctl再起動nginxのnginxの実行後、502エラーを報告するため、SELinuxの設定の問題可能です。
解決策は2つあります:
、SELinuxを無効にします
入力:seatatusは、SELinuxのステータス場合:有効になって、設定ファイルを変更し、ターンを示しては/ etc / selinuxを/ configに変更SELinuxが無効=
または実行します。
setenforce 0 のsed -i ' sの/ / gを無効に$ /を強制'は/ etc / selinuxを/ configに
B、許容nginxののリストは、SELinuxを追加しました
1、yumをpolicycoreutils-インストールのpython 2、sudoの猫 / VARの /log/audit/audit.logを| グレップのnginxの| grepを拒否| audit2allow - M mynginx
3、須藤semodule -i mynginx.pp
再実行します。ネットコアプロジェクトとアクセス、それが成功した訪問することができます。
4、設定デーモンスーパーバイザー
4.1インストールのスーパーバイザー:
1、yum install python-setuptools
2、easy_install supervisor
4.2、配置Supervisor:
创建supervisor文件夹,通过echo_supervisord_conf初始化配置文件
1、mkdir /etc/supervisor
2、echo_supervisord_conf > /etc/supervisor/supervisord.conf
4.3、修改新建的supervisord.conf配置信息,将最后面的修改为
即去掉最后两行前面的“;”号。
4.4、为.Net Core 项目添加进程配置文件:
在/etc/supervisor/目录下创建名字为conf.d文件夹,在conf.d文件夹中创建一个WebDemo.ini文件,在WebDemo.ini文件添加以下配置
[program:WebDemo] command=dotnet WebDemo.dll ; 运行程序的命令 directory=/root/yunying/ ; 命令执行的目录 autorestart=true ; 程序意外退出是否自动重启 stderr_logfile=/var/log/WebDemo.err.log ; 错误日志文件 stdout_logfile=/var/log/WebDemo.out.log ; 输出日志文件 environment=ASPNETCORE_ENVIRONMENT=Production ; 进程环境变量 user=root ; 进程执行的用户身份 stopsignal=INT
4.5、启动Supervisor服务:
supervisord -c /etc/supervisor/supervisord.conf
启动服务后可以通过命令查看是否配置成功
ps -ef | grep WebDemo.dll
如果看到以下内容,表示配置成功,就可以访问.Net Core项目了
4.6 配置Supervisor开机启动
进入/usr/lib/systemd/system/目录,并创建supervisord.service文件,添加内容:
[Unit] Description=Supervisor daemon [Service] Type=forking ExecStart=/usr/bin/supervisord -c /etc/supervisor/supervisord.conf ExecStop=/usr/bin/supervisorctl shutdown ExecReload=/usr/bin/supervisorctl reload KillMode=process Restart=on-failure RestartSec=42s [Install] WantedBy=multi-user.target
使配置生效:
systemctl daemon-reload
设置服务开机启动:
systemctl enable supervisord
启动supervisor进程:
systemctl start supervisord
验证是否为开机启动:
systemctl is-enabled supervisord
5、常用命令:
5.1、Nginx
nginx //启动nginx nginx -s reload //重启nginx nginx -s stop //关闭nginx
5.2、supervisor
supervisorctl status //查看所有任务状态 supervisorctl shutdown //关闭所有任务 supervisorctl start|stop|restart all //控制所有进程 supervisorctl start|stop|restart program_name //控制目标进程