{"id":382,"date":"2021-09-28T12:33:22","date_gmt":"2021-09-28T03:33:22","guid":{"rendered":"https:\/\/sumomo.ohwaki.jp\/wordpress\/?p=382"},"modified":"2022-02-26T14:27:52","modified_gmt":"2022-02-26T05:27:52","slug":"linux%e3%81%aesystemd%e3%81%a7worker%e3%82%a2%e3%83%97%e3%83%aa%e3%82%92%e5%8b%95%e3%81%8b%e3%81%99","status":"publish","type":"post","link":"https:\/\/sumomo.ohwaki.jp\/wordpress\/?p=382","title":{"rendered":"Linux\u306esystemd\u3067worker\u30a2\u30d7\u30ea\u3092\u52d5\u304b\u3059"},"content":{"rendered":"\n<p>Linux\u306esystemd\u3067worker\u30a2\u30d7\u30ea\u3092\u52d5\u304b\u3057\u3066\u3001systemctl\u30b3\u30de\u30f3\u30c9\u3067\u5b89\u5168\u306b\u958b\u59cb\u30fb\u505c\u6b62\u51fa\u6765\u308b\u3088\u3046\u306b\u3059\u308b\u306b\u306f\u3001worker\u30d7\u30ed\u30b8\u30a7\u30af\u30c8\u306bMicrosoft.Extensions.Hosting.Systemd\u30d1\u30c3\u30b1\u30fc\u30b8\u3092\u8ffd\u52a0\u3057\u3066\u3001<a href=\"https:\/\/sumomo.ohwaki.jp\/wordpress\/?p=268\" target=\"_blank\" rel=\"noreferrer noopener\">Windows\u30b5\u30fc\u30d3\u30b9\u306e\u6642<\/a>\u3068\u540c\u3058\u3088\u3046\u306b\u3001UseSystemd()\u3092\u8ffd\u52a0\u3059\u308b\u3002<\/p>\n\n\n\n<div class=\"hcb_wrap\"><pre class=\"prism undefined-numbers lang-csharp\" data-file=\"Program.cs\" data-lang=\"C#\"><code>public class Program\n{\n\t\u30fb\u30fb\u30fb\n\tpublic static IHostBuilder CreateHostBuilder(string[] args) =&gt;\n\t    Host.CreateDefaultBuilder(args)\n\t        .UseSystemd()\n\t        .ConfigureServices((hostContext, services) =&gt;\n\t        {\n\t            services.AddHostedService&lt;Worker&gt;();\n\t        });\n<\/code><\/pre><\/div>\n\n\n\n<p>\u4ee5\u4e0b\u306e\u3088\u3046\u306aSystemd\u7528\u306e\u30b5\u30fc\u30d3\u30b9\u5b9a\u7fa9\u30d5\u30a1\u30a4\u30eb\u3092\u4f5c\u6210\u3002<\/p>\n\n\n\n<div class=\"hcb_wrap\"><pre class=\"prism undefined-numbers lang-plain\" data-file=\"\u30b5\u30fc\u30d3\u30b9\u5b9a\u7fa9\u30d5\u30a1\u30a4\u30eb\"><code>[Unit]\nDescription=Worker Test on Linux Systemd\n[Service]\nType=notify\nWorkingDirectory=&lt;\u4f5c\u696d\u30c7\u30a3\u30ec\u30af\u30c8\u30ea&gt;\nExecStart=\/usr\/bin\/dotnet &lt;DLL\u306ePATH&gt;\n[Install]\nWantedBy=multi-user.target<\/code><\/pre><\/div>\n\n\n\n<p>\u30b5\u30fc\u30d3\u30b9\u30bf\u30a4\u30d7\u3092notify\u3068\u3059\u308b\u3002<\/p>\n\n\n\n<p>\u5f8c\u306f\u3001systemctl\u3067\u30b5\u30fc\u30d3\u30b9\u3092\u767b\u9332\u3057\u3066\u3001\u8d77\u52d5\u30fb\u505c\u6b62\u304c\u53ef\u80fd\u3002<\/p>\n\n\n\n<div class=\"hcb_wrap\"><pre class=\"prism undefined-numbers lang-bash\" data-file=\"systemctl\" data-lang=\"Bash\"><code>systemctl enable &lt;\u30b5\u30fc\u30d3\u30b9\u540d&gt;.service\nsystemctl start &lt;\u30b5\u30fc\u30d3\u30b9\u540d&gt;\nsystemctl stop &lt;\u30b5\u30fc\u30d3\u30b9\u540d&gt;<\/code><\/pre><\/div>\n\n\n\n<p>\u5b9f\u969b\u306b\u52d5\u304b\u3057\u3066\u30ed\u30b0\u3092\u307f\u3066\u307f\u308b\u3068<\/p>\n\n\n\n<div class=\"hcb_wrap\"><pre class=\"prism undefined-numbers lang-plain\" data-file=\"syslog\"><code>MMM DD HH:mm:ss exodus-v12 systemd[1]: Starting Worker Test on Linux Systemd...\n\u30fb\u30fb\u30fb\nMMM dd HH:mm:ss exodus-v12 &lt;\u30b5\u30fc\u30d3\u30b9\u540d&gt;[nnnnn]: &lt;\u30d7\u30ed\u30b8\u30a7\u30af\u30c8\u540d&gt;.Worker[0] Worker running at: MM\/dd\/YYYY HH:mm:ss +09:00\nMMM dd HH:mm:ss exodus-v12 &lt;\u30b5\u30fc\u30d3\u30b9\u540d&gt;[nnnnn]: &lt;\u30d7\u30ed\u30b8\u30a7\u30af\u30c8\u540d&gt;.Worker[0] Worker running at: MM\/dd\/YYYY HH:mm:ss +09:00\nMMM dd HH:mm:ss exodus-v12 systemd[1]: Stopping Worker Test on Linux Systemd...\nMMM dd HH:mm:ss exodus-v12 &lt;\u30b5\u30fc\u30d3\u30b9\u540d&gt;[nnnnn]: Microsoft.Hosting.Lifetime[0] Application is shutting down...\nMMM dd HH:mm:ss exodus-v12 systemd[1]: &lt;\u30b5\u30fc\u30d3\u30b9\u540d&gt;.service: Succeeded.\nMMM dd HH:mm:ss exodus-v12 systemd[1]: Worker Test on Linux Systemd.<\/code><\/pre><\/div>\n\n\n\n<p>systemctl stop\u3092\u5b9f\u884c\u3057\u305f\u6642\u70b9\u3067worker\u30d7\u30ed\u30bb\u30b9\u306b\u901a\u77e5\u3055\u308c\u3066\u3044\u308b\u69d8\u5b50\u304c\u5206\u304b\u308b\u3002<\/p>\n\n\n\n<p>\u305f\u3060\u3057\u3001worker\u30b9\u30ec\u30c3\u30c9\u306e\u5b9f\u884c\u30d6\u30ed\u30c3\u30af\u30eb\u30fc\u30d7\u306e\u5f8c\u306b\u30ed\u30b0\u3092\u51fa\u529b\u3055\u305b\u3066\u3082\u3001\u305d\u306e\u30ed\u30b0\u304c\u51fa\u529b\u3055\u308c\u3066\u3044\u306a\u3044\u306e\u3067\u3001worker\u30b9\u30ec\u30c3\u30c9\u306e\u4e0a\u4f4d\u3067\u7d42\u4e86\u51e6\u7406\u3092\u884c\u3063\u3066\u3044\u308b\u3088\u3046\u306b\u601d\u3048\u308b\u3002<\/p>\n\n\n\n<p>\u3053\u306e\u8fba\u308a\u304b\u306a\uff1f<br><a href=\"https:\/\/docs.microsoft.com\/en-us\/dotnet\/core\/extensions\/generic-host\">https:\/\/docs.microsoft.com\/en-us\/dotnet\/core\/extensions\/generic-host<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Linux\u306esystemd\u3067worker\u30a2\u30d7\u30ea\u3092\u52d5\u304b\u3057\u3066\u3001systemctl\u30b3\u30de &hellip; <a href=\"https:\/\/sumomo.ohwaki.jp\/wordpress\/?p=382\">\u7d9a\u304d\u3092\u8aad\u3080 <span class=\"meta-nav\">&rarr;<\/span><\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[18,9,4],"tags":[],"class_list":["post-382","post","type-post","status-publish","format-standard","hentry","category-net","category-c","category-4"],"_links":{"self":[{"href":"https:\/\/sumomo.ohwaki.jp\/wordpress\/index.php?rest_route=\/wp\/v2\/posts\/382","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/sumomo.ohwaki.jp\/wordpress\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/sumomo.ohwaki.jp\/wordpress\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/sumomo.ohwaki.jp\/wordpress\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/sumomo.ohwaki.jp\/wordpress\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=382"}],"version-history":[{"count":4,"href":"https:\/\/sumomo.ohwaki.jp\/wordpress\/index.php?rest_route=\/wp\/v2\/posts\/382\/revisions"}],"predecessor-version":[{"id":450,"href":"https:\/\/sumomo.ohwaki.jp\/wordpress\/index.php?rest_route=\/wp\/v2\/posts\/382\/revisions\/450"}],"wp:attachment":[{"href":"https:\/\/sumomo.ohwaki.jp\/wordpress\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=382"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/sumomo.ohwaki.jp\/wordpress\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=382"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/sumomo.ohwaki.jp\/wordpress\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=382"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}