6
5

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

CentOS 7 上で ASP.NET Core アプリケーションを動かす

Last updated at Posted at 2018-06-22

n 番煎じだとは思うが、C# でコマンドラインツールとかウェブアプリケーション少し書くかなーと思いたったので、まずは動くところまでやってみた個人用メモ

環境

  • CentOS 7.5
$ cat /etc/redhat-release
CentOS Linux release 7.5.1804 (Core)

環境構築

$ sudo rpm -Uvh https://packages.microsoft.com/config/rhel/7/packages-microsoft-prod.rpm
$ sudo yum update -y
...
$ sudo yum install dotnet-sdk-2.1 -y
...
$ dotnet --version
2.1.301

コンソールアプリケーションで Hello, World!

$ dotnet new console -o myApp
$ cd myApp/
$ cat ./Program.cs
using System;

namespace myApp
{
    class Program
    {
        static void Main(string[] args)
        {
            Console.WriteLine("Hello World!");
        }
    }
}
$ dotnet run
Hello World!
$ dotnet publish -c release -r linux-x64

Microsoft (R) Build Engine version 15.7.179.6572 for .NET Core
Copyright (C) Microsoft Corporation. All rights reserved.

  Restoring packages for /home/centos/proj/myApp/myApp.csproj...
  Generating MSBuild file /home/centos/proj/myApp/obj/myApp.csproj.nuget.g.props.
  Generating MSBuild file /home/centos/proj/myApp/obj/myApp.csproj.nuget.g.targets.
  Restore completed in 323.25 ms for /home/centos/proj/myApp/myApp.csproj.
  myApp -> /home/centos/proj/myApp/bin/release/netcoreapp2.1/linux-x64/myApp.dll
  myApp -> /home/centos/proj/myApp/bin/release/netcoreapp2.1/linux-x64/publish/
$ ./bin/release/netcoreapp2.1/linux-x64/myApp
Hello World!

ASP.NET Core アプリケーションで Hello, World!

$ dotnet new web -o myWeb
The template "ASP.NET Core Empty" was created successfully.

Processing post-creation actions...
Running 'dotnet restore' on myWeb/myWeb.csproj...
  Restoring packages for /home/centos/proj/myWeb/myWeb.csproj...
  Generating MSBuild file /home/centos/proj/myWeb/obj/myWeb.csproj.nuget.g.props.
  Generating MSBuild file /home/centos/proj/myWeb/obj/myWeb.csproj.nuget.g.targets.
  Restore completed in 1.43 sec for /home/centos/proj/myWeb/myWeb.csproj.

Restore succeeded.

$ cd myWeb
$ cat ./Startup.cs
using System;
using System.Collections.Generic;
using System.Linq;
using System.Threading.Tasks;
using Microsoft.AspNetCore.Builder;
using Microsoft.AspNetCore.Hosting;
using Microsoft.AspNetCore.Http;
using Microsoft.Extensions.DependencyInjection;

namespace myWeb
{
    public class Startup
    {
        // This method gets called by the runtime. Use this method to add services to the container.
        // For more information on how to configure your application, visit https://go.microsoft.com/fwlink/?LinkID=398940
        public void ConfigureServices(IServiceCollection services)
        {
        }

        // This method gets called by the runtime. Use this method to configure the HTTP request pipeline.
        public void Configure(IApplicationBuilder app, IHostingEnvironment env)
        {
            if (env.IsDevelopment())
            {
                app.UseDeveloperExceptionPage();
            }

            app.Run(async (context) =>
            {
                await context.Response.WriteAsync("Hello World!\n");
            });
        }
    }
}
$ nohup dotnet run &
[1] 13337
$ nohup: ignoring input and appending output to ‘nohup.out’
$ curl localhost:5000
Hello World!

結構簡単にできた。いいね。

6
5
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
6
5

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?