FTP/S를 사용하여 앱에 Azure App Service에 배포Deploy your app to Azure App Service using FTP/S

이 문서는 FTP 또는 FTPS를 사용하여 웹앱, 모바일 앱 백 엔드 또는 API 앱을 Azure App Service에 배포하는 방법을 보여 줍니다.This article shows you how to use FTP or FTPS to deploy your web app, mobile app backend, or API app to Azure App Service.

앱에 대한 FTP/S 끝점은 이미 활성화되어 있습니다.The FTP/S endpoint for your app is already active. FTP/S 배포를 사용하도록 설정하는 데 필요한 구성은 없습니다.No configuration is necessary to enable FTP/S deployment.

1단계: 배포 자격 증명 설정Step 1: Set deployment credentials

앱에 대한 FTP 서버에 액세스하려면 먼저 배포 자격 증명이 필요합니다.To access the FTP server for your app, you first need deployment credentials.

배포 자격 증명을 설정하거나 다시 설정하려면 Azure App Service 배포 자격 증명을 참조하세요.To set or reset your deployment credentials, see Azure App Service Deployment Credentials. 이 자습서는 사용자 수준의 자격 증명 사용 방법을 보여 줍니다.This tutorial demonstrates the use of user-level credentials.

2단계: FTP 연결 정보 가져오기Step 2: Get FTP connection information

  1. Azure Portal에서 앱의 리소스 페이지를 엽니다.In the Azure portal, open your app's resource page.
  2. 왼쪽 탐색 메뉴에서 개요를 선택하고 P/배포 사용자, FTP 호스트 이름FTPS 호스트 이름 값을 적어둡니다.Select Overview in the left navigation, then note the values for FTP/Deployment User, FTP Host Name, and FTPS Host Name.

    FTP 연결 정보

    참고

    FTP 서버에 올바른 컨텍스트를 제공하기 위해 Azure Portal에 표시된 FTP/배포 사용자 값에는 앱 이름이 포함됩니다.To provide proper context for the FTP server, the FTP/Deployment User value displayed by the Azure portal includes the app name. 왼쪽 탐색 메뉴에서 속성을 선택하면 같은 정보를 찾을 수 있습니다.You can find the same information when you select Properties in the left navigation.

    또한 배포 암호는 표시되지 않습니다.Also, the deployment password is never shown. 배포 암호를 잊은 경우 1단계로 이동한 후 배포 암호를 다시 설정합니다.If you forget your deployment password, go back to step 1 and reset your deployment password.

3단계: Azure에 파일 배포Step 3: Deploy files to Azure

  1. FTP 클라이언트(Visual Studio 또는 FileZilla)에서 수집한 연결 정보를 사용하여 앱에 연결합니다.From your FTP client (for example, Visual Studio or FileZilla), use the connection information you gathered to connect to your app.
  2. 파일 및 해당 디렉터리 구조를 Azure의 /site/wwwroot 디렉터리(또는 WebJobs의 경우 /site/wwwroot/App_Data/Jobs/ 디렉터리)에 복사합니다.Copy your files and their respective directory structure to the /site/wwwroot directory in Azure (or the /site/wwwroot/App_Data/Jobs/ directory for WebJobs).
  3. 앱의 URL을 찾아 앱이 제대로 실행하는지 확인합니다.Browse to your app's URL to verify the app is running properly.

참고

Git 기반 배포와 달리, FTP 배포에서는 다음과 같은 배포 자동화를 지원하지 않습니다.Unlike Git-based deployments, FTP deployment doesn't support the following deployment automations:

  • 종속성 복원(예: NuGet, NPM, PIP 및 Composer Automation)dependency restores (such as NuGet, NPM, PIP, and Composer automations)
  • .NET 이진 파일 컴파일compilation of .NET binaries
  • web.config 생성(Node.js 예제 참조)generation of web.config (here is a Node.js example)

로컬 컴퓨터에서 이러한 필요한 파일을 수동으로 생성한 후 앱과 함께 배포합니다.Generate these necessary files manually on your local machine, and then deploy them together with your app.

FTPS 적용Enforce FTPS

