วิธีการปรับใช้. NET Core Web Application บน CentOS 7

.NET Core เป็นเฟรมเวิร์กการพัฒนาข้ามแพลตฟอร์มแบบโอเพ่นซอร์สที่ออกแบบใหม่ซึ่งดูแลโดย Microsoft และชุมชน. NET ที่กำลังเติบโต ด้วยความช่วยเหลือของ. NET Core ทำให้นักพัฒนาสามารถสร้างแอพพลิเคชั่นประสิทธิภาพสูงที่ทันสมัยบนแพลตฟอร์มทุกประเภทได้อย่างง่ายดาย

ในบทความนี้ฉันจะแสดงวิธีการติดตั้ง. NET Core บนอินสแตนซ์เซิร์ฟเวอร์ CentOS 7 จากนั้นปรับใช้เว็บแอปพลิเคชั่น. NET Core แบบเต็ม

ข้อกำหนดเบื้องต้น

เพิ่ม. NET ผลิตภัณฑ์ฟีดไปยังระบบ

ในฐานะที่เป็นกรอบการพัฒนาข้ามแพลตฟอร์ม. NET Core มีไบนารีที่รวบรวมไว้ล่วงหน้าสำหรับระบบปฏิบัติการต่างๆ บน CentOS 7 คุณสามารถตั้งค่า repo. NET. NET YUM อย่างเป็นทางการโดยการเรียกใช้คำสั่งต่อไปนี้ในฐานะผู้ใช้ sudo:

sudo rpm --import https://packages.microsoft.com/keys/microsoft.asc
sudo sh -c 'echo -e "[packages-microsoft-com-prod]\nname=packages-microsoft-com-prod \nbaseurl= https://packages.microsoft.com/yumrepos/microsoft-rhel7.3-prod\nenabled=1\ngpgcheck=1\ngpgkey=https://packages.microsoft.com/keys/microsoft.asc" > /etc/yum.repos.d/dotnetdev.repo'

ติดตั้ง. SDK SDK ล่าสุดโดยใช้ YUM

มี repo. NET YUM ในสถานที่ติดตั้ง. SDK SDK ล่าสุดรวมถึง. NET Core และการพึ่งพาอื่น ๆ บนเครื่องของคุณ:

sudo yum update -y
sudo yum install libunwind libicu -y
sudo yum install dotnet-sdk-2.1.4 -y

ในการยืนยันผลลัพธ์คุณสามารถสร้างและเรียกใช้แอป. NET Core "เดโม่ฮัลโหล":

cd
dotnet new console -o helloworldApp
cd helloworldApp
dotnet run

dotnet new console -o helloworldAppคำสั่งจะสร้างไดเรกทอรีชื่อhelloworldAppในไดเรกทอรีบ้านของคุณและจากนั้นใช้consoleแม่แบบในการสร้างแอพพลิเคไฟล์ในไดเรกทอรีที่สร้างขึ้นใหม่

เมื่อดำเนินการdotnet runคำสั่งคุณจะเห็นHello World!ข้อความในคอนโซล

สร้างเว็บแอป. NET Core

ตอนนี้สร้างและเรียกใช้โปรแกรมประยุกต์ .NET razorหลักของประเภท เพียงจำไว้ว่า "Razor Pages" เป็นเทมเพลตแอปพลิเคชั่นใหม่ของ. NET Core MVC ที่ออกแบบมาสำหรับสถานการณ์เชิงหน้า:

cd
dotnet new razor -o myfirstwebapp
cd myfirstwebapp
dotnet run

โดยการดำเนินการdotnet runคำสั่งข้างต้นคุณจะเริ่มต้น .NET http://localhost:5000คอร์เว็บแอปฟังเมื่อ:

หากคุณต้องการยืนยันว่าแอปพลิเคชันเว็บเปิดใช้งานแล้วแม้ว่าจะอยู่ในอินสแตนซ์ของเซิร์ฟเวอร์ที่ไม่มี GUI คุณยังสามารถเปิดคอนโซลเทอร์มินัลใหม่และอินพุตcurl http://localhost:5000เพื่อดูซอร์สโค้ดของหน้าแรกของเว็บแอป

