弊社技術顧問増田智明著 ASP.NET MVCプログラミング入門(Amazon)
今回はローカルで作成した.NET Coreで作ったアプリをサーバで動かす手順の御紹介です!今回は環境まで構築します。お手本として弊社技術顧問の増田氏の本を参考にしております。
環境
- CentOS7
 
.NET Core SDKのインストール
| 
					 1 2 3 4 5 6 7 8  | 
						# sudo rpm -Uvh https://packages.microsoft.com/config/rhel/7/packages-microsoft-prod.rpm Retrieving https://packages.microsoft.com/config/rhel/7/packages-microsoft-prod.rpm warning: /var/tmp/rpm-tmp.zFvHhj: Header V4 RSA/SHA256 Signature, key ID be1229cf: NOKEY Preparing...                          ################################# [100%] Updating / installing...    1:packages-microsoft-prod-1.0-1.el7################################# [100%]  | 
					
| 
					 1 2 3  | 
						# yum update # yum install dotnet-sdk-2.1 # yum install libunwind libicu  | 
					
環境情報の確認
| 
					 1 2  | 
						# dotnet --version 2.1.401  | 
					
| 
					 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28  | 
						# dotnet --info output: .NET Core SDK (reflecting any global.json):  Version:   2.1.401  Commit:    91b1c13032 Runtime Environment:  OS Name:     centos  OS Version:  7  OS Platform: Linux  RID:         centos.7-x64  Base Path:   /usr/share/dotnet/sdk/2.1.401/ Host (useful for support):   Version: 2.1.3   Commit:  124038c13e .NET Core SDKs installed:   2.1.401 [/usr/share/dotnet/sdk] .NET Core runtimes installed:   Microsoft.AspNetCore.All 2.1.3 [/usr/share/dotnet/shared/Microsoft.AspNetCore.All]   Microsoft.AspNetCore.App 2.1.3 [/usr/share/dotnet/shared/Microsoft.AspNetCore.App]   Microsoft.NETCore.App 2.1.3 [/usr/share/dotnet/shared/Microsoft.NETCore.App] To install additional .NET Core runtimes or SDKs:   https://aka.ms/dotnet-download  | 
					
展開しましょう。
| 
					 1  | 
						# unzip app-123hoge.zip  | 
					
| 
					 1  | 
						# cd /root/app-123hoge/Cool.Server  | 
					
| 
					 1  | 
						# dotnet publish -c Release  | 
					
ディレクトリを作成
| 
					 1  | 
						# mkdir -p /var/netcoreapp/Cool.Server  | 
					
ファイルをコピーします
| 
					 1  | 
						# cp -R /root/app-123hoge/Cool.Server/bin/Release/netcoreapp2.0/publish/* /var/netcoreapp/Cool.Server/  | 
					
権限設定
| 
					 1 2  | 
						# useradd -s /sbin/nologin dotnetuser # chown -R dotnetuser /var/netcoreapp/  | 
					
任意のユーザにして下さいね!
Systemd化しよう
| 
					 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23  | 
						# vi /etc/systemd/system/Cool.Server.service [Unit] Description=.NET Core Cool.Server DefaultDependencies=no Wants=network.target After=network.target [Service] Type=oneshot RemainAfterExit=no ExecStart=/usr/bin/dotnet Cool.Server.dll ←プロジェクトのdll名を記述して下さいね! SyslogIdentifier=Cool.Server WorkingDirectory=/var/netcoreapp/Cool.Server ←プロジェクトのパスを記述して下さいね! User=dotnetuser Group=dotnetuser Environment=ASPNETCORE_ENVIRONMENT=Production KillMode=process [Install] WantedBy = multi-user.target  | 
					
| 
					 1 2  | 
						# systemctl daemon-reload # systemctl enable usb-blocker-serverd  | 
					
| 
					 1  | 
						# reboot now  | 
					
お疲れ様です。
					        
              
