IRONSOFTWAREHOME
개발자 업데이트

tye .NET (개발자를 위한 작동 방식)

제이콥 멜러, 팀 아이언 최고기술책임자
Jacob Mellor
Updated: 2026년 4월 23일

현대 소프트웨어 개발 환경에서, 분산 애플리케이션을 구축하고 배포하는 것은 복잡하고 도전적일 수 있습니다. 여러 서비스, 종속성, 배포 환경을 관리하는 것은 종종 상당한 노력과 조율이 필요합니다. 이러한 도전 과제를 해결하기 위해, Microsoft는 .NET 애플리케이션의 개발, 테스트, 배포를 간소화하기 위한 개발자 도구인 Project Tye를 도입했습니다. 이 기사에서는 Tye의 세계에 대해 자세히 알아보고, .NET 개발자들에게 유용한 기능, 이점, 실용적인 응용 프로그램을 탐험할 것입니다. 또한 IronPDF, Iron Software의 PDF 생성 라이브러리를 배우고, 실용적 예제에서 TyeIronPDF를 사용할 것입니다.

Project Tye .NET 이해하기

Tye는 최소한의 설정으로 .NET 프로젝트 애플리케이션의 빌드, 테스트, 배포 프로세스를 간소화하는 오픈 소스 실험적 개발자 도구입니다. Microsoft 엔지니어링 팀에 의해 개발된 Tye는 마이크로서비스와 그 종속성을 관리하는 일관된, 의견이 강한 접근 방식을 통해 개발 워크플로를 간소화하는 것을 목표로 합니다. Tye는 기본적으로 컨테이너화, 오케스트레이션 및 개발자 생산성을 원칙으로 하여 원활한 애플리케이션 개발 및 배포를 가능하게 합니다.

Tye .NET의 주요 기능

1. 서비스 탐색 및 종속성 관리

Tye는 .NET 애플리케이션 내의 서비스 간의 종속성을 자동으로 감지하고 관리합니다. 프로젝트 메타데이터와 Docker 컨테이너를 활용하여 서비스 관계를 추론하여, 마이크로서비스 간의 통신과 오케스트레이션을 더 쉽게 조율할 수 있습니다. 이로 인해 다중 프로젝트와 함께 마이크로서비스를 개발하는 것이 더 쉬워집니다.

2. 통합 개발 경험

Tye는 Visual Studio 및 Visual Studio Code와 원활하게 통합되어, .NET 개발자에게 친숙한 개발 환경을 제공합니다. 디버깅, 로깅, 애플리케이션 구성 요소 모니터링 도구를 제공하여 개발 중 빠른 반복과 문제 해결을 가능하게 합니다.

3. Docker 컨테이너화

Tye는 .NET 애플리케이션 배포 단위로 Docker 컨테이너를 사용합니다. 자동으로 각 서비스에 대한 Dockerfile을 프로젝트 구성에 기반하여 생성하여 개발 및 프로덕션 환경 전반에서 일관성과 재현 가능한 컨테이너 빌드를 용이하게 하며, 마이크로서비스의 테스트 및 배포를 쉽게 만듭니다.

4. 로컬 개발 환경

Tye는 단일 환경 내에서 종속성과 서비스를 조정하여 로컬 개발을 단순화합니다. 개발자는 단일 명령으로 전체 애플리케이션 스택을 구동할 수 있으며, 이를 통해 종속성의 수동 설정 및 구성이 필요 없습니다.

5. Kubernetes로 배포

Tye는 .NET 애플리케이션을 Kubernetes 클러스터로 배포할 수 있는 내장 지원을 제공합니다. 프로젝트 사양에 기반하여 Kubernetes 매니페스트와 Helm 차트를 생성함으로써 배포 프로세스를 간소화하고 클라우드 네이티브 환경에서 컨테이너 조정의 모범 사례를 촉진합니다.

6. 모니터링 및 관찰 가능성

