• 로그인지금 시작하세요

사용자의 편의를 위해 제공되는 기계 번역입니다.

영문본과 번역본이 일치하지 않는 경우 영문본이 우선합니다. 보다 자세한 내용은 이 페이지를 방문하시기 바랍니다.

문제 신고

Docker 컨테이너에 .NET 에이전트 설치

이 문서는 New Relic .NET 에이전트 를 설치하도록 Dockerfile 을 구성하는 방법에 대한 몇 가지 샘플을 제공합니다. WindowsLinux 컨테이너 모두에 대한 예제가 포함되어 있습니다.

Docker 컨테이너에 .NET 에이전트를 설치하는 것은 Windows 또는 Linux 용 표준 .NET 에이전트 설치와 동일한 절차를 사용하여 수행할 수 있습니다. 절차를 수행하도록 Dockerfile 을 구성하기만 하면 됩니다.

Docker에 .NET 에이전트 설치 개요

요구 사항은 다음과 같습니다.

  • 모니터링할 컨테이너에 에이전트를 설치해야 합니다.
  • 표준 설치 절차 중 하나로 에이전트를 설치합니다.
  • 필요한 환경 변수 를 해당하는 대로 설정하여 에이전트를 활성화합니다.
  • .NET 에이전트는 런타임에 설치되고 활성화되어야 합니다.

Linux Docker 컨테이너용 설치

중요

.NET 에이전트 버전 10.0.0 이상의 경우 패키지 이름은 newrelic-dotnet-agent 입니다..NET 에이전트 버전 9.9.0 이하의 경우 패키지 이름은 newrelic-netcore20-agent 입니다.이 문서의 나머지 부분은 newrelic-dotnet-agent 를 참조합니다. 이전 에이전트 버전을 사용해야 하는 경우 이전 이름으로 바꾸십시오.

Linux Dockerfile 예

# Use the correct tagged version for your application's targeted runtime.  See https://hub.docker.com/_/microsoft-dotnet-aspnet/ 
FROM mcr.microsoft.com/dotnet/aspnet:6.0

# Publish your application.
COPY your app to be published /app

# Install the agent
RUN apt-get update && apt-get install -y wget ca-certificates gnupg \
&& echo 'deb http://apt.newrelic.com/debian/ newrelic non-free' | tee /etc/apt/sources.list.d/newrelic.list \
&& wget https://download.newrelic.com/548C16BF.gpg \
&& apt-key add 548C16BF.gpg \
&& apt-get update \
&& apt-get install -y newrelic-dotnet-agent \
&& rm -rf /var/lib/apt/lists/*

# Enable the agent
ENV CORECLR_ENABLE_PROFILING=1 \
CORECLR_PROFILER={36032161-FFC0-4B61-B559-F6C5D41BAE5A} \
CORECLR_NEWRELIC_HOME=/usr/local/newrelic-dotnet-agent \
CORECLR_PROFILER_PATH=/usr/local/newrelic-dotnet-agent/libNewRelicProfiler.so \
NEW_RELIC_LICENSE_KEY=YOUR_LICENSE_KEY \
NEW_RELIC_APP_NAME=YOUR_APP_NAME

WORKDIR /app

ENTRYPOINT ["dotnet", "./YOUR_APP_NAME.dll"]

Linux 다단계 Dockerfile 예

# This example uses .NET 6.0.  For other versions, see https://hub.docker.com/_/microsoft-dotnet-sdk/
FROM mcr.microsoft.com/dotnet/sdk:6.0 AS base

# Build your application
WORKDIR /src
RUN dotnet new mvc -o YOUR_APP_NAME
RUN dotnet publish -c Release -o /app ./YOUR_APP_NAME

# The runtime tag version should match the SDK tag version
FROM mcr.microsoft.com/dotnet/aspnet:6.0 AS final

# Install the agent
RUN apt-get update && apt-get install -y wget ca-certificates gnupg \
&& echo 'deb http://apt.newrelic.com/debian/ newrelic non-free' | tee /etc/apt/sources.list.d/newrelic.list \
&& wget https://download.newrelic.com/548C16BF.gpg \
&& apt-key add 548C16BF.gpg \
&& apt-get update \
&& apt-get install -y newrelic-dotnet-agent

# Enable the agent
ENV CORECLR_ENABLE_PROFILING=1 \
CORECLR_PROFILER={36032161-FFC0-4B61-B559-F6C5D41BAE5A} \
CORECLR_NEWRELIC_HOME=/usr/local/newrelic-dotnet-agent \
CORECLR_PROFILER_PATH=/usr/local/newrelic-dotnet-agent/libNewRelicProfiler.so \
NEW_RELIC_LICENSE_KEY=YOUR_LICENSE_KEY \
NEW_RELIC_APP_NAME=YOUR_APP_NAME

WORKDIR /app
COPY --from=base /app .

ENTRYPOINT ["dotnet", "./YOUR_APP_NAME.dll"]

Windows Docker 컨테이너용 설치

중요

Windows Nano 서버 이미지는 지원되지 않습니다.

.NET Framework 애플리케이션용 Windows Dockerfile의 예

FROM mcr.microsoft.com/dotnet/framework/aspnet

# Publish your application.
COPY your app to be published /inetpub/wwwroot

# Download the New Relic .NET agent installer
RUN [Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12;\
 Invoke-WebRequest "https://download.newrelic.com/dot_net_agent/latest_release/NewRelicDotNetAgent_x64.msi"\
 -UseBasicParsing -OutFile "NewRelicDotNetAgent_x64.msi"

# Install the New Relic .NET agent
RUN Start-Process -Wait -FilePath msiexec -ArgumentList /i, "NewRelicDotNetAgent_x64.msi", /qn,\
 NR_LICENSE_KEY=YOUR_LICENSE_KEY

# Remove the New Relic .NET agent installer
RUN Remove-Item "NewRelicDotNetAgent_x64.msi"

# Set your application name
ENV NEW_RELIC_APP_NAME=YOUR_APP_NAME

.NET Core 애플리케이션용 Windows Dockerfile의 예

FROM mcr.microsoft.com/windows/servercore:ltsc2019

# Publish your application.
COPY your app to be published /app

# Download the New Relic .NET agent installer
RUN powershell.exe [Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12;\
 Invoke-WebRequest "https://download.newrelic.com/dot_net_agent/latest_release/NewRelicDotNetAgent_x64.msi"\
 -UseBasicParsing -OutFile "NewRelicDotNetAgent_x64.msi"

# Install the New Relic .NET agent
RUN powershell.exe Start-Process -Wait -FilePath msiexec -ArgumentList /i, "NewRelicDotNetAgent_x64.msi", /qn,\
 NR_LICENSE_KEY=YOUR_LICENSE_KEY

# Remove the New Relic .NET agent installer
RUN powershell.exe Remove-Item "NewRelicDotNetAgent_x64.msi"

# Enable the agent
ENV CORECLR_ENABLE_PROFILING=1

# Set your application name
ENV NEW_RELIC_APP_NAME=YOUR_APP_NAME

# windows/servercore images may not include the .NET Core SDK or runtime
RUN dotnet sdk/runtime installer

WORKDIR /app

ENTRYPOINT ["dotnet", ".\\YOUR_APP_NAME.dll"]

While you wait for your data to come in...

Did this doc help you install?

Copyright © 2022 New Relic Inc.

This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.