หลังจากนั้นคุณสามารถกดCTRL+ Cเพื่อปิด. NET Core เว็บแอป

ในการทำให้แอปพลิเคชันเว็บของคุณเป็นจริงคุณต้องแก้ไขไฟล์ภายในไดเรกทอรีแอป คุณสามารถเรียนรู้รายละเอียดเพิ่มเติมอย่างเป็นทางการในหน้าเอกสาร .NET

เมื่อทำภารกิจการพัฒนาทั้งหมดเรียบร้อยแล้วคุณสามารถใช้คำสั่งต่อไปนี้เพื่อเผยแพร่แอปพลิเคชันเว็บของคุณ:

cd ~/myfirstwebapp
dotnet publish

คุณสามารถค้นหาเว็บแอปที่เผยแพร่ใน~/myfirstwebapp/bin/Debug/netcoreapp2.0ไดเรกทอรี

(ไม่บังคับ): ติดตั้ง Supervisor เพื่อให้แอปพลิเคชัน. NET Core บนเว็บของคุณออนไลน์

กระบวนการขัดข้องเกิดขึ้น เพื่อให้เว็บแอปของคุณออนไลน์เป็นความคิดที่ดีที่จะมีเครื่องมือการจัดการกระบวนการเช่นหัวหน้างานเพื่อตรวจสอบและเริ่มต้นกระบวนการแอปพลิเคชันเว็บที่เสียหาย

บน CentOS 7 คุณสามารถติดตั้ง Supervisor โดยใช้ YUM:

sudo yum install supervisor -y

ถัดไปคุณต้องตั้งค่าไฟล์กำหนดค่าผู้ดูแลเฉพาะสำหรับแอปพลิเคชันเว็บของคุณ:

cd /etc/supervisord.d
sudo vi myfirstwebapp.conf

เติมไฟล์:

[program:myfirstwebapp]
command=dotnet myfirstwebapp.dll
directory=/home/sudouser/myfirstwebapp/bin/Debug/netcoreapp2.0/
environment=ASPNETCORE__ENVIRONMENT=Production
user=root
stopsignal=INT
autostart=true
autorestart=true
startsecs=1
stderr_logfile=/var/log/myfirstwebapp.err.log
stdout_logfile=/var/log/myfirstwebapp.out.log

บันทึกและออก:

:wq!

ต่อไปคุณต้องแก้ไขsupervisordไฟล์กำหนดค่าเริ่มต้นเพื่อรวมไฟล์กำหนดค่าที่เราสร้างขึ้น:

sudo cp /etc/supervisord.conf /etc/supervisord.conf.bak
sudo vi /etc/supervisord.conf

ค้นหาบรรทัดสุดท้าย:

