본문 바로가기
설치 및 기술 자료/Linux

[Linux] Microsoft.NET 개념 및 리눅스 런타임 환경 구성

by 주식회사 서버몬 2024. 12. 17.

안녕하세요. 주식회사 서버몬 입니다.

오늘은 Microsoft .NET 에 대해 알아보고 런타임 환경을 구성하는 방법에 대해서 알아 보겠습니다.

 

Microsoft .NET 이란?

Microsoft .NET은 마이크로소프트에서 개발한 소프트웨어 개발 프레임워크이자 플랫폼입니다.

.NET은 다양한 애플리케이션을 개발, 실행, 배포할 수 있도록 지원하며, 주로 윈도우 기반 애플리케이션을 위한 플랫폼이었지만 오픈소스로 전환한 이후 다양한 운영체제와 환경을 지원하는 범용 플랫폼이 되었습니다.

 

.NET 의 특징

  • 언어 독립적
    .NET은 여러 프로그래밍 언어를 지원합니다. 대표적으로 C#, VB.NET, F# 등이 있으며, 다른 언어도 사용 가능합니다.
  • 공통 언어 런타임 (CLR)
    .NET의 핵심인 **공통 언어 런타임 (Common Language Runtime, CLR)**은 프로그램 실행 시 코드의 컴파일, 메모리 관리, 오류 처리 등을 담당합니다. 이를 통해 다양한 언어로 작성된 프로그램을 동일한 런타임에서 실행할 수 있습니다.
  • 클래스 라이브러리 (Base Class Library, BCL)
    .NET은 표준 라이브러리를 제공하여 파일 관리, 네트워킹, 데이터베이스 접근, 그래픽 처리 등 다양한 기능을 제공합니다.
  • 크로스 플랫폼
    최신 버전인 .NET Core.NET 5/6/7/8은 Windows뿐만 아니라 Linux, macOS와 같은 다양한 운영체제에서도 실행될 수 있습니다.
  • 유연한 애플리케이션 개발
    • 데스크톱 애플리케이션 (WPF, Windows Forms)
    • 웹 애플리케이션 (ASP.NET, ASP.NET Core)
    • 모바일 애플리케이션 (Xamarin)
    • 클라우드 기반 애플리케이션 (Azure 통합)
    • IoT 및 게임 개발 (Unity 엔진 등과 통합)
  • 오픈 소스
    .NET Core 이후로 대부분의 .NET 플랫폼은 오픈 소스로 제공되며, 커뮤니티와 함께 발전하고 있습니다.

 

.NET 런타임 설치

 본 과정은 RHEL 배포판을 기준으로 합니다.

RHEL, Ubuntu 배포판은 공식적으로 .NET 을 지원하고 자체 .NET 패키지를 게시하고 있습니다.

별도의 추가 설정 없이 설치 가능합니다.

배포판 패키지 매니저로 설치

지원하는 버전
dotnet-sdk-8.0 
dotnet-sdk-9.0 

Redhat 배포판
dnf install -y dotnet-sdk-$(사용버전)

Ubuntu 배포판
apt install -y dotnet-sdk-8.0

ex)
dnf install -y dotnet-sdk-8.0
apt install -y dotnet-sdk-8.0

 

 

.NET 런타임 콘솔 앱 테스트

설치된 .NET 버전 확인
[root@dlp ~]# dotnet --version
9.0.101

테스트 프로젝트를 생성합니다
[root@dlp ~]# dotnet new console -o helloworld

.NET 9.0을(를) 시작합니다.
---------------------
SDK 버전: 9.0.101

----------------
ASP.NET Core HTTPS 개발 인증서를 설치했습니다.
인증서를 신뢰하려면 'dotnet dev-certs https --trust'를 실행하세요.
HTTPS에 관한 자세한 정보: https://aka.ms/dotnet-https

----------------
첫 번째 앱 작성: https://aka.ms/dotnet-hello-world
새로운 기능 확인: https://aka.ms/dotnet-whats-new
설명서 살펴보기: https://aka.ms/dotnet-docs
GitHub에서 문제 보고 및 소스 찾기: https://github.com/dotnet/core
사용 가능한 명령을 보려면 'dotnet --help'를 사용하거나 https://aka.ms/dotnet-cli를 방문하세요.
--------------------------------------------------------------------------------------
"콘솔 앱" 템플릿이 성공적으로 생성되었습니다.

생성 후 작업 처리 중...
/root/helloworld/helloworld.csproj 복원 중:
복원에 성공했습니다.

[root@dlp ~]# cd helloworld/
[root@dlp helloworld]# dotnet run
Hello, World!

 

.NET 런타임 ASP.NET 테스트

일반 사용자로 .NET 웹 을 만들어 보겠습니다.

host 사용자 추가
[root@dlp helloworld]# adduser host
[root@dlp helloworld]# passwd host
host 사용자의 비밀 번호 변경 중
새 암호:
새 암호 재입력:
passwd: 모든 인증 토큰이 성공적으로 업데이트 되었습니다.