Tye는 Prometheus와 Grafana와 같은 인기 있는 관찰 도구와 통합하여 애플리케이션 성능 및 상태에 대한 통찰력을 제공합니다. 애플리케이션 구성 요소에서 메트릭과 로그를 공개하여 개발자가 리소스 활용을 모니터링하고 목이 좁은 부분을 식별하며 실시간으로 문제를 진단할 수 있게 합니다.

Tye의 실용적인 애플리케이션

Tye가 .NET 애플리케이션 개발 및 배포를 간소화할 수 있는 몇 가지 실용적인 시나리오를 탐색해 봅시다:

1. 로컬 개발 환경

# Start Tye in local development mode with the tye run command
tye run
SHELL

2. Docker 컨테이너화

# Build Docker images for Tye services with the available solution file
tye build
SHELL

3. Kubernetes로 배포

# Deploy Tye application to Kubernetes cluster 
tye deploy --interactive # deploy microservices and distributed applications
SHELL

Tye 시작하기

Tye 시작하기:

  1. 머신에 .NET Core 3.1 (높은 버전 지원 안 함)을 설치합니다.

  2. 다음을 사용하여 Tye를 전역 도구로 설치합니다:

dotnet tool install -g Microsoft.Tye --version "0.2.0-alpha.20258.3"
SHELL
  1. 마이크로서비스를 위한 새 폴더를 만듭니다.

  2. 폴더로 이동하여 프론트엔드 프로젝트를 만듭니다 (예: Razor Pages):

mkdir microservices
cd microservices
dotnet new razor -n frontend  # frontend service
SHELL
  1. 프론트엔드 프로젝트를 실행하여 Tye 대시보드를 시작합니다:
tye run frontend  # run frontend project
SHELL

이것은 프론트엔드 애플리케이션을 빌드, 실행, 모니터링하게 됩니다. 서비스의 상태를 보기 위해 http://localhost:8000 Tye 대시보드에 접근할 수 있습니다.

Tye의 구성 스키마

Tye는 설정의 사용자 지정을 허용하는 선택적 구성 파일 tye.yaml를 가지고 있습니다. 이 YAML 파일에는 모든 프로젝트와 외부 종속성이 포함되어 있습니다. 기존 솔루션이 있는 경우, Tye는 자동으로 현재 프로젝트를 모두 포함시킵니다.

이 YAML 파일을 초기화하려면 마이크로서비스 디렉토리로 이동하여 기본 tye.yaml 파일을 생성하는 다음 명령어를 실행하세요:

tye init
SHELL

tye.yaml 파일이 아래에 표시된 대로 생성됩니다:

name: myawesomeapplication
services:
- name: backendtest
  project: backend/backend.csproj
  bindings:
  - port: 7000
- name: frontendtest
  project: frontend/frontend.csproj
  replicas: 2
  bindings:
  - port: 8000
- name: workertest
  project: worker/worker.csproj
- name: rabbit
  image: rabbitmq:3-management
  bindings:
    - port: 5672
      protocol: rabbitmq
Text

Tye 사용의 장점

  1. 단순화된 개발 워크플로우: Tye는 로컬에서 .NET 애플리케이션을 빌드, 테스트, 디버깅하기 위한 통합 도구 세트를 제공하여 개발 워크플로우를 단순화합니다.
  2. 시장 출시 시간 단축: 서비스 검색, 종속성 관리 및 컨테이너화와 같은 일반적인 작업을 자동화하여 Tye는 프로덕션 환경에 애플리케이션을 배포하는 데 필요한 시간과 노력을 줄입니다.
  3. 향상된 협업: Tye는 애플리케이션 종속성 및 배포 구성을 관리하기 위한 공통 플랫폼을 제공하여 개발, 운영, DevOps 팀 간의 협업을 촉진합니다.
  4. 클라우드 네이티브 준비: Tye는 .NET 애플리케이션이 Kubernetes와 같은 클라우드 네이티브 환경에서 실행될 수 있도록 필요한 도구와 실습을 제공하여 조직이 현대적 인프라 패러다임을 신뢰를 갖고 수용할 수 있도록 합니다.
  5. 커뮤니티 지원 및 기여: Microsoft가 지원하는 오픈소스 프로젝트로, Tye는 활발한 기여자 및 사용자 커뮤니티로부터 이점을 얻으며, 이들은 그 개발, 문서화 및 생태계에 적극적으로 기여합니다.