files = supervisord.d/*.ini

แทนที่:

files = supervisord.d/*.conf

บันทึกและออก:

:wq!

เริ่มต้นหัวหน้างานและตั้งค่าให้เริ่มโดยอัตโนมัติเมื่อเริ่มต้นระบบ:

sudo systemctl start supervisord.service
sudo systemctl enable supervisord.service

โหลดการตั้งค่าหัวหน้างานใหม่:

sudo supervisorctl reread
sudo supervisorctl update

ตอนนี้คุณสามารถใช้คำสั่งต่อไปนี้เพื่อแสดงสถานะของแอพ:

sudo supervisorctl status

ผลลัพธ์จะมีลักษณะดังต่อไปนี้:

myfirstwebapp                    RUNNING   pid 3925, uptime 0:08:45

ถัดไปคุณสามารถลองฆ่ากระบวนการของแอพด้วยการระบุ pid 3925:

sudo kill -s 9 3925

รอสักครู่แล้วตรวจสอบสถานะอีกครั้ง:

sudo supervisorctl status

เวลานี้ผลลัพธ์จะบ่งบอกว่าแอปพังและเริ่มต้นโดยอัตโนมัติ:

myfirstwebapp                    RUNNING   pid 3925, uptime 0:00:06

(ไม่บังคับ): ติดตั้ง Nginx เป็นพร็อกซีย้อนกลับ

เพื่อความสะดวกในการเข้าถึงของผู้เข้าชมคุณสามารถติดตั้ง Nginx เป็น proxy 5000ย้อนกลับที่จะผ่านเข้าชมเว็บในพอร์ต

ติดตั้ง Nginx โดยใช้ YUM:

sudo yum install nginx -y

แก้ไขไฟล์กำหนดค่า Nginx เริ่มต้นดังนี้:

sudo cp /etc/nginx/nginx.conf /etc/nginx/nginx.conf.bak
sudo vi /etc/nginx/nginx.conf

ค้นหากลุ่มต่อไปนี้ภายในhttp {}กลุ่ม:

location / {
}

แทรกการตั้งค่าพร็อกซีย้อนกลับหกบรรทัดระหว่างวงเล็บปีกกาดังแสดงด้านล่าง:

location / {
proxy_pass http://127.0.0.1:5000;
proxy_redirect off;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
}

บันทึกและออก:

:wq!

เริ่มบริการ Nginx จากนั้นตั้งค่าให้เริ่มเมื่อเริ่มต้นระบบ:

sudo systemctl start nginx.service
sudo systemctl enable nginx.service

ตั้งค่ากฎไฟร์วอลล์

ก่อนที่ผู้เยี่ยมชมจะสามารถเข้าถึง. เว็บแอปพลิเคชัน. NET Core บนพอร์ต80และ443คุณต้องแก้ไขกฎไฟร์วอลล์ดังที่แสดงด้านล่าง:

sudo firewall-cmd --zone=public --permanent --add-service=http
sudo firewall-cmd --zone=public --permanent --add-service=https
sudo firewall-cmd --reload

การตั้งค่าแอปพลิเคชันเสร็จสมบูรณ์ ขณะนี้คุณพร้อมที่จะเรียกดูเว็บแอปพลิเค .NET http://203.0.113.1หลักของคุณที่



Leave a Comment

วิธีการติดตั้ง Directus 6.4 CMS บน CentOS 7 LAMP VPS

วิธีการติดตั้ง Directus 6.4 CMS บน CentOS 7 LAMP VPS

เรียนรู้วิธีการติดตั้ง Directus 6.4 CMS บน CentOS 7; ระบบการจัดการเนื้อหา Headless ที่มีความยืดหยุ่นสูงและปลอดภัย

การติดตั้ง Pagekit CMS บน CentOS 7

การติดตั้ง Pagekit CMS บน CentOS 7

ใช้ระบบที่แตกต่างกันอย่างไร Pagekit เป็น CMS โอเพนซอร์สที่เขียนด้วย PHP ซอร์สโค้ดของ Pagekit นั้นโฮสต์บน GitHub คำแนะนำนี้จะแสดงให้คุณเห็นว่า

วิธีการติดตั้ง TestLink บน CentOS 7

วิธีการติดตั้ง TestLink บน CentOS 7

TestLink เป็นระบบดำเนินการจัดการทดสอบบนเว็บโอเพ่นซอร์ส ช่วยให้ทีมงานประกันคุณภาพสามารถสร้างและจัดการกรณีทดสอบได้เช่นกัน

วิธีการที่ปลอดภัย vsFTPd ด้วย SSL / TLS

วิธีการที่ปลอดภัย vsFTPd ด้วย SSL / TLS

FTP ที่ปลอดภัยมากหรือเพียงแค่ vsFTPd เป็นซอฟต์แวร์น้ำหนักเบาที่มีความสามารถในการปรับแต่ง ในบทช่วยสอนนี้เราจะรักษาความปลอดภัยของข้อความ

วิธีการติดตั้ง GCC บน CentOS 6

วิธีการติดตั้ง GCC บน CentOS 6

CentOS ติดตามการพัฒนา Red Hat Enterprise Linux (RHEL) RHEL พยายามที่จะเป็นแพลตฟอร์มเซิร์ฟเวอร์ที่มั่นคงซึ่งหมายความว่าจะไม่รีบเร่งในการรวม

ตั้งค่าบัญชีผู้ใช้ SFTP เท่านั้นบน CentOS 7

ตั้งค่าบัญชีผู้ใช้ SFTP เท่านั้นบน CentOS 7

ในบางโอกาสผู้ดูแลระบบอาจต้องสร้างบัญชีผู้ใช้และ จำกัด การเข้าถึงเพื่อจัดการไฟล์ของตัวเองผ่าน sFTP เท่านั้น

วิธีการติดตั้ง Moodle บน CentOS 7

วิธีการติดตั้ง Moodle บน CentOS 7

ใช้ระบบที่แตกต่างกันอย่างไร Moodle เป็นแพลตฟอร์มการเรียนรู้โอเพนซอร์ซหรือระบบจัดการหลักสูตร (CMS) - ชุดซอฟต์แวร์โอเพ่นซอร์สฟรีที่ออกแบบมาเพื่อช่วย

ติดตั้ง NGINX พร้อม ModSecurity บน CentOS 6

ติดตั้ง NGINX พร้อม ModSecurity บน CentOS 6

ในบทความนี้ฉันจะอธิบายวิธีสร้าง LEMP สแต็คที่ได้รับการป้องกันโดย ModSecurity ModSecurity เป็นไฟร์วอลล์เว็บแอพพลิเคชันแบบโอเพนซอร์สที่มีประโยชน์

วิธีการติดตั้ง Apache, MySQL และ PHP บน CentOS 6

วิธีการติดตั้ง Apache, MySQL และ PHP บน CentOS 6

Introduction LAMP เป็นคำย่อที่ย่อมาจาก Linux, Apache, MySQL และ PHP ซอฟต์แวร์นี้เป็นโซลูชันโอเพ่นซอร์สที่ได้รับความนิยมสูงสุดสำหรับการติดตั้ง o

การปรับเปลี่ยน Icinga2 ให้ใช้โมเดลต้นแบบ / ไคลเอ็นต์บน CentOS 6 หรือ CentOS 7

การปรับเปลี่ยน Icinga2 ให้ใช้โมเดลต้นแบบ / ไคลเอ็นต์บน CentOS 6 หรือ CentOS 7

Icinga2 เป็นระบบการตรวจสอบที่มีประสิทธิภาพและเมื่อใช้ในโมเดลลูกค้าหลักจะสามารถแทนที่ความต้องการการตรวจสอบที่อิง NRPE ปรมาจารย์

การติดตั้ง Netdata บน CentOS 7

การติดตั้ง Netdata บน CentOS 7

ใช้ระบบที่แตกต่างกันอย่างไร Netdata เป็นดาวรุ่งพุ่งแรงในด้านการติดตามการวัดในระบบแบบเรียลไทม์ เมื่อเปรียบเทียบกับเครื่องมือชนิดเดียวกัน Netdata:

วิธีการติดตั้งและกำหนดค่า Buildbot บน CentOS 7

วิธีการติดตั้งและกำหนดค่า Buildbot บน CentOS 7

Buildbot เป็นโอเพ่นซอร์สเครื่องมือที่ใช้การรวมอย่างต่อเนื่องของ Python สำหรับการสร้างซอฟต์แวร์การทดสอบและการปรับใช้โดยอัตโนมัติ Buildbot ประกอบด้วยหนึ่งหรือหมอ

ติดตั้งเซิร์ฟเวอร์มัลติเพลเยอร์ SA-MP San Andreas บน CentOS 6

ติดตั้งเซิร์ฟเวอร์มัลติเพลเยอร์ SA-MP San Andreas บน CentOS 6

ยินดีต้อนรับสู่การกวดวิชา Vultr อื่น ที่นี่คุณจะได้เรียนรู้วิธีการติดตั้งและเรียกใช้เซิร์ฟเวอร์ SAMP คู่มือนี้เขียนขึ้นสำหรับ CentOS 6 ข้อกำหนดเบื้องต้นคุณจะต้อง

ติดตั้ง dotProject บน CentOS 7

ติดตั้ง dotProject บน CentOS 7

แอปพลิเคชั่น dotProject เป็นเครื่องมือการจัดการโครงการแบบโอเพ่นซอร์สบนเว็บ สำหรับตอนนี้มันวางจำหน่ายภายใต้ GPL ดังนั้นคุณสามารถปรับใช้และใช้งานได้บนบริการของคุณ

ติดตั้ง TaskServer (taskd) บน CentOS 7

ติดตั้ง TaskServer (taskd) บน CentOS 7

ใช้ระบบที่แตกต่างกันอย่างไร TaskWarrior เป็นเครื่องมือจัดการเวลาแบบโอเพ่นซอร์สที่เป็นการปรับปรุงแอพพลิเคชั่น Todo.txt และโคลนของมัน เนื่องมาจาก

วิธีการติดตั้ง Selfoss RSS Reader บน CentOS 7 LAMP VPS

วิธีการติดตั้ง Selfoss RSS Reader บน CentOS 7 LAMP VPS

ใช้ระบบที่แตกต่างกันอย่างไร Selfoss RSS Reader เป็นฟรีและเปิดตัวเองบนเว็บโฮสต์อเนกประสงค์, สตรีมสด, ตอบโต้กับผู้ใช้ได้, ฟีดข่าว (RSS / Atom) reade

วิธีการติดตั้ง Kanboard บน CentOS 7

วิธีการติดตั้ง Kanboard บน CentOS 7

ใช้ระบบที่แตกต่างกันอย่างไร Kanboard เป็นซอฟต์แวร์ซอฟต์แวร์การจัดการโครงการโอเพ่นซอร์สฟรีที่ออกแบบมาเพื่ออำนวยความสะดวกและมองเห็นภาพการทำงานเป็นทีม

การตั้งค่าเซิร์ฟเวอร์ Half Life 2 บน CentOS 6

การตั้งค่าเซิร์ฟเวอร์ Half Life 2 บน CentOS 6

บทช่วยสอนนี้จะกล่าวถึงกระบวนการติดตั้งเซิร์ฟเวอร์เกม Half Life 2 บนระบบ CentOS 6 ขั้นตอนที่ 1: การติดตั้งข้อกำหนดเบื้องต้นเพื่อตั้งค่า ou

ไดรฟ์ที่แชร์ความพร้อมใช้งานสูงใช้ Vultr Block Storage และ GlusterFS

ไดรฟ์ที่แชร์ความพร้อมใช้งานสูงใช้ Vultr Block Storage และ GlusterFS

GlusterFS เป็นระบบไฟล์ที่เชื่อมต่อกับเครือข่ายซึ่งช่วยให้คุณแบ่งปันไดรฟ์สองตัวในอุปกรณ์หลายตัวบนเครือข่ายได้อย่างมีประสิทธิภาพ ระบบไฟล์นี้คือ

วิธีโยกย้ายกล่องจดหมายอย่างง่ายดายด้วย Imapsync บน CentOS 7

วิธีโยกย้ายกล่องจดหมายอย่างง่ายดายด้วย Imapsync บน CentOS 7

ใช้ระบบที่แตกต่างกันอย่างไร ในขณะที่การโยกย้ายเว็บไซต์มักจะไม่มีปัญหาบางครั้งก็ยากที่จะโยกย้ายกล่องอีเมล นี่คือ CAS โดยเฉพาะอย่างยิ่ง

วิธีการติดตั้ง Directus 6.4 CMS บน CentOS 7 LAMP VPS

วิธีการติดตั้ง Directus 6.4 CMS บน CentOS 7 LAMP VPS

เรียนรู้วิธีการติดตั้ง Directus 6.4 CMS บน CentOS 7; ระบบการจัดการเนื้อหา Headless ที่มีความยืดหยุ่นสูงและปลอดภัย

ตั้งค่า Nginx บน Ubuntu เพื่อสตรีมวิดีโอสด HLS

ตั้งค่า Nginx บน Ubuntu เพื่อสตรีมวิดีโอสด HLS

เรียนรู้วิธีการตั้งค่า Nginx บน Ubuntu สำหรับการสตรีมวิดีโอสด HLS ด้วยคำแนะนำที่ชัดเจนและเป็นประโยชน์

การสำรองข้อมูลยอดนิยมด้วย Percona XtraBackup บนแอพ WordPress แบบคลิกเดียว

การสำรองข้อมูลยอดนิยมด้วย Percona XtraBackup บนแอพ WordPress แบบคลิกเดียว

เรียนรู้การใช้ Percona XtraBackup สำหรับการสำรองข้อมูลด้วยวิธีที่เป็นระบบและง่ายดายบน WordPress ออนไลน์ของคุณ

ReactOS: นี่คืออนาคตของ Windows หรือไม่?

ReactOS: นี่คืออนาคตของ Windows หรือไม่?

ReactOS ซึ่งเป็นโอเพ่นซอร์สและระบบปฏิบัติการฟรีพร้อมเวอร์ชันล่าสุดแล้ว สามารถตอบสนองความต้องการของผู้ใช้ Windows ยุคใหม่และล้ม Microsoft ได้หรือไม่? มาหาข้อมูลเพิ่มเติมเกี่ยวกับรูปแบบเก่านี้ แต่เป็นประสบการณ์ OS ที่ใหม่กว่ากัน

AI สามารถต่อสู้กับการโจมตีของแรนซัมแวร์ที่เพิ่มขึ้นได้หรือไม่

AI สามารถต่อสู้กับการโจมตีของแรนซัมแวร์ที่เพิ่มขึ้นได้หรือไม่

การโจมตีของ Ransomware กำลังเพิ่มขึ้น แต่ AI สามารถช่วยจัดการกับไวรัสคอมพิวเตอร์ตัวล่าสุดได้หรือไม่? AI คือคำตอบ? อ่านที่นี่รู้ว่า AI boone หรือ bane

เชื่อมต่อผ่าน WhatsApp Desktop App 24*7

เชื่อมต่อผ่าน WhatsApp Desktop App 24*7

ในที่สุด Whatsapp ก็เปิดตัวแอพเดสก์ท็อปสำหรับผู้ใช้ Mac และ Windows ตอนนี้คุณสามารถเข้าถึง Whatsapp จาก Windows หรือ Mac ได้อย่างง่ายดาย ใช้ได้กับ Windows 8+ และ Mac OS 10.9+

AI จะนำกระบวนการอัตโนมัติไปสู่อีกระดับได้อย่างไร

AI จะนำกระบวนการอัตโนมัติไปสู่อีกระดับได้อย่างไร

อ่านข้อมูลนี้เพื่อทราบว่าปัญญาประดิษฐ์กำลังได้รับความนิยมในหมู่บริษัทขนาดเล็กอย่างไร และเพิ่มโอกาสในการทำให้พวกเขาเติบโตและทำให้คู่แข่งได้เปรียบ

การอัปเดตเสริม macOS Catalina 10.15.4 ทำให้เกิดปัญหามากกว่าการแก้ปัญหา

การอัปเดตเสริม macOS Catalina 10.15.4 ทำให้เกิดปัญหามากกว่าการแก้ปัญหา

เมื่อเร็ว ๆ นี้ Apple เปิดตัว macOS Catalina 10.15.4 การอัปเดตเสริมเพื่อแก้ไขปัญหา แต่ดูเหมือนว่าการอัปเดตทำให้เกิดปัญหามากขึ้นที่นำไปสู่การสร้างเครื่อง Mac อ่านบทความนี้เพื่อเรียนรู้เพิ่มเติม

13 เครื่องมือดึงข้อมูลเชิงพาณิชย์ของ Big Data

13 เครื่องมือดึงข้อมูลเชิงพาณิชย์ของ Big Data

13 เครื่องมือดึงข้อมูลเชิงพาณิชย์ของ Big Data

ระบบไฟล์บันทึกคืออะไรและทำงานอย่างไร

ระบบไฟล์บันทึกคืออะไรและทำงานอย่างไร

คอมพิวเตอร์ของเราจัดเก็บข้อมูลทั้งหมดในลักษณะที่เรียกว่าระบบไฟล์บันทึก เป็นวิธีการที่มีประสิทธิภาพที่ช่วยให้คอมพิวเตอร์สามารถค้นหาและแสดงไฟล์ได้ทันทีที่คุณกดค้นหาhttps://wethegeek.com/?p=94116&preview=true