host 사용자로 변경
[root@dlp helloworld]# su host
[host@dlp helloworld]$ cd /home/host/

ASP.NET 프로젝트 생성
[host@test1 ~]$ dotnet new razor -o asp.net
"ASP.NET Core 웹앱" 템플릿이 성공적으로 생성되었습니다.
이 템플릿에는 Microsoft 이외의 타사 기술이 포함되어 있습니다. 자세한 내용은https://aka.ms/aspnetcore/9.0-third-party-notices을(를) 참조하세요.

생성 후 작업 처리 중...
/home/host/asp.net/asp.net.csproj 복원 중:
복원에 성공했습니다.

[host@test1 ~]$ cd asp.net/
[host@test1 asp.net]$ dotnet run --urls=http://0.0.0.0:5000/

/home/host/asp.net/Properties/launchSettings.json의 시작 설정을 사용하는 중...
빌드하는 중...
warn: Microsoft.AspNetCore.DataProtection.KeyManagement.XmlKeyManager[35]
      No XML encryptor configured. Key {87cd9daf-32f2-40c1-8ca4-2ecdb6f6f696} may be persisted to storage in unencrypted form.
info: Microsoft.Hosting.Lifetime[14]
      Now listening on: http://0.0.0.0:5000
info: Microsoft.Hosting.Lifetime[0]
      Application started. Press Ctrl+C to shut down.
info: Microsoft.Hosting.Lifetime[0]
      Hosting environment: Development
info: Microsoft.Hosting.Lifetime[0]
      Content root path: /home/host/asp.net

 

웹 브라우저로 "http://서버 IP:5000" 으로 접속 합니다.

 

정상적으로 샘플 패이지가 표기 되는 것을 확인 할수 있습니다.

감사합니다.