Project Tye 라이센스

Project Tye는 MIT 라이센스로 제공되며 개발 및 상업적 목적으로 무료로 사용할 수 있습니다.

IronPDF 소개합니다

tye .NET (개발자를 위한 작동 방식): 그림 1 - IronPDF for .NET: C# PDF 라이브러리

IronPDF는 HTML, CSS, 이미지 및 JavaScript에서 PDF 생성, 편집 및 서명을 위한 강력한 C# 라이브러리입니다. 이 제품은 낮은 메모리 사용량으로 상업용 수준의 성능을 제공합니다.

IronPDF 의 주요 기능

1. HTML을 PDF로 변환

HTML 파일, HTML 문자열 및 URL을 PDF로 변환합니다. 예를 들어, Chrome PDF 렌더러를 사용하여 웹페이지를 PDF로 렌더링할 수 있습니다.

2. 크로스 플랫폼 지원

.NET Core, .NET Standard, .NET Framework 등 다양한 .NET 플랫폼과 호환됩니다. 이 프로그램은 윈도우, 리눅스, macOS를 지원합니다.

3. 편집 및 서명

속성을 설정하고, 암호 및 권한으로 보안을 강화하고, PDF에 디지털 서명을 적용하세요.

4. 페이지 템플릿 및 설정

머리글, 바닥글, 페이지 번호 및 조정 가능한 여백을 사용하여 PDF를 사용자 지정하세요. 반응형 레이아웃과 사용자 지정 용지 크기를 지원합니다.

5. 표준 준수

PDF/A 및 PDF/UA와 같은 PDF 표준을 준수합니다. UTF-8 문자 인코딩을 지원하며 이미지, CSS, 글꼴과 같은 자산을 처리합니다.

이제 이 두 라이브러리를 사용한 실용적인 예제를 봅시다.

IronPDF 및 Tye를 사용하여 PDF 문서 생성 실행

먼저, Visual Studio Razor 애플리케이션을 생성해 보겠습니다. Visual Studio를 열고 새 프로젝트를 생성하고 아래와 같이 Razor 앱을 선택합니다.

tye .NET (개발자를 위한 작동 방식): 그림 2 - Visual Studio를 열어 새 ASP.NET Core Web App (Razor Pages)을 만듭니다.

프로젝트 이름과 위치를 제공합니다.

tye .NET (개발자를 위한 작동 방식): 그림 3 - 프로젝트 이름 및 위치를 지정하여 프로젝트를 구성합니다. 그런 다음 '다음'을 클릭하세요.

다음 단계에서 .NET Framework 버전을 선택하고 '생성'을 클릭하세요. Tye는 .NET 3.1에서만 작동하므로 동일한 버전을 선택합니다.

tye .NET (개발자를 위한 작동 방식): 그림 4 - .NET Core 3.1 프레임워크를 선택한 다음 생성 버튼을 클릭합니다.

Visual Studio 패키지 관리자에서 IronPDF를 NuGet 패키지에서 설치합니다.

tye .NET (How It Works For Developers): Figure 5 - Install IronPDF using the Manage NuGet Package for Solution by searching "IronPDF" in the search bar of NuGet Package Manager, then select the project and click on the Install button.

다음으로 파일 브라우저를 열고 솔루션 폴더로 이동합니다. 그런 다음 CMD 프롬프트를 엽니다.

다음 명령어로 Tye를 설치합니다:

dotnet tool install -g Microsoft.Tye --version "0.11.0-alpha.22111.1"
SHELL

또는 이미 Tye가 설치되어 있고 업데이트하려는 경우, 아래 명령어를 사용하세요:

dotnet tool update -g Microsoft.Tye --version "0.11.0-alpha.22111.1"
SHELL

다음 명령어로 Tye를 초기화합니다:

tye init
SHELL