보안 향상을 위해 SSL을 통한 FTP만 허용해야 합니다.For enhanced security, you should allow FTP over SSL only. FTP 배포를 사용하지 않을 경우 FTP 및 FTPS를 둘 다 사용하지 않도록 설정할 수도 있습니다.You can also disable both FTP and FTPS if you don't use FTP deployment.

Azure Portal의 앱 리소스 페이지에서 왼쪽 탐색 창에 있는 앱 설정을 선택합니다.In your app's resource page in Azure portal, select App settings in the left navigation.

암호화되지 않은 FTP를 사용하지 않도록 설정하려면 FTPS만을 선택합니다.To disable unencrypted FTP, select FTPS Only. FTP 및 FTPS를 둘 다 완전히 사용하지 않도록 설정하려면 사용 안 함을 선택합니다.To disable both FTP and FTPS entirely, select Disable. 완료되면 저장을 클릭합니다.When finished, click Save.

FTP/S 사용 안 함

FTP 배포 문제 해결Troubleshoot FTP deployment

FTP 배포 문제를 어떻게 해결할 수 있나요?How can I troubleshoot FTP deployment?

FTP 배포 문제를 해결하는 첫 번째 단계는 런타임 응용 프로그램 문제에서 배포 문제를 격리하는 것입니다.The first step for troubleshooting FTP deployment is isolating a deployment issue from a runtime application issue.

배포 문제가 발생하면 일반적으로 앱에 파일이 배포되지 않거나 잘못된 파일이 배포됩니다.A deployment issue typically results in no files or wrong files deployed to your app. 이 문제는 FTP 배포를 조사하거나 대체 배포 경로(예: 소스 제어)를 선택하여 해결할 수 있습니다.It can be addressed by investigating your FTP deployment or selecting an alternate deployment path (such as source control).

런타임 응용 프로그램 문제가 발생하면 일반적으로 앱에 올바른 파일 집합이 배포되기는 하지만 앱이 올바르지 않게 동작합니다.A runtime application issue typically results in the right set of files deployed to your app but incorrect app behavior. 런타임의 코드 동작에 중점을 두고 구체적인 실패 경로를 조사하여 문제를 해결할 수 있습니다.It can be addressed by focusing on code behavior at runtime and investigating specific failure paths.

배포 또는 런타임 문제를 확인하려면 배포 문제 및 런타임 문제를 참조하세요.To determine a deployment or runtime issue, see Deployment vs. runtime issues.

FTP를 수행할 수 없으며 코드를 게시할 수 없습니다.I'm not able to FTP and publish my code. 이 문제는 어떻게 해결할 수 있나요?How can I resolve the issue?

올바른 호스트 이름 및 자격 증명을 입력했는지 확인합니다.Check that you've entered the correct hostname and credentials. 또한 컴퓨터의 다음 FTP 포트가 방화벽에 의해 차단되지 않는지 확인합니다.Check also that the following FTP ports on your machine are not blocked by a firewall:

  • FTP 제어 연결 포트: 21FTP control connection port: 21
  • FTP 데이터 연결 포트: 989, 10001-10300FTP data connection port: 989, 10001-10300

수동 모드를 통해 Azure App Service에서 FTP에 연결하려면 어떻게 해야 하나요?How can I connect to FTP in Azure App Service via passive mode?

Azure App Service는 활성 및 수동 모드를 통한 연결을 모두 지원합니다.Azure App Service supports connecting via both Active and Passive mode. 배포 컴퓨터는 일반적으로 방화벽 뒤에 있으므로(운영 체제에서 또는 가정용/회사 네트워크의 일부로) 수동 모드가 선호됩니다.Passive mode is preferred because your deployment machines are usually behind a firewall (in the operating system or as part of a home or business network). WinSCP 설명서의 예제를 참조하세요.See an example from the WinSCP documentation.

다음 단계Next steps

고급 배포 시나리오에 대해서는 Git를 사용하여 Azure에 배포를 시도하세요.For more advanced deployment scenarios, try deploying to Azure with Git. Azure로의 Git 기반 배포를 수행하면 버전 제어, 패키지 복원, MSBuild 등을 수행할 수 있습니다.Git-based deployment to Azure enables version control, package restore, MSBuild, and more.

추가 리소스More Resources