1U서버 / 2U서버 / AI서버 / alyac / APC / APC UPS / backup / carepack / centos / chakramax / cuda / DAS / DB / DB서버 / defog / DEFOG랙 / dell5820 / dell5820t / dell7920 / dellpoweredge / dellr240 / dellr340 / dellr350 / dellr450 / dellr540 / dellr630 / dellr640 / dellr740 / dellr750 / dellserver / dellt40 / dellt440 / dellt5820 / dell서버 / DELL서버CPU / DELL서버RAID컨트롤러 / DELL서버SAS하드디스크 / DELL서버가격비교 / DELL서버가격비교견적 / DELL서버견적 / DELL서버구매 / DELL서버디스크교체 / DELL서버메모리 / dell서버서버몬 / DELL서버펌웨어 / DELL서버하드디스크구매 / dell옵션 / dell워크스테이션 / dl20 / dl20gen10 / dl20gen11 / dl360 / dl360gen10 / dl360gen11 / dl380 / dl380g10 / dl380gen10 / dl380gen11 / ECC메모리 / EDFOG랙가격 / embedded / est security / ESTSOFT / FIRMWARE / GPU / gpu서버 / gpu타워형서버 / greenlake / HA솔루션 / HP GPU / hp hdd / hpdl20 / HPDL20Gen10 / hpdl360 / hpdl360gen10 / hpdl380 / hpdl380g10 / HPDL380Gen10 / HPE / HPE GPU / hpe hdd / hpe rok / HPE Service Pack for Proliant / HPE SPP / hpe ssa / hpedl20 / hpedl20gen10 / hpedl360gen10 / hpe서버 / HPE서버CPU / HPE서버RAID컨트롤러 / HPE서버SAS하드디스크 / HPE서버가격비교 / HPE서버가격비교견적 / HPE서버견적 / HPE서버구매 / HPE서버드라이버설치 / HPE서버디스크교체 / HPE서버메모리 / HPE서버비용 / hpe서버소음 / HPE서버펌웨어 / HPE서버하드디스크구매 / hpe옵션 / hpe정품 / hpgen10 / hpml30 / hpserver / hpz2 / hpz4 / hpz4g4 / hpz6g4 / hpz8g4 / hp마이크로서버 / hp서버 / hp서버cto / hp서버pc / HP서버메모리 / hp서버소음 / hp서버컴퓨터 / HP서버파워 / HP서버펌웨어 / HP서버하드디스크 / hp옵션 / hp워크스테이션 / hp정품 / hp프로라이언트 / HYPER BACKUP / ibm서버 / ilo / Intelligent Provisioning / internetdisk / KVM / KVM 기술지원비(비용) / KVM 설치비 / L2스위치 / L3스위치 / LENONO서버SAS하드디스크 / lenovop620 / lenovor650 / LENOVO서버 / LENOVO서버CPU / LENOVO서버RAID컨트롤러 / LENOVO서버가격비교 / LENOVO서버가격비교견적 / LENOVO서버견적 / LENOVO서버구매 / LENOVO서버디스크교체 / LENOVO서버메모리 / LENOVO서버하드디스크구매 / LENOVO펌웨어업데이트 / Linux / ML30 / ml30gen10 / ml30gen11 / ML350GEN10 / ml350gen11 / ML360 / MS CSP / MSSQL / MSSQL 기술지원비(비용) / MSSQL 설치비 / MYSQL / MySQL 기술지원비(비용) / MySQL 설치비 / NAS / NVIDIA / Office 365 / oneview / orange / OS설치 / PA-410 / PA-440 / paloalto / poweredger740 / poweredger750 / precision5820 / QUADRO / r240 / r250 / r340 / r360 / r440 / r550 / r650 / r660 / r740 / r750xs / r760 / r760xs / RAID / redhat / RHEL설치 / RMS랙 / rocky / s100i / securedisk / server / serverpc / smart storage administrator / SPP / sql server / sr250 / sr650 / SYNOLOGY / SYNOLOGY나스 / t150 / t360 / UPS / UPS기술지원 / UPS납품 / UPS설치 / V3 / veeam / vroc / windows server / Windows서버설치 / XEON서버 / z8g4 / 가상서버 / 가성비서버 / 기술지원비(비용) / 나스기술지원 / 나스설치지원 / 네트워크스위치 / 네트워크장비 / 더블테이크 / 데이터베이스 / 델5820 / 델서버 / 델서버비용 / 델서버펌웨어업데이트 / 델옵션 / 델워크스테이션 / 델컴퓨터워크스테이션 / 디포그 / 디포그랙 / 디포그랙가격 / 딥러닝 / 딥러닝pc / 딥러닝서버 / 랙 / 랙(RACK) 기술지원비(비용) / 랙(RACK) 설치비 / 랙납품설치 / 랙설치 / 레노버p620 / 레노버서버 / 레노버워크스테이션 / 레노보서버 / 레노보서버펌웨어 / 레드헷설치 / 레이드 / 레이드구성 / 록키리눅스 / 리눅스 / 리눅스 기술지원비(비용) / 리눅스 설치비 / 리눅스서버 / 리눅스서버설치 / 리눅스서버트러블슈팅 / 리눅스트러블슈팅 / 문서보안 / 문서중앙화 / 미니서버 / 미니서버랙 / 미니서버렉 / 미디어서버 / 방화벽 / 방화벽 기술지원비(비용) / 방화벽 설치비 / 방화벽엔지니어 / 백업 / 백업 기술지원비(비용) / 백업 서버 / 백업서비스 / 백업솔루션 / 보안솔루션 / 보안솔루션구매 / 보안솔루션설치 / 보안툴 / 빔백업 / 샤크라맥스 / 서버 / 서버 기술지원비(비용) / 서 버 랙마운트비용 / 서버 설치비 / 서버 장애조치비용 / 서버CPU / 서버MEMORY / 서버OS설치 / 서버pc / 서버가격 / 서버가속기 / 서버견적 / 서버교체 / 서버구매 / 서버구입 / 서버구축 / 서버기술지원 / 서버납품 / 서버디스크장애처리 / 서버랙 / 서버렉 / 서버렉마운트 / 서버메모리 / 서버 몬 / 서버몬기술지원 / 서버백업 / 서버보안 / 서버부품 / 서버엔지니어 / 서버옵션 / 서버용GPU / 서버용PC / 서버용그래픽카드 / 서버용메모리 / 서버 / 컴퓨터 / 서버용하드디스크 / 서버재고 / 서버컴 / 서버컴퓨터 / 서버트러블슈팅 / 서버판매 / 서버하드 / 서버호스팅 / 스위치 / 스위치 기술지원비(비용) / 스위치 설치비 / 스토리지 / 스토리지 기술지원비(비용) / 스토리지 랙마운트비용 / 스토리지 설치비 / 스토리지 장애조치비용 / 스토리지납품설치 / 스토리지서버 / 시놀로지DS918 / 시놀로지HyperBackup / 시놀로지나스 / 시놀로지나스백업 / 시놀로지하이퍼백업 / 시큐어디스크 / 안랩 / 알약 / 앱서버 / 오피스 365 / 우분투설치 / 워크스테이션 / 워크스테이션pc / 워크스테이션컴퓨터 / 윈도우서버 / 윈도우서버2016 / 윈도우서버2019 / 윈도우서버2022 / 윈도우서버설치 / 윈도우서버컴퓨터 / 윈도우서버트러블슈팅 / 윈도우즈 기술지원비(비용) / 윈도우즈 설치비 / 이스트소프트 / 이스트 시큐리티 / 이중화솔루션 / 이중화솔루션구매 / 이중화솔루션설치 / 인터넷디스크 / 임베디드 / 저가서버 / 저렴한서버 / 정품서버 / 정품서버옵션 / 제온서버 / 젠서버 / 중고서버 / 중고워크스테이션 / 카보나이트 / 카스퍼스키 / 컴퓨터서버 / 케어팩 / 타워서버 / 타워형서버 / 팔로알토 / 페도라설치 / 프로라이언트

 

 

댓글