아래와 같은 템플릿 YAML 파일이 생성됩니다:

# tye application configuration file
# read all about it at https://github.com/dotnet/tye
#
# when you've given us a try, we'd love to know what you think:
#    https://aka.ms/AA7q20u
#
# define global settings here
# name: exampleapp # application name
# registry: exampleuser # dockerhub username or container registry hostname
# define multiple services here
services:
- name: frontend
  project: Frontend\Frontend.csproj # msbuild project path (relative to this file)
  # executable: app.exe # path to an executable (relative to this file)
    args: -f=netcoreapp3.1 # arguments to pass to the process
  # replicas: 5 # number of times to launch the application
  # env: # array of environment variables
  #  - name: key
  #    value: value
  # bindings: # optional array of bindings (ports, connection strings)
    # - port: 8080 # number port of the binding
Text

다음 명령어로 Tye를 실행합니다:

tye run frontend
SHELL

앱이 실행 중인 상태를 보려면 URL: http://127.0.0.1:8000/에서 Tye 대시보드를 엽니다.

Tye 대시보드

tye .NET (개발자를 위한 작동 방식): 그림 6 - 로컬 호스트에서 Tye를 사용하는 Razor 애플리케이션 실행

다음으로, 아래 코드를 프로젝트에 추가하여 버튼 클릭으로 웹사이트 URL에서 PDF 문서를 생성합니다.

아래 코드를 Index.cshtml 파일에 추가하세요:

@page
@model IndexModel
@{
    ViewData["Title"] = "Generate PDF";
}
<form method="post" class="text-center flex-row">
    <h1 class="display-4">Welcome To URL To PDF Generator</h1>
    <p>Enter Website URL:</p>
    <input type="text" asp-for="UrlInput" />
    <button type="submit">Generate PDF</button>
    @if (Model.Message != null)
    {
        <p>@Model.Message</p>
    }
</form>
Text

그런 다음 아래 코드를 Index.cshtml.cs에 추가하세요:

using IronPdf;
using Microsoft.AspNetCore.Mvc;
using Microsoft.AspNetCore.Mvc.RazorPages;
using Microsoft.Extensions.Logging;

namespace Frontend.Pages
{
    public class IndexModel : PageModel
    {
        public string Message { get; set; }
        
        [BindProperty]
        public string UrlInput { get; set; }
        
        private readonly ILogger<IndexModel> _logger;

        public IndexModel(ILogger<IndexModel> logger)
        {
            _logger = logger;
        }
        
        public void OnGet()
        {
        }
        
        public IActionResult OnPost()
        {
            if (string.IsNullOrEmpty(UrlInput))
            {
                ModelState.AddModelError("UrlInput", "Please enter a URL.");
                return Page();
            }
            
            // Create a PDF from the given URL using ChromePdfRenderer
            var renderer = new ChromePdfRenderer();
            var pdf = renderer.RenderUrlAsPdf(UrlInput);
            
            // Return the PDF as a file result
            var pdfBytes = pdf.BinaryData;
            return File(pdfBytes, "application/pdf", "GeneratedDocument.pdf");
        }
    }
}

이제 아래와 같이 Tye를 실행하세요:

tye .NET (개발자를 위한 작동 방식): 그림 7 - 명령어: tye run frontend를 사용하여 tye 실행

이렇게 하면 Tye 대시보드가 시작됩니다.

tye .NET (개발자를 위한 작동 방식): 그림 8 - Tye 대시보드

이제 바인딩 섹션에서 링크를 클릭하여 PDF 생성 앱을 열고 샘플 URL을 입력하여 PDF를 생성합니다.

tye .NET (개발자를 위한 작동 방식): 그림 9 - IronPDF를 사용한 URL to PDF 생성기

생성 버튼을 클릭하여 다음 PDF를 출력으로 받습니다:

tye .NET (개발자를 위한 작동 방식): 그림 10 - IronPDF를 사용한 HTML URL to PDF 변환

코드 설명

  1. Index.cshtml에는 웹사이트 URL을 캡처하고 PDF 생성을 트리거하는 입력 필드와 버튼이 포함되어 있습니다.
  2. Index.cshtml.cs는 IronPDF를 사용하여 PDF 문서를 생성하는 로직이 들어있는 코드 비하인드 파일입니다.
  3. ChromePdfRenderer 클래스와 RenderUrlAsPdf() 메소드는 URL에서 PDF를 생성하는 데 사용됩니다.
  4. 생성된 URL은 POST 메서드에 대한 응답으로 반환됩니다.
  5. tye run 명령어는 모든 실행 중인 서비스를 볼 수 있는 Tye 대시보드를 실행합니다.
  6. Tye 대시보드에서 프런트엔드 서비스를 클릭하여 앱을 열고 PDF 문서를 생성합니다.

IronPDF 라이선스

IronPDF 라이선싱 페이지를 방문하세요.

아래와 같이 appSettings.json 파일에 라이선스 키를 배치하세요:

{
  "IronPdf.License.LicenseKey": "The Key Here"
}
JSON

결론

결론적으로, Tye는 .NET 생태계에서 중요한 발전을 나타내며, 분산된 애플리케이션을 구축, 테스트 및 배포하는 데 간소화된 접근 방식을 제공합니다. 숙련된 .NET 개발자든 컨테이너화 및 마이크로서비스에 새로운 분이든, Tye는 현대적인 개발 관행을 수용하고 클라우드 네이티브 아키텍처로의 여정을 가속화하기 위한 사용자 친화적인 플랫폼을 제공합니다.

IronPDF는 개발자가 HTML 콘텐츠에서 PDF 문서를 쉽게 생성, 조작 및 렌더링할 수 있게 해주는 .NET 라이브러리입니다. HTML을 PDF로 변환하고, PDF를 병합 및 분할하며, 헤더, 푸터, 워터마크를 추가하는 기능을 지원합니다. IronPDF는 사용의 용이성, 고품질 렌더링, .NET Core 및 .NET Framework 애플리케이션과의 호환성으로 유명합니다. 개발자는 IronPDF 라이브러리와 Tye 빌드 도구를 모두 알게 되면, PDF 생성 기능이 있는 최신 애플리케이션을 개발하는 데 고급 기술을 습득할 수 있습니다.

제이콥 멜러, 팀 아이언 최고기술책임자
최고기술책임자

제이콥 멜러는 Iron Software의 최고 기술 책임자(CTO)이자 C# PDF 기술을 개척한 선구적인 엔지니어입니다. Iron Software의 핵심 코드베이스를 최초로 개발한 그는 창립 초기부터 회사의 제품 아키텍처를 설계해 왔으며, CEO인 캐머런 리밍턴과 함께 회사를 NASA, 테슬라, 그리고 전 세계 정부 기관에 서비스를 제공하는 50명 이상의 직원을 보유한 기업으로 성장시켰습니다.

...
더 읽어보기

관련 기사

Key in blue circle

무료 30일 체험 키를 즉시 받으세요.

Your trial license will be sent to your email address

제한 없음. 100% 무제한 이용. 신용카드 불필요.

bullet_checked신용카드나 계정 생성은 필요하지 않습니다.제한 없음. 100% 무제한 이용. 신용카드 불필요.
  • Logo Aetna
  • Logo NASA
  • Logo GE
  • Logo Porsche
  • Logo USDA
  • Logo Qatar
Join Millions of Engineers who’ve tried IronPDF
무료 라이브 데모를 예약하세요
Booking Badge

전 세계 수백만 엔지니어들이 신뢰하는 제품입니다.

Iron Software의 고객 로고
부담 없는 무료 상담을 받아보세요
아래 양식을 작성하시거나 sales@ironsoftware.com으로 이메일을 보내주세요.
고객님의 정보는 항상 비밀로 유지됩니다.
전 세계 수백만 엔지니어들이 신뢰하는 제품입니다.
Iron Software의 고객 로고
지금 바로 30일 무료 체험판 키를 받으세요.
신용카드나 계정 생성은 필요하지 않습니다.