์๋
ํ์ธ์,
์ง์ ์ฌ๋ก 119071321000245๋ฅผ ์ ๊ธฐํ์ต๋๋ค. ์ฌ๊ธฐ์ ์ง์ ์์ง๋์ด๋ WEBSITE_CONTENTSHARE๊ฐ ํจ์ ๋ฐํ์์์ ๊ด๋ฆฌ๋์ด์ผ ํ๋ฏ๋ก ARM ๋ฐฐํฌ์์ ์ ํ ์ค์ ํด์๋ ์ ๋๋ค๊ณ ์กฐ์ธํ์ต๋๋ค. ์ค์ ํ์ง ์์ผ๋ฉด ์ฌ๋ฐฐ์น ์ค ์๋ํ์ง ์์ ์ค์์ด ๋ฐ์ํ ์ ์๋ ๋ฌธ์ ๋ฅผ ๋ฐฉ์งํ ์ ์์ต๋๋ค. (์์ธํ ๋ด์ฉ์ ์ฌ๋ก ์ ๋ณด ์ฐธ์กฐ)
์ด๊ฒ์ด ๊ณต์ ์ง์นจ์ด๋ผ๋ฉด ์ด ํ์ด์ง์ ๋ฉ๋ชจ๋ฅผ ์ถ๊ฐํ์ฌ ์ฌ๋๋ค์๊ฒ ์๋ ค์ผ ํฉ๋๊น?
๋ํ AppService ํ ํ๋ฆฟ์ ๋ด๋ณด๋ผ ๋ WEBSITE_CONTENTSHARE๋ฅผ ์ ์ธํด์ผ ํ๋์? (ํฌํธ ๋๋ PowerShell์ ํตํด)
โ ์ด ์น์ ์ ํธ์งํ์ง ๋ง์ญ์์ค.
@danielstocker ์ด ๋ฌธ์ ๋ฅผ ์๋ ค ์ฃผ์ ์ ๊ฐ์ฌํฉ๋๋ค. ์ถ๊ฐ ์กฐ์ฌ๋ฅผ ์ํด ์ด๋ฅผ ์๋น์ค ๋ฆฌ๋์ ํ ๋นํ์ผ๋ฉฐ ๋ ๋ช ํํด์ง๋ฉด ์ ๋ฐ์ดํธํ ๊ฒ์ ๋๋ค.
@Mike-Ubezzi-MSFT @mike-urnun-msft
์กฐ์ฌํด ์ฃผ์ ์ ๊ฐ์ฌํฉ๋๋ค.
์ด ์์ ์ ์งํํ๋ ค๋ฉด ๋ ๋ง์ ์ ๋ณด๊ฐ ํ์ํฉ๋๊น?
@danielstocker ์ด ๋ฐ๊ฒฌ์ผ๋ก ์ด์ด์ง ์๋ ๋ฌธ์ ๊ฐ ๋ฌด์์ธ์ง์ ๋ํ ์ถ๊ฐ ๋ฐฐ๊ฒฝ ์ ๋ณด๋ฅผ ์ ๊ณตํ ์ ์์ต๋๊น? ๋ถ์ ์ ํ๊ฒ ์ค์ ํ๋ค๋ ์๋ฏธ๋ฅผ ์ ๋๋ก ์ดํดํ์ง ๋ชปํ๊ณ ์์ต๋๋ค( unintentional swap
๋ก ์ธ๊ธํ ๋ด์ฉ).
์๋ ํ์ธ์ @ggirard07 ,
๊ด์ฐฎ์์. ์์ฝํ๊ฒ ์ต๋๋ค.
์ด๊ฒ์ ๋ฌธ์์ WEBSITE_CONTENTSHARE๊ฐ ํ์ํ๋ค๊ณ ๋ช
์๋์ด ์๊ธฐ ๋๋ฌธ์ ์ฒ์์ ๋์จ ๊ฒ์
๋๋ค. (์ฌ๊ธฐ ์ฐธ์กฐ: https://docs.microsoft.com/en-us/azure/azure-functions/functions-infrastructure-as-code#windows)
Marketplace์์ ํจ์ ํ ํ๋ฆฟ์ ๋ด๋ณด๋ด๋ฉด(๋ง์ง๋ง ํ์ด์ง์ ํ ํ๋ฆฟ ๋ด๋ณด๋ด๊ธฐ) ํ์ค ์ฑ ์ค์ ์ผ๋ก WEBSITE_CONTENTSHARE๋ฅผ ์ป์ต๋๋ค. ์ด๊ฒ์ ์ฌ์ฉํ๋ฉด ๋ค์๊ณผ ๊ฐ์ ์ํฉ์ด ๋ฐ์ํ ์ ์์ต๋๋ค.
1) ARM ํ
ํ๋ฆฟ์ ๋ฐฐํฌํ๊ณ ๋ ๊ฐ์ ์ฌ๋กฏ์ด ์๋ ๋น ํจ์๋ฅผ ์ป์ต๋๋ค.
2) ์คํ
์ด์ง ์ฌ๋กฏ์ ๋ฐฐํฌํฉ๋๋ค.
3) ์ฝํ
์ธ ๋ฅผ ํ๋ก๋์
ํ๊ฒฝ์์ ์ฌ์ฉํ ์ ์๋๋ก ๊ต์ฒดํฉ๋๋ค.
4) ARM ํ
ํ๋ฆฟ์ด ์ฌ๋ฐฐํฌ๋๊ณ ์ฑ ์ค์ ์ด ๋ค์ ์ ์ฉ๋จ์ ๋ฐ๋ผ ์๋ํ์ง ์์ ์ค์(appsettings ๋ฆฌ์์ค๊ฐ ํญ์ WEBSITE_CONTENTSHARE ์ค์ ์ ๋ฎ์ด์ฐ๊ณ ์ฌ์ค์ ํ๋ฏ๋ก ์ฆ๋ถ ARM ๋ฐฐํฌ ์ค์๋ ๋ฐ์ํจ)
5) ๋ฐฐํฌ ๋ฃจํด์ ์ด์ ์ ์ฝ๋๋ฅผ ์คํ
์ด์ง ์ฌ๋กฏ์ ๋ฐฐํฌํ๊ณ ํ๋ก๋์
์ฌ๋กฏ์ ์ด์ ๋ฒ์ ์ ํฌํจํ์ง ์๊ณ ๋น์ด ์์ต๋๋ค. ์ฐ๋ฆฌ์ ์์ฐ ๊ธฐ๋ฅ์ "์๋์น ์๊ฒ" ๋ค์ด๋ฉ๋๋ค.
์ด ํน์ ํ ๊ฒฝ์ฐ์ ๊ณ ๊ฐ์ ๋ค์์ด ๋ฌธ์์ ์ง์ https://nascent.blog/2017/06/27/azure-functions-slots-arm-templates-snags-2-redeploy-causes-unwanted-swap/
์ด๋ ๋์์ ์์ ํ๊ธฐ ์ํด ์ค์ ์ ์ฌ๋กฏ ์ค์ ์ผ๋ก ์ค์ ํด์ผ ํจ์ ๋ํ๋ ๋๋ค. ์ด๊ฒ์ ๋ด ํ ์คํธ์ ๋์์ ์์ ํ์ง๋ง ์๋ํ์ง ์์์ผ ํ๊ธฐ ๋๋ฌธ์ ์๋ชป๋ ๊ฒ ๊ฐ์ต๋๋ค.
์๋๋ ๋ด ํ
์คํธ์์ ์ผ์ด๋ ์ผ์ ๋ํ ํ์
๋๋ค. (์ฌ๋กฏ ์ค์ ํ)
๋ด(๋ฐ ๊ณ ๊ฐ)์ ์ธ์์ ์ฌ๋กฏ์ด ๋ ์ด์ ๊ต์ฒด๋์ด์๋ ์ ๋๋ค๋ ๊ฒ์ ๋๋ค. ๊ทธ๋ฌ๋ ๊ธฐ์ฌ์์ ์ค๋ช ํ ๊ฒ์ฒ๋ผ ์ด์จ๋ ์ฌ์ ํ ์๋ํฉ๋๋ค.
๋ด๋ถ์ ์ผ๋ก๋ ์ด ๋ฌธ์ ๋ฅผ ์ ๊ธฐํ๋๋ฐ ์ฑ ์ค์ ์ ๋ณ๊ฒฝํ ๋ ์ฌ๋๋ค์ด ์ผ๊ด๋์ง ์์ ๋์์ ๋ฐ๊ฒฌํ์ต๋๋ค. (๋ฐ๋ผ์ ์ด๊ฒ์ด ๋ด ํ ์คํธ ๊ทธ๋ฆฌ๋์์ ๊ฐ์กฐ ํ์๋ ์ด์ ) ๋๋ฃ๋ฅผ ํ ์คํธํ๊ธฐ ์ํด ์ฑ ์ค์ ์ ์ ๋ฐ์ดํธํ๋ฉด ์ฌ๋กฏ ์ค์ ์ด ๋ค์ ์ ์ฉ๋์ด ์๋ํ์ง ์์ ์ค์์ด ๋ฐ์ํ์ต๋๋ค.
๊ทธ๋ฐ ๋ค์ ๋ง์นจ๋ด (๊ธด ์๋ต์ ๋ํด ์ ๊ฐ์ค๋ฝ๊ฒ๋) ๊ฒฐ๊ณผ๊ฐ "์ค์ ์ ์ ํ ์ค์ ํ์ง ์์"์ธ ์ง์ ์ฌ๋ก๋ฅผ ์ ๊ธฐํ๊ฒ ๋์์ต๋๋ค.
๋ด ๊ฐ์ธ ํ
์คํธ์์๋ ์ด๊ฒ์ด ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ๋ ๊ฒ์ผ๋ก ๋ํ๋ฌ์ง๋ง ๋ฌธ์์ ์ด๋ฅผ ํ์ธํ๊ธฐ ์ํ ์ง์นจ์ด ์์ผ๋ฏ๋ก ์ด ํญ๋ชฉ์ ์ ๊ธฐํ ์ด์ ๊ฐ ์์ต๋๋ค.
๋์์ด ๋์๊ธฐ๋ฅผ ๋ฐ๋๋๋ค.
๋ถ๋ถ๋ช
ํ ๊ฒ์ด ์์ผ๋ฉด ์๋ ค์ฃผ์ญ์์ค.
@danielstocker๋ ํ์คํ ์ค์ํ ์ ๋ณด์
๋๋ค. ํนํ ์ฌ๋กฏ๊ณผ ์ค์ํ์ด ํจ์์ ์น ์์
์ด ์๋ ๊ธฐ์กด ์น์ฑ์์ ์ด๋ป๊ฒ ์๋ํ๋์ง ์ดํดํ๋ ๋ฐ ์ ์ฉํฉ๋๋ค.
๋ํ ์ฌ๊ธฐ์ ์ค์ํ ์ญํ ์ ํ๋ 'WEBSITE_CONTENTSHARE'์๋ ๋ถ๊ตฌํ๊ณ ์ด๋ ์ฌ๋กฏ ๋ฌธ์ ์์๋ ์ค๋ช
๋์ง ์์ต๋๋ค. 4๋จ๊ณ์์ ์ด๋ฅผ ๋ํ๋ด๋ ํ๋ ๋ฟ์ด๋ฉฐ
@ggirard07 ๋ ์๋ ํ์ธ์. ์
@girard07 @ggailey777 @mike-urnun-msft
์ด ๋์๊ณผ ๊ด๋ จํ์ฌ ๋ฌธ์๋ฅผ ๋ช ํํ๊ฒ ์์ฑํ๋ ค๋ฉด ๋ ๋ง์ ์ ๋ณด๊ฐ ํ์ํฉ๋๊น? ์ด ์๋๋ฆฌ์ค์ ๋ํ ๊ณต์ ์ง์นจ์ด ํ์คํ์ง ์๊ธฐ ๋๋ฌธ์ ๊ธฐ๋ฅ ์ฌ๋กฏ ์ฌ์ฉ์ ์ค๋จํ๋ ค๋ ๊ณ ๊ฐ๊ณผ ํ๋ ฅํ๊ณ ์์ต๋๋ค.
๋น์ ์ ๋์์ ์ฃผ์ ์ ๊ฐ์ฌํฉ๋๋ค
@danielstocker ์ด์ ๊ด๋ จ๋ ๋ฌธ์ ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ ๊ฒ์ด๋ผ๊ณ ์๊ฐํ๋ ๋ด์ฉ์ ๋ช ํํ ํ๊ธฐ ์ํด:
WEBSITE_CONTENTSHARE
๋ฐฐํฌ ์ค์ ์ ์ ๊ฑฐ ํฉ๋๋ค .WEBSITE_CONTENTSHARE
๋ ๋ฐํ์์์๋ง ์ค์ ํด์ผ ํ๋ค๋ ๋ฉ๋ชจ ๋ฅผ ์ถ๊ฐํฉ๋๋ค.๊ทธ๊ฒ์ผ๋ก ์ถฉ๋ถํ ๊ฒ ๊ฐ์ต๋๊น?
์ฐธ์กฐ @mattchenderson
์๋
ํ์ธ์ @gailey777
๋ค ์ข์ ํด๊ฒฐ์ฑ
์ด ๋ ๊ฒ ๊ฐ์์
WEBSITE_CONTENTSHARE
๋ ARM์ ์ฌ์ฉํ์ฌ ํจ์ ์ฑ์ ๋ฐฐํฌํ ๋ ํ์ ์ฑ ์ค์ ์ค ํ๋๊ฐ ์๋๊ฐ์?
WEBSITE_CONTENTSHARE
๋ ARM์ ์ฌ์ฉํ์ฌ ํจ์ ์ฑ์ ๋ฐฐํฌํ ๋ ํ์ ์ฑ ์ค์ ์ค ํ๋๊ฐ ์๋๊ฐ์?
์ ์ฉ๋์ง ์์ผ๋ฉด ๋ฐํ์์์ ์๋์ผ๋ก ์์ฑํ ๊ฒ์ ๋๋ค.
๋๋ ์๋น-๊ณํ๊ณผ ์น์ _Microsoft.Web / ์ฌ์ดํธ / config_๋ผ๋ ์ด๋ฆ์ appSettings๋๊ณผ ๊ธฐ๋ฅ ์ฑ ๋ค์๊ณผ ๊ฐ์ ํน์ฑ์ ๊ฐ์ง ARM์ ๋ฐฐ์น
๋ฐฐํฌ์์ ๋ค์ ์ค๋ฅ๊ฐ ๋ฐํ๋์์ต๋๋ค.
"ErrorEntity": {
"ExtendedCode": "01010",
"MessageTemplate": "Required parameter {0} is missing.",
"Parameters": [
"WEBSITE_CONTENTSHARE"
],
"Code": "BadRequest",
"Message": "Required parameter WEBSITE_CONTENTSHARE is missing."
WEBSITE_CONTENTAZUREFILECONNECTIONSTRING ๋งค๊ฐ๋ณ์๋ฅผ _๋ํ_ ์ ๊ฑฐํ ํ ๋ฐฐํฌ๊ฐ ์ค๋ฅ ์์ด ์งํ๋์์ต๋๋ค. ๋ฐ๋ผ์ ์ด ๋ ์ค์ ์ฌ์ด์๋ ๋ช ๊ฐ์ง ํ์ ๊ด๊ณ๊ฐ ์๋ ๊ฒ ๊ฐ์ต๋๋ค.
์ฑ๊ณต์ ์ด๊ธฐ๋ ํ์ง๋ง ์ด ๋ฐฐํฌ๋ก ์ธํด ๊ธฐ๋ฅ(ํจํค์ง)์ด ๋ฌผ๋ฆฌ์ ์ผ๋ก ๋ฐฐํฌ๋์๋์ง ์ฌ๋ถ์ ์ฅ์๊ฐ ๋ฐฉํฉํ์ต๋๋ค(์ด ๊ฒฝ์ฐ๊ฐ ์ฒ์๋ถํฐ ์ ํจํ ๊ฒฝ์ฐ).
์ฐ๋ฆฌ๋ @tjgalama ๊ฐ ์ค๋ช ํ ์ ํํ ๋์์
ํจ์ ์ฑ์๋ ํ์ด๋จธ ํธ๋ฆฌ๊ฑฐ ํจ์๋ ํฌํจ๋์ด ์์ผ๋ฏ๋ก ์ ์๋ ๋๋ก AzureWebJobsStorage
์ค์ ์ ์ง์ ํฉ๋๋ค WEBSITE_CONTENTAZUREFILECONNECTIONSTRING
ํ์ง๋ง ๊ทธ๋ ์ง ์์ต๋๋ค. ๊ฑฐ๊ธฐ์ ์ง์ ํ๋ ์คํ ๋ฆฌ์ง ๊ณ์ ์ azure-webjobs-hosts
๋ฐ azure-webjobs-secrets
Blob ์ปจํ
์ด๋๊ฐ ์์ง๋ง ํ์ผ ๊ณต์ ๋ ์์ต๋๋ค.
Kudu์์ ๋จ์๋ฅผ ํ์ธํ๊ณ ํ์ผ ์์คํ
์ ์์ด์ผ ํ๋ ๋ชจ๋ ํ์ผ์ด ์๋ ๊ฒ์ฒ๋ผ ๋ณด์ด์ง๋ง(์ฆ, app-name.scm.azurewebsites.net/api/vfs/
) ๋ ์ค์ ( WEBSITE_CONTENTSHARE
๋ํ ์ฐธ์กฐ๋ ์์ต๋๋ค. WEBSITE_CONTENTAZUREFILECONNECTIONSTRING
)๋ ํ๊ฒฝ ํญ( appname.scm.azurewebsites.net/Env.cshtml
)์์ ๋ณผ ์ ์์ต๋๋ค.
์ธ๊ธํ๋ ๊ฒ์ด ์ค์ํ ์๋ ์์ต๋๋ค. ์ฐ๋ฆฌ ์ฑ์ WEBSITE_ENABLE_SYNC_UPDATE_SITE=True
๋ฐ WEBSITE_RUN_FROM_PACKAGE=1
์์ต๋๋ค.
์ฑ์ด ์๋ํ๋ ๊ฒ์ฒ๋ผ ๋ณด์ด์ง๋ง ํต์ฌ ๋น์ฆ๋์ค ์๋น์ค๋ฅผ Azure Functions๋ก ์ด์ํ๊ณ ํ๋ก๋์
์ผ๋ก ๋กค์์ํ๊ธฐ ์ ์ ์ด ์๋น์ค๋ฅผ ํ์
ํ๊ธฐ๋ฅผ ์ํ๋ฏ๋ก ์ด ์ ์ ๋ํด ์ฝ๊ฐ์ ๋ช
ํ์ฑ์ ์ํฉ๋๋ค.
๋ช ๊ฐ์ง ์กฐ์ธ์ ๋ฐ๋ผ WEBSITE_CONTENTSHARE
๋ฅผ ์ฌ๋กฏ ์ค์ ์ผ๋ก ์ค์ ํ์ฌ ํ๋ก๋์
์ฌ๋กฏ๊ณผ ์คํ
์ด์ง ์ฌ๋กฏ ๊ฐ์ ๊ฐ์ด ๊ตฌ๋ณ๋๋๋ก ํ์ต๋๋ค. ์ค๋ ์ฐ๋ฆฌ๊ฐ ์ฌ์ฉํ๋ ARM ํ
ํ๋ฆฟ์ด 'WEBSITE_CONTENTSHARE' cannot be a slot setting.
์คํจํ๊ธฐ ์์ํ์ต๋๋ค(ํ์ฌ ํฌํธ์์ ์ค์ ๋ก ์ฌ๋กฏ ์ค์ ์ผ๋ก ์ค์ ๋์ด ์์์ ํ์ธํ์ง๋ง). ์ด ๋์๊ณผ ๊ด๋ จํ์ฌ ๋ณ๊ฒฝ๋ ์ฌํญ์ด ์์ต๋๊น?
์ฐ๋ฆฌ๋ ์ง๋ ๋ฉฐ์น ๋์ ์ด์ ๋์ผํ ๋ฌธ์ ๋ฅผ ๋ฐ๊ฒฌํ์ผ๋ฉฐ ์งํ ๋ฐฉ๋ฒ์ ๋ํ ์ง์นจ์ด ํ์ํฉ๋๋ค. ๋ํ ์๋ํ์ง ์์ ์ค์ ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ๊ธฐ ์ํด WEBSITE_CONTENTSHARE๋ฅผ ์ฌ๋กฏ ์ค์ ์ผ๋ก ์ค์ ํ๋ ์ ๊ทผ ๋ฐฉ์์ ๋ฐ๋์ง๋ง ์ง๊ธ์ ์ด ์ค๋ฅ๋ก ์ธํด ๋ฐฐํฌํ ์ ์์ต๋๋ค. ์ด ์ค์ ๊ณผ WEBSITE_CONTENTAZUREFILECONNECTIONSTRING ์ค์ ์ ๋ชจ๋ ์๊ธํ์ฌ ์ ๊ฑฐํ์ฌ ์ด๋ ์ชฝ๋ ์ฌ์ฉํ์ง ์๋ ๊ฒ์ด ๊ถ์ฅ๋๋ ์ ๊ทผ ๋ฐฉ์์ผ๋ก ๋ณด์ด๋ ๋ฐฉํฅ์ผ๋ก ์ด๋ํ๋ ค๊ณ ์๋ํ์ง๋ง ์ด๋ฌํ ๋ฐฐํฌ๋ ์คํจํฉ๋๋ค.
๋ช ๊ฐ์ง ์กฐ์ธ์ ๋ฐ๋ผ
WEBSITE_CONTENTSHARE
๋ฅผ ์ฌ๋กฏ ์ค์ ์ผ๋ก ์ค์ ํ์ฌ ํ๋ก๋์ ์ฌ๋กฏ๊ณผ ์คํ ์ด์ง ์ฌ๋กฏ ๊ฐ์ ๊ฐ์ด ๊ตฌ๋ณ๋๋๋ก ํ์ต๋๋ค. ์ค๋ ์ฐ๋ฆฌ๊ฐ ์ฌ์ฉํ๋ ARM ํ ํ๋ฆฟ์ด'WEBSITE_CONTENTSHARE' cannot be a slot setting.
์คํจํ๊ธฐ ์์ํ์ต๋๋ค(ํ์ฌ ํฌํธ์์ ์ค์ ๋ก ์ฌ๋กฏ ์ค์ ์ผ๋ก ์ค์ ๋์ด ์์์ ํ์ธํ์ง๋ง). ์ด ๋์๊ณผ ๊ด๋ จํ์ฌ ๋ณ๊ฒฝ๋ ์ฌํญ์ด ์์ต๋๊น?
๊ทธ๊ฒ์ ์ ๊ฑฐํ๊ณ ๋ฐํ์์ด ์ด๋ฆ์ ์ ํํ๋๋ก ํฉ๋๋ค. ์ด๊ฒ์ด ๋ด๊ฐ ํ๋ ๋ฐฉ๋ฒ์ ๋๋ค.
@jeffhollan ์ข ๋ช ํํ๊ฒ ์๋ ค ์๋์ ?
์ด๊ฒ์ WEBSITE_CONTENTSHARE ๋ฐ WEBSITE_CONTENTAZUREFILECONNECTIONSTRING์ด _ํ์_์์ ์๋ฏธํฉ๋๋ค. https://docs.microsoft.com/en-us/azure/azure-functions/functions-infrastructure-as-code#create -a-function-app
์ฌ๊ธฐ ๋๊ธ ์์ฑ์๋ ํ์ํ์ง _์๋ค๊ณ ์๊ฐํฉ๋๋ค. ARM์ ๊ทธ๋ค์ด ํ์ํ๋ค๊ณ ์๊ฐํฉ๋๊น?; Azure ์ง์์ WEBSITE_CONTENTSHARE๊ฐ ์ฌ๋กฏ ์๋๋ฆฌ์ค๋ฅผ ์ค๋จํ๋ค๊ณ ์๊ฐํฉ๋๋ค.
์ฐ๋ฆฌ๋ Azure ํจ์ ํธ์คํธ์ ์ฝ๋๋ฅผ ํ์ธํ๊ณ ํจํค์ง์์ ์คํํ ๋ WEBSITE_CONTENTAZUREFILECONNECTIONSTRING
์ค์ ์ด ์ฌ์ฉ๋์ง ์๋ ๊ฒ์ฒ๋ผ ๋ณด์
๋๋ค .
ARM ํ
ํ๋ฆฟ์์ WEBSITE_CONTENTAZUREFILECONNECTIONSTRING
๋ฐ WEBSITE_CONTENTSHARE
ํ๊ณ ์ข์ ๊ฒฐ๊ณผ๋ฅผ ์ป์ด ์ด๋ฅผ ํ์ธํ์ต๋๋ค. ํจ์ ์ฑ์๋ ์ด ๋ ๊ฐ์ง ์ค์ ์ด ์ ํ ์์ผ๋ฉฐ(๋ฐํ์์์ ํ ๋นํ์ง๋ ์์) ์คํ ๋ฆฌ์ง ๊ณ์ ์์ ํ์ผ ๊ณต์ ๋ฅผ ์ฌ์ฉํ์ง ๋ง์ญ์์ค(์ ์ด๋ ์ฐ๋ฆฌ๊ฐ ๋ณผ ์ ์์).
๋ฐ๋ผ์ ์ผ๋์ ๋์ด์ผ ํ ํ ๊ฐ์ง๋ webapp/function ์ฑ์ ํ์ผ ์์คํ ์ ๋ค์๊ณผ ๊ฐ๋ค๋ ๊ฒ์ ๋๋ค.
|-data
|-LogFiles
|-site
|-deployments
|-tools
|-wwwroot
ํจํค์ง์์ ์คํ์ ์ฌ์ฉํ๋ฉด ์ด ํธ๋ฆฌ์ wwwroot ํด๋๋ง ๋์ฒด๋ฉ๋๋ค. ๋ค๋ฅธ ๋ชจ๋ ๊ฒ์ ๊ธฐ๋ณธ ํ์ผ ์์คํ ์์ ์ ๊ณตํฉ๋๋ค. WEBSITE_CONTENTAZUREFILECONNECTIONSTRING ์์ด ์๋น ๋๋ ํ๋ ฅ์ ํ๋ฆฌ๋ฏธ์ ํจ์ ์ฑ์ ๋ง๋๋ ๊ฒฝ์ฐ ๊ธฐ๋ณธ ํ์ผ ์์คํ ์ ํจ์ ์ฑ์ด ์์ฑ๋ ์ถ์ฒ ๋จ์ ์ธ๋ถ์์ ์ฌ์ฉํ ์ ์์ต๋๋ค. ์ด๊ฒ์ ์ง์/๊ถ์ฅ ๊ตฌ์ฑ์ด ์๋๋๋ค. ์ฆ, ํจ์ ์ฑ์ด ์์ฑ๋ ๋ฐฐ์จ ๋จ์์ ์ ํ์ ์ด๊ณผํ์ฌ ํ์ฅ๋์ง ์์ ์ ์์ผ๋ฉฐ, ๊ทธ๋ ๋ค๋ฉด wwwroot ์ธ๋ถ์ ํ์ผ ์์คํ ์ํ๊ฐ ์ผ๊ด๋๊ฒ ์ ์ง๋๋ค๋ ๊ฒ์ ์ ๋ขฐํ ์ ์์ต๋๋ค.
WEBSITE_CONTENTSHARE๊ฐ ์ฌ๋กฏ๊ณผ ์ํธ ์์ฉํ๋ ๋ฐฉ์์ ์์ ํ ๊ฐ๋ฐ์๊ฐ ๋ณธ ๊ฐ์ฅ ์ต๊ทผ ์ง์นจ์ ๋ค์๊ณผ ๊ฐ์ต๋๋ค.
์์ ๋ด ์๊ฒฌ์ ๋ฐ๋ผ .. ๋ํ ์์คํ ์ ํ์ฌ WEBSITE_CONTENTSHARE ์์ฑ๊ณผ ๊ด๋ จํ์ฌ ์ผ๊ด์ฑ์ด ์๋ ๋์์ด ์์ผ๋ฏ๋ก ์ฒ์์ ์ง์ ํ ํ์์กฐ์ฐจ ์๋ค๋ ๊ฒ์ ๋ฐ๊ฒฌํ์ต๋๋ค. ์ผ๋ถ๋ ์ง์ ํ ํ์๊ฐ ์๋ค๊ณ ๋งํ๋ ๋ฐ๋ฉด ๋ค๋ฅธ ์ผ๋ถ๋ ํ์๋ผ๋ ์ค๋ฅ๊ฐ ๋ฐ์ํฉ๋๋ค. ๋ด๊ฐ ๋งํ ์ ์๋ ํ, ์ด ๋์์ ์๋น์ ๋ํด ์ฌ๋ฐ๋ฅด๊ฒ ์๋ํ์ง๋ง(์ฆ, ์๋น๋ฅผ ์ํ ARM ํ ํ๋ฆฟ์ ์ด๊ธฐ์ ์ด ์ค์ ์ด ํ์ํ์ง ์์) ํ๋ ฅ์ ํ๋ฆฌ๋ฏธ์์ ๊ฒฝ์ฐ์๋ ๋ง์ฐฌ๊ฐ์ง์ ๋๋ค. ๊ทธ ํ๋์ ๊ณ ์ณ์ง๊ณ ์์ง๋ง, ์๋ง 1-2๊ฐ์์ด ๊ฑธ๋ฆด ๊ฒ์ ๋๋ค. ๋ฐ๋ผ์ ๊ทธ๋์ ์์์ ๊ณต์ ํ ์ง์นจ(์ฒ์์ ์ค์ ํ ๋ค์ ARM ํ ํ๋ฆฟ์์ ์ ๊ฑฐํ ๊ฒฝ์ฐ)์ ์ ์ฉํ ์ ์์ต๋๋ค.
@paulbatum
- ARM์ ํตํด ๋ฆฌ์์ค๋ฅผ ์ฒ์ ์์ฑํ ๋ WEBSITE_CONTENTSHARE๋ฅผ ์ค์ ํด์ผ ํฉ๋๋ค. ๊ทธ๋ฌ๋ ์ด๊ธฐ ์์ฑ ํ์๋ ARM ํ ํ๋ฆฟ์์ ์ด ์ค์ ์ ์๋ตํด์ผ ํฉ๋๋ค(ํฌํจ๋ ๊ฒฝ์ฐ ARM ํ ํ๋ฆฟ์ ์ถ๊ฐ๋ก ์คํํ๋ฉด ์๊ธฐ์น ์์ ์ฝํ ์ธ ๊ต์ฒด๊ฐ ๋ฐ์ํ ์ ์๊ธฐ ๋๋ฌธ์ ๋๋ค).
ARM ํ ํ๋ฆฟ์ ๋ชฉ์ ์ ์ด๋ฐ ์์ผ๋ก ๊นจ๋ ๊ฒ์ ์๊ณ ์์ต๋๊น?
๊ทธ ํ๋์ ๊ณ ์ณ์ง๊ณ ์์ง๋ง, ์๋ง 1-2๊ฐ์์ด ๊ฑธ๋ฆด ๊ฒ์ ๋๋ค. ๋ฐ๋ผ์ ๊ทธ๋์ ์์์ ๊ณต์ ํ ์ง์นจ(์ฒ์์ ์ค์ ํ ๋ค์ ARM ํ ํ๋ฆฟ์์ ์ ๊ฑฐํ ๊ฒฝ์ฐ)์ ์ ์ฉํ ์ ์์ต๋๋ค.
์ฌ๊ธฐ์ ์ต์ข
์์๋๋ ๊ตฌ์ฑ์ ๋ฌด์์
๋๊น?
์ด ๋ชจ๋ ๊ฒ์ด ์ค์ ๋ก ๋ฐฐํฌ๋๋ฉด ์ ์ ํ ๊ตฌ์ฑ๊ณผ ๊ณต์ ์ผ์ ์ด ํฌํจ๋ Azure/app-service- announcements์ ๋ํ ๋ฐํ๋ฅผ ๋ฐ์ ์ ์์ต๋๊น?
์๋ ํ์ธ์, ์ด๊ฒ์ ๋ํ ์ด๋ค ๋ฐ์ ์ด ์์๋์ง ํ์คํ์ง ์์ต๋๋ค. ๋๋ ์ฌ์ ํ WEBSITE_CONTENTSHARE ํ๋๊ทธ๊ฐ ์๋ ARM ํ ํ๋ฆฟ์ ์ฌ์ฉํ๋ ๋ฐ ์ด๋ ค์์ ๊ฒช๊ณ ์์ต๋๋ค. @paulbatum ARM ํ ํ๋ฆฟ์์ ๊ตฌ์ฑ์ ์ด๋ป๊ฒ ์๋ตํ ์ ์์ต๋๊น? ์๋์ํค๋ ค๋ฉด ๋จ๊ณ๋ฅผ ์์ ํ ๋นํ์ฑํํด์ผ ํ์ต๋๋ค.
@gustavobmichel ์ฃ์กํฉ๋๋ค, ๊ทํ์ ์ง๋ฌธ์ ์ดํดํ์ง ๋ชปํฉ๋๋ค. ARM ํ ํ๋ฆฟ์ JSON์ด๋ฏ๋ก ํ์์ ๋ฐ๋ผ ํธ์งํฉ๋๋ค. ์ฑ ์ค์ ์น์ ์ ์ผ๋ถ๋ก ๋ํ๋ฉ๋๋ค. ์:
"appSettings": [
{
"name": "WEBSITE_CONTENTAZUREFILECONNECTIONSTRING",
"value": "[concat('DefaultEndpointsProtocol=https;AccountName=', variables('storageAccountName'), ';EndpointSuffix=', environment().suffixes.storage, ';AccountKey=',listKeys(resourceId('Microsoft.Storage/storageAccounts', variables('storageAccountName')), '2019-06-01').keys[0].value)]"
},
{
"name": "WEBSITE_CONTENTSHARE",
"value": "[toLower(variables('functionAppName'))]"
},
@paulbatum ์๋ ํ์ธ์, ๋ค์ ์ฐพ์์ฃผ์ ์ ๊ฐ์ฌํฉ๋๋ค. ํ๋ก๊ทธ๋๋ฐ ๋ฐฉ์์ผ๋ก JSON ํ ํ๋ฆฟ์์ ์ค์ ์ ์๋ตํ๋ ๊ฒ์ ๋ํด ์ธ๊ธํ ๊ฒ ๊ฐ์์ ์ ์ง๋ฌธ์ ๋๋ค.
๋ค๋ฅธ ์ฌ๋๋ค์ด ๋งํ๋ฏ์ด ์ด ๋ ๊ฐ์ง ์ค์ ์ด ํ์ํ๋ค๊ณ ์๊ฐํ์ฌ ARM ํ ํ๋ฆฟ์์ ๋ ๊ฐ์ง๋ฅผ ์ ๊ฑฐํ์ต๋๋ค.
๋ค์ดํ์ ์์ด ์ด ๊ธฐ๋ฅ์ ํ ์คํธํ๊ธฐ ์ํด ์ต์ํ์ ์ธํ๋ผ๋ก ํ ์คํธํ ์ ์๋ ๊ฐ๋จํ ํ ์คํธ๋ฅผ ๋ง๋ค์์ต๋๋ค. ๋ฆฌ์์ค ๊ทธ๋ฃน์์ ๋ชจ๋ ๋ฆฌ์์ค๋ฅผ ์ ๊ฑฐํ๊ณ ๋ฆด๋ฆฌ์ค ํ์ดํ๋ผ์ธ์ ์ผ๋ถ๋ก ARM ํ ํ๋ฆฟ์ ์คํํ์ฌ WEBSITE_CONTENTAZUREFILECONNECTIONSTRING, WEBSITE_CONTENTSHARE ๋ฐ WEBSITE_RUN_FROM_PACKAGE ์์ด ๋ฆฌ์์ค๋ฅผ ์์ฑํ์ต๋๋ค.
๋๋ ๋ช ๊ฐ์ง ํ ์คํธ๋ฅผ ์คํํ๊ณ ์ฌ์ ํ ์๋น ๊ณํ์ ์ฌ์ฉํ์ฌ ๋ชจ๋ ์ ์์ ์ผ๋ก ์๋ํฉ๋๋ค. ์ด๋ฒ ์ฃผ์ ํ๋ฆฌ๋ฏธ์ ๋ฑ๊ธ์ผ๋ก ๋ช ๊ฐ์ง ํ ์คํธ๋ฅผ ํ ๊ฒ์ ๋๋ค.
๋ํ ์ด ๋งํฌ์ ๋ฐ๋ผ WEBSITE_ADD_SITENAME_BINDINGS_IN_APPHOST_CONFIG ๊ตฌ์ฑ์ 1๋ก ์ถ๊ฐํ์ต๋๋ค. https://docs.microsoft.com/en-us/azure/app-service/deploy-staging-slots#troubleshoot -swaps
์ฐธ์กฐ์ฉ์ผ๋ก ํ
์คํธ ARM ํ
ํ๋ฆฟ์ ์ฒจ๋ถํ์ต๋๋ค.
azuredeploy.txt
@paulbatum ์๋ ํ์ธ์, ๋ค์ ์ฐพ์์ฃผ์ ์ ๊ฐ์ฌํฉ๋๋ค. ํ๋ก๊ทธ๋๋ฐ ๋ฐฉ์์ผ๋ก JSON ํ ํ๋ฆฟ์์ ์ค์ ์ ์๋ตํ๋ ๊ฒ์ ๋ํด ์ธ๊ธํ ๊ฒ ๊ฐ์์ ์ ์ง๋ฌธ์ ๋๋ค.
๋ค๋ฅธ ์ฌ๋๋ค์ด ๋งํ๋ฏ์ด ์ด ๋ ๊ฐ์ง ์ค์ ์ด ํ์ํ๋ค๊ณ ์๊ฐํ์ฌ ARM ํ ํ๋ฆฟ์์ ๋ ๊ฐ์ง๋ฅผ ์ ๊ฑฐํ์ต๋๋ค.
๋ค์ดํ์ ์์ด ์ด ๊ธฐ๋ฅ์ ํ ์คํธํ๊ธฐ ์ํด ์ต์ํ์ ์ธํ๋ผ๋ก ํ ์คํธํ ์ ์๋ ๊ฐ๋จํ ํ ์คํธ๋ฅผ ๋ง๋ค์์ต๋๋ค. ๋ฆฌ์์ค ๊ทธ๋ฃน์์ ๋ชจ๋ ๋ฆฌ์์ค๋ฅผ ์ ๊ฑฐํ๊ณ ๋ฆด๋ฆฌ์ค ํ์ดํ๋ผ์ธ์ ์ผ๋ถ๋ก ARM ํ ํ๋ฆฟ์ ์คํํ์ฌ WEBSITE_CONTENTAZUREFILECONNECTIONSTRING, WEBSITE_CONTENTSHARE ๋ฐ WEBSITE_RUN_FROM_PACKAGE ์์ด ๋ฆฌ์์ค๋ฅผ ์์ฑํ์ต๋๋ค.
๋๋ ๋ช ๊ฐ์ง ํ ์คํธ๋ฅผ ์คํํ๊ณ ์ฌ์ ํ ์๋น ๊ณํ์ ์ฌ์ฉํ์ฌ ๋ชจ๋ ์ ์์ ์ผ๋ก ์๋ํฉ๋๋ค. ์ด๋ฒ ์ฃผ์ ํ๋ฆฌ๋ฏธ์ ๋ฑ๊ธ์ผ๋ก ๋ช ๊ฐ์ง ํ ์คํธ๋ฅผ ํ ๊ฒ์ ๋๋ค.
๋ํ ์ด ๋งํฌ์ ๋ฐ๋ผ WEBSITE_ADD_SITENAME_BINDINGS_IN_APPHOST_CONFIG ๊ตฌ์ฑ์ 1๋ก ์ถ๊ฐํ์ต๋๋ค. https://docs.microsoft.com/en-us/azure/app-service/deploy-staging-slots#troubleshoot -swaps
์ฐธ์กฐ์ฉ์ผ๋ก ํ ์คํธ ARM ํ ํ๋ฆฟ์ ์ฒจ๋ถํ์ต๋๋ค.
azuredeploy.txt
WEBSITE_CONTENTAZUREFILECONNECTIONSTRING์ ์ ์ธํ๊ณ ํจ์๋ ์ฑ ์ฝ๋๋ฅผ ๊ฐ์ ธ์ฌ ์์น๋ฅผ ์ด๋ป๊ฒ ์๋๊น?
๋์์ด ๋๋ค๋ฉด ๋ค์์ ๊ฒฐ์ ํ์ต๋๋ค.
๋๋ ์ด๊ฒ๊ณผ ๊ด๋ จํ์ฌ ๋ง์ ํ ์คํธ๋ฅผ ์ํํ์ผ๋ฉฐ ์ด๊ฒ์ด ์๋ํ์ง ์์ ์ค์์ ํธ๋ฆฌ๊ฑฐํ๊ณ ์ฝ๋๊ฐ ์๋ ์์น ๋ฑ์ ํผํ๊ธฐ ์ํ ์ต์์ ๊ตฌ์ฑ์ฒ๋ผ ๋ณด์์ต๋๋ค. ๋ํ ARM ํ ํ๋ฆฟ ์ธ๋ถ์์ ์ด๋ฌํ ์ค์ ์ ๊ด๋ฆฌํ ํ์๊ฐ ์์ต๋๋ค. (๊ทธ ์์ ์์ ARM ํ ํ๋ฆฟ์ ์ฌ์ฉํ๋ ๋ฐ ํฐ ์๋ฏธ๊ฐ ์๋ ๊ฒ์ฒ๋ผ ๋๊ปด์ง๋๋ค).
๋ฐฐํฌ๋ WEBSITE_CONTENTAZUREFILECONNECTIONSTRING ๊ฐ์ ์ ํ ์ง์ ํ์ง ์๊ณ ๋ ์๋ํ๋ ๊ฒ ๊ฐ์ง๋ง ์ธ๊ธํ ๋๋ก ์ฝ๋๊ฐ ์๋ ์์น๋ฅผ ์ฐพ์ ์ ์์๊ณ ๋ด ํฐ์ผ์ ์ฒ๋ฆฌํ๋ MS ์ง์ ๋ด๋น์๊ฐ ์ด๊ฒ์ด ๋ฒ๊ทธ์ด๋ฉฐ ํ์ฉ๋์ด์๋ ์ ๋๋ค๊ณ ์ ์ํ๋ ๊ฒ ๊ฐ์์ต๋๋ค. ํ๋ซํผ์ผ๋ก.
๋์์ด ๋๋ค๋ฉด ๋ค์์ ๊ฒฐ์ ํ์ต๋๋ค.
- WEBSITE_CONTENTAZUREFILECONNECTIONSTRING์ ์ฝ๋๋ฅผ ์คํํ ์คํ ๋ฆฌ์ง ๊ณ์ ์ผ๋ก ์ค์
- ํ ํ ํ๋ฆฟ์์ WEBSITE_CONTENTSHARE๋ฅผ ์ ํ ์ง์ ํ์ง ์์(๋ ์ฌ๋กฏ์ ๋ํด ์๋ ์์ฑ๋๋๋ก ํ์ฉ)
- ์น์ฌ์ดํธ_RUN_FROM_ํจํค์ง = 1
๋๋ ์ด๊ฒ๊ณผ ๊ด๋ จํ์ฌ ๋ง์ ํ ์คํธ๋ฅผ ์ํํ์ผ๋ฉฐ ์ด๊ฒ์ด ์๋ํ์ง ์์ ์ค์์ ํธ๋ฆฌ๊ฑฐํ๊ณ ์ฝ๋๊ฐ ์๋ ์์น ๋ฑ์ ํผํ๊ธฐ ์ํ ์ต์์ ๊ตฌ์ฑ์ฒ๋ผ ๋ณด์์ต๋๋ค. ๋ํ ARM ํ ํ๋ฆฟ ์ธ๋ถ์์ ์ด๋ฌํ ์ค์ ์ ๊ด๋ฆฌํ ํ์๊ฐ ์์ต๋๋ค. (๊ทธ ์์ ์์ ARM ํ ํ๋ฆฟ์ ์ฌ์ฉํ๋ ๋ฐ ํฐ ์๋ฏธ๊ฐ ์๋ ๊ฒ์ฒ๋ผ ๋๊ปด์ง๋๋ค).
๋ฐฐํฌ๋ WEBSITE_CONTENTAZUREFILECONNECTIONSTRING ๊ฐ์ ์ ํ ์ง์ ํ์ง ์๊ณ ๋ ์๋ํ๋ ๊ฒ ๊ฐ์ง๋ง ์ธ๊ธํ ๋๋ก ์ฝ๋๊ฐ ์๋ ์์น๋ฅผ ์ฐพ์ ์ ์์๊ณ ๋ด ํฐ์ผ์ ์ฒ๋ฆฌํ๋ MS ์ง์ ๋ด๋น์๊ฐ ์ด๊ฒ์ด ๋ฒ๊ทธ์ด๋ฉฐ ํ์ฉ๋์ด์๋ ์ ๋๋ค๊ณ ์ ์ํ๋ ๊ฒ ๊ฐ์์ต๋๋ค. ํ๋ซํผ์ผ๋ก.
์ด๊ฒ์ ์ ๋ ์ ํํ ์์๋ธ ๊ฒ์ ๋๋ค. ํ์ธํด์ฃผ์ ์ ๊ฐ์ฌํฉ๋๋ค.
๋ด ๊ธฐ๋ฅ์ WEBSITE_CONTENTAZUREFILECONNECTIONSTRING ๋ฐ WEBSITE_RUN_FROM_PACKAGE๋ฅผ ์ถ๊ฐํ ํ ์ ์ฅ์์ ์ก์ธ์คํ๋ ๋ฐ ๋ฌธ์ ๊ฐ ์์ต๋๋ค. ์ด ๋ ๊ฐ์ง ์ค์ ์ functionapp๊ณผ slot ๋ชจ๋์ ์ถ๊ฐํ์ จ๋์?
์ ํํ ์ค๋ฅ๋ Azure Functions ๋ฐํ์์ ์ฐ๊ฒฐํ ์ ์์ต๋๋ค.
์ฒซ ๋ฒ์งธ ๋ฐฐํฌ๋ฅผ ์ํํ ๋ค์ ์ ๋ฒ์ ์ ๋ฐฐํฌํ๋ ค๊ณ ์๋ํ ํ์ ๋๋ค.
๋ด yml ํ์ผ๋ ์ถ๊ฐํ์ต๋๋ค.
yml ํ์ผ.txt
๋ฐฐํฌ.txt
ARM ํ ํ๋ฆฟ๋ ์ ๋ฐ์ดํธํ์ต๋๋ค.
๋ด ๊ธฐ๋ฅ์ WEBSITE_CONTENTAZUREFILECONNECTIONSTRING ๋ฐ WEBSITE_RUN_FROM_PACKAGE๋ฅผ ์ถ๊ฐํ ํ ์ ์ฅ์์ ์ก์ธ์คํ๋ ๋ฐ ๋ฌธ์ ๊ฐ ์์ต๋๋ค. ์ด ๋ ๊ฐ์ง ์ค์ ์ functionapp๊ณผ slot ๋ชจ๋์ ์ถ๊ฐํ์ จ๋์?
์ ํํ ์ค๋ฅ๋ Azure Functions ๋ฐํ์์ ์ฐ๊ฒฐํ ์ ์์ต๋๋ค.
์ฒซ ๋ฒ์งธ ๋ฐฐํฌ๋ฅผ ์ํํ ๋ค์ ์ ๋ฒ์ ์ ๋ฐฐํฌํ๋ ค๊ณ ์๋ํ ํ์ ๋๋ค.
๋ด yml ํ์ผ๋ ์ถ๊ฐํ์ต๋๋ค.
yml ํ์ผ.txt
๋ฐฐํฌ.txtARM ํ ํ๋ฆฟ๋ ์ ๋ฐ์ดํธํ์ต๋๋ค.
๋๋ ๋ ๋ค์ ๊ทธ๊ฒ์ ๊ฐ์ง๊ณ ์๋ค. ์ฌ์ค ๋ด ํ๋ก๋์ ์ฌ๋กฏ์๋ ์๋ฌด๊ฒ๋ ์๊ณ ์คํ ์ด์ง์์ ๋ชจ๋ ๊ฒ์ ๊ต์ฒดํฉ๋๋ค. WEBSITE_CONTENTSHARE๋ฅผ ์ ์ํ๊ฑฐ๋ ์ฝ๋๊ฐ WEBSITE_CONTENTAZUREFILECONNECTIONSTRING์ ์๋ ์ฌ๋ฐ๋ฅธ ์คํ ๋ฆฌ์ง ๊ณ์ ์ ๊ฐ๋ฆฌํค์ง ์์ ๋ ์ด๊ฒ์ ๋ณด์์ต๋๋ค. WEBSITE_CONTENTSHARE๋ก ์๋ฌด ๊ฒ๋ ๊ฐ๋ฆฌํฌ ํ์๊ฐ ์์ต๋๋ค. ์ค์ ๋ก ํ๊ฒฝ ๋ณ์์ WEBSITE_CONTENTSHARE๋ฅผ ์ถ๊ฐํ๊ธฐ ๋๋ฌธ์ ์ธ๊ธํ ์ค๋ฅ๋ฅผ ๋ณธ ๊ฒ ๊ฐ์ต๋๋ค. ์ ์๋์ด ์์ง ์์์ง ํ์ธํ์ญ์์ค.
์๋ ํ์ธ์ @mslot , ์ ๋ฐฐํฌ์ ๋ฌธ์ ๊ฐ ์์๋ ๊ฒ ๊ฐ์ต๋๋ค. ์ด ์ค๋ ๋ https://stackoverflow.com/a/56205917 ์์ Azure DevOps์์ ์ค์ ํ๋ ๋ฐฉ๋ฒ์ ๋ํด ์ฝ์๊ธฐ ๋๋ฌธ์ zipDeploy๋ก ์ค์ ํ์ต๋๋ค. ํ์ค ๋ฐฐํฌ๋ก ๋ณ๊ฒฝํ ํ ๋ชจ๋ ๊ฒ์ด ์๋ํ๋ ๊ฒ ๊ฐ์ต๋๋ค. ๋น์ ์ ๋์์ ์ฃผ์ ์ ๊ฐ์ฌํฉ๋๋ค.
๊ทธ ํ๋์ ๊ณ ์ณ์ง๊ณ ์์ง๋ง, ์๋ง 1-2๊ฐ์์ด ๊ฑธ๋ฆด ๊ฒ์ ๋๋ค.
์ด ๋ฌธ์ ์ ๋ํ ์ ๋ฐ์ดํธ๊ฐ ์์ต๋๊น? ์ด์ ์๋น์ ํ๋ฆฌ๋ฏธ์ ๋์์ด ์ผ์นํฉ๋๊น? ์ด๊ธฐ ARM ๋ฐฐํฌ ๋ฐ ํ์ ๋ฐฐํฌ์์ WEBSITE_CONTENTSHARE๋ฅผ ์๋ตํ ์ ์์ต๋๊น? ์ด๊ฒ์ด ์คํ ์ด์ง ์ฌ๋กฏ์ ์ด๋ค ์ํฅ์ ์ค๋๊น? ๋งํฌํ ์ ๋ฐ์ดํธ๋ ๋ฌธ์๋ ์ง์นจ์ด ์์ต๋๊น?
์ฐ๋ฆฌ๋ ๋ณธ์ง์ ์ผ๋ก @thomaswilkin ๋ฐ @mslot ๊ณผ ๋์ผํ ์ ๊ทผ ๋ฐฉ์์ผ๋ก ์ด๋ฃจ์ด์ก์ต๋๋ค . WEBSITE_CONTENTSHARE๊ฐ ์ค์ ๋์ง ์์๊ธฐ ๋๋ฌธ์ ๋ฐํ์์ด ํ์ผ์ ์ฐพ์ ์์น๋ฅผ ์ด๋ป๊ฒ ์๋์ง ์์ง ํ์คํ์ง ์์ต๋๋ค.
์๋
ํ์ธ์. ์ด๋ป๊ฒ ํ ์ ์๋์ง ๋ชจ๋ฅด๊ฒ ์ง๋ง ๋ฐฐํฌํ ์ ์๋ ๊ฒ ๊ฐ์ต๋๋ค.
WEBSITE_CONTENTSHARE๊ฐ ์๋ WEBSITE_CONTENTAZUREFILECONNECTIONSTRING. ํฌํธ์ ํตํด์๋ ๊ตฌ์ฑ์ ์ค์ ํ๋ ๋์ ์ค๋ฅ๊ฐ ๋ฐ์ํ์ต๋๋ค.
Failed to update web app settings: Required parameter WEBSITE_CONTENTSHARE is missing.
ํจ์ ์ฑ์ ๊ฐ์ ํ์ด์ง์ ๋ค์ ๊ฒฝ๊ณ ๋ฉ์์ง๋ ํ์๋ฉ๋๋ค. Storage is not configured, Function scaling will be limited. Click to learn more.
ํ๋ฆฌ๋ฏธ์ ํ๋์ผ๋ก ์คํ ์ค์
๋๋ค. ํจ์ ์ฑ์ ๊ตฌ์ฑํ๋ ๋ฐฉ๋ฒ์ ๋ํ ์
๋ฐ์ดํธ ๋๋ ๊ณต์ ์ง์นจ์ด ์์ต๋๊น?
ํ๋ฆฌ๋ฏธ์ ํ๋์ ๊ฒฝ์ฐ(์๋น ํ๋์ ๋ํด 100% ํ์ ํ ์ ์์) ์๋/๋น์๋์ ๋ํ ๋งคํธ๋ฆญ์ค๋ ๋ค์๊ณผ ๊ฐ์ต๋๋ค.
Storage is not configured, Function scaling will be limited
๋ฉ์์ง๊ฐ ํ์๋ฉ๋๋ค.WEBSITE_CONTENTAZUREFILECONNECTIONSTRING
๋ง ์ ๊ณตํ๋ฉด Required parameter WEBSITE_CONTENTSHARE is missing
์คํจํฉ๋๋ค.Storage is not configured, Function scaling will be limited
๋ฉ์์ง๊ฐ ํ์๋ฉ๋๋ค.WEBSITE_CONTENTAZUREFILECONNECTIONSTRING
๋ง ์ ๊ณตํ๋ฉด WEBSITE_CONTENTSHARE
๊ฐ ํ์ํ๋๋ผ๋ ์ฑ๊ณตํฉ๋๋ค(๋์ค์ ์ ๋๋ก ์๋ํ๋ ๊ฒ์ผ๋ก ๋ณด์
๋๋ค).๋ฐ๋ผ์ ํ์ฌ๋ก์๋ ๋ ์๋๋ฆฌ์ค ๋ชจ๋์์ ์๋ํ๋ ๋จ์ผ ARM ํ ํ๋ฆฟ์ ๊ฐ์ง ์ ์๋ ๋ฐฉ๋ฒ์ด ์๋ ๊ฒ ๊ฐ์ต๋๋ค.
Storage is not configured, Function scaling will be limited. Click to learn more
๊ฒฝ๊ณ ๋ฉ์์ง๋ ํ์๋ฉ๋๋ค. Havent์๋ WEBSITE_CONTENTAZUREFILECONNECTIONSTRING ๋๋ WEBSITE_CONTENTSHARE ์น์ฌ์ดํธ๊ฐ ์์ต๋๋ค. Korkiak์ด ์ธ๊ธํ๋ฏ์ด ์
๋ฐ์ดํธ๋๊ฑฐ๋ ๊ณต์ ์ง์นจ์ด ์์ต๋๊น?
์ต๊ทผ์ 4์ฃผ ์ ์ ๋ฐฐํฌ๋ ๊ธฐ์กด Azure Functions์ฉ โโAzure Portal์์ "์ ์ฅ์๊ฐ ๊ตฌ์ฑ๋์ง ์์์ต๋๋ค. ๊ธฐ๋ฅ ํฌ๊ธฐ ์กฐ์ ์ด ์ ํ๋ฉ๋๋ค. ์์ธํ ์์๋ณด๋ ค๋ฉด ํด๋ฆญํ์ธ์."๋ผ๋ ๋ฉ์์ง๊ฐ ํ์๋๊ธฐ ์์ํ์ต๋๋ค. ์ฐ๋ฆฌ๋ WEBSITE_CONTENTAZUREFILECONNECTIONSTRING ๋๋ WEBSITE_CONTENTSHARE๋ฅผ ์ฌ์ฉํ ์ ์ด ์์ผ๋ฉฐ ์ง๊ธ๊น์ง ์ ์๋ํ์ต๋๋ค.
@paulbatum ํฌํธ ์ '์คํ ๋ฆฌ์ง๊ฐ ๊ตฌ์ฑ๋์ง ์์์ต๋๋ค. ๊ธฐ๋ฅ ํ์ฅ์ด ์ ํ๋ฉ๋๋ค'๋ผ๋ ๋ฉ์์ง๊ฐ ํ์๋๊ธฐ ์์ํ ์ดํ๋ก ์ด ๋ฌธ์ ๊ฐ ์ง๋ ๋ฉฐ์น ๋์ ๋ ๋ง์ ํ๋์ ํ๊ณ ์๋ ๊ฒ ๊ฐ์ต๋๋ค. ์ด ๋ชจ๋ ๊ฒ์ ๊ตฌ์ฑํ๋ ์ฌ๋ฐ๋ฅธ ๋ฐฉ๋ฒ์ ๋ํ ์๋ก์ด ์ง์นจ์ด ์์ต๋๊น?
์ด์ ์ ์ ์๋ํ๋ ํ
ํ๋ฆฟ์ ์ฌ์ฉํ์ฌ ๋ช ๊ฐ์ ๋ง์ ์ฒ์์ผ๋ก ์ ๊ธฐ๋ฅ ์ฑ์ ๋ฐฐํฌํ ๋ ์์์ ์ธ๊ธํ ๊ฒ์ฒ๋ผ 'WEBSITE_CONTENTSHARE'๊ฐ ์ฌ๋กฏ ์ค์ ์ค๋ฅ๊ฐ ๋ ์ ์์์ ๋ฐฉ๊ธ ๋ฐ๊ฒฌํ์ต๋๋ค.
ํ
ํ๋ฆฟ์๋ ์ฌ๋กฏ ์ค์ ์ผ๋ก 'WEBSITE_CONTENTSHARE'๊ฐ ์์ผ๋ฉฐ ์์์ ์ธ๊ธํ ๋ค์ ๋ฌธ์์ ๋ฐ๋ผ ํจ์ ์ฑ ๋ฐ ๋ฐฐํฌ ์ฌ๋กฏ ์ฑ ์ค์ ๋ชจ๋์ ์ ์๋์ด ์์ต๋๋ค.
https://nascent.blog/2017/06/27/azure-functions-slots-arm-templates-snags-2-redeploy-causes-unwanted-swap/
์ด ์ค๋ ๋๋ฅผ ์ฝ์ผ๋ฉด ์ฌ๋กฏ ์ค์ ์ด ์ ๊ฑฐ๋๊ณ 'WEBSITE_CONTENTSHARE' ์ค์ ์ ๋ค์ํ ์กฐํฉ์ ์๋ํ์ง๋ง ๋ค๋ฅธ ์ฌ๋๋ค๊ณผ ๋์ผํ ๋์์ ์ป์ง ๋ชปํฉ๋๋ค. ์๋์ ๊ฐ์ด ์ค๋ฅ ์์ด ๋ฐฐํฌํ ์ ์์ต๋๋ค.
ํ ํ๋ฆฟ์์ 'WEBSITE_CONTENTSHARE'๋ฅผ ์ ํ ์ง์ ํ์ง ์์ผ๋ฉด "ํ์ ๋งค๊ฐ๋ณ์ WEBSITE_CONTENTSHARE๊ฐ ์์ต๋๋ค" ์ค๋ฅ๊ฐ ๋ฐ์ํฉ๋๋ค.
๋ฐ๋ผ์ ์ด ํ์ฌ ๋์์ผ๋ก ํ๋ก๋์ ์ ๋ฐฐํฌํ ์ ์์ผ๋ฏ๋ก ์ค์ ์ค์ ์ด ์ด๋ป๊ฒ ๋์ด์ผ ํ๋์ง์ ๋ํ ์ ๋ฐ์ดํธ๋ฅผ ๋ฐ์ ์ ์์ต๋๋ค.
์๋ ํ์ธ์ ์ฌ๋ฌ๋ถ, ํผ๋์ ๋๋ ค ์ฃ์กํฉ๋๋ค. ๊ตฌ์ฑ๊ณผ ๊ด๋ จํ์ฌ ํ์ฅ ๋ฌธ์ ๊ฐ ๋ฐ์ํ ์ ์๋ ์๊ธฐ๋ฅผ Azure Portal์์ ์๋ ค์ฃผ๋๋ก ํ์ฌ ํ๋ช ํ๊ฒ ํ๋ ค๊ณ ํ์ง๋ง ๋ ผ๋ฆฌ๋ฅผ ์์ฌ์ ์ด์ ์ฌ๋๋ค์๊ฒ ๊ฒฝ๊ณ ๊ฐ ์๋ชป ํ์๋ ์ ์์ต๋๋ค. ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ๊ธฐ ์ํด ๋ ธ๋ ฅํ๊ณ ์์ง๋ง ๊ทธ ๋์ ์ฑ์ ํ์ฅ ๋ฌธ์ ๊ฐ ๋ฐ์ํ ์ ์๋์ง ํ์ธํ๋ ๋ฐฉ๋ฒ์ ๋ค์๊ณผ ๊ฐ์ต๋๋ค.
ํ๋ ฅ์ ํ๋ฆฌ๋ฏธ์ ๋๋ ์๋น๋ก ์คํ ์ค์ธ ๊ฒฝ์ฐ ๋ค์ ๊ธฐ์ค ์ค ํ๋๋ฅผ ์ถฉ์กฑํด์ผ ํฉ๋๋ค.
๋๋
๋ค์ ์ฃผ๊น์ง ์ด ๋ฌธ์ ๋ฅผ ์์ ํด์ผ ํฉ๋๋ค.
@ehamai ๊ฐ์ฌ ์คํํฉ๋๊น : https://docs.microsoft.com/en-us/azure/azure-functions/run-functions-from -๋ฐฐํฌ ํจํค์ง)
์๋ ํ์ธ์ Elliott, ๋งค์ฐ ์ ์ํ ๋ต๋ณ์ ๊ฐ์ฌ๋๋ฆฝ๋๋ค.
๊ทธ๋์ ๋ช
ํํํ๊ธฐ ์ํด :
ARM ํ
ํ๋ฆฟ์์ ์๋น ๊ณํ์ผ๋ก ๋ฐฐํฌํ๊ณ ๋ฐฐํฌ ์ฌ๋กฏ์ ์ฌ์ฉํ์ง๋ง zip/ํจํค์ง๋ฅผ ์ฌ์ฉํ์ง ์๋ ๊ฒฝ์ฐ
ํ๋ก๋์ ๋ฐ ์คํ ์ด์ง ์ฌ๋กฏ ๋ชจ๋์์ WEBSITE_CONTENTAZUREFILECONNECTIONSTRING ๋ฐ WEBSITE_CONTENTSHARE๋ฅผ ๋ชจ๋ ์ ์ํด์ผ ํฉ๋๋ค.
WEBSITE_CONTENTSHARE๋ฅผ ๋ ์ฌ๋กฏ ์ค ํ๋์ ๋ฐฐํฌ ์ฌ๋กฏ ์ค์ ์ผ๋ก ์ ์ํ๋ฉด ์ ๋ฉ๋๋ค.
์น์ ํ๋
์ค์จ์ธ
๋ณด๋ธ ์ฌ๋: Elliott Hamai [email protected]
๋ณด๋ธ ๋ ์ง: 2020๋
6์ 22์ผ 17:31
๋ฐ๋ ์ฌ๋: MicrosoftDocs/azure-docs [email protected]
์ฐธ์กฐ: Owain Winterbone(ITCS - ์ง์) [email protected] ; ์๋ [email protected]
์ ๋ชฉ: Re: [MicrosoftDocs/azure-docs] WEBSITE_CONTENTSHARE๋ ์ง์์ ๋ฐ๋ผ ์ฌ์ฉํด์๋ ์ ๋ฉ๋๋ค(#36458).
๊ฒฝ๊ณ : ์ด ์ด๋ฉ์ผ์ UEA ์์คํ ์ธ๋ถ์์ ์จ ๊ฒ์ ๋๋ค. ๋ณด๋ธ ์ฌ๋์๊ฒ ๊ธฐ๋ํ๊ณ ๋ด์ฉ์ด ์์ ํ๋ค๋ ๊ฒ์ ์๊ณ ์์ง ์๋ ํ ๋งํฌ๋ ์ฒจ๋ถ ํ์ผ์ ํด๋ฆญํ์ง ๋ง์ญ์์ค.
์๋ ํ์ธ์ ์ฌ๋ฌ๋ถ, ํผ๋์ ๋๋ ค ์ฃ์กํฉ๋๋ค. ๊ตฌ์ฑ๊ณผ ๊ด๋ จํ์ฌ ํ์ฅ ๋ฌธ์ ๊ฐ ๋ฐ์ํ ์ ์๋ ์๊ธฐ๋ฅผ Azure Portal์์ ์๋ ค์ฃผ๋๋ก ํ์ฌ ํ๋ช ํ๊ฒ ํ๋ ค๊ณ ํ์ง๋ง ๋ ผ๋ฆฌ๋ฅผ ์์ฌ์ ์ด์ ์ฌ๋๋ค์๊ฒ ๊ฒฝ๊ณ ๊ฐ ์๋ชป ํ์๋ ์ ์์ต๋๋ค. ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ๊ธฐ ์ํด ๋ ธ๋ ฅํ๊ณ ์์ง๋ง ๊ทธ ๋์ ์ฑ์ ํ์ฅ ๋ฌธ์ ๊ฐ ๋ฐ์ํ ์ ์๋์ง ํ์ธํ๋ ๋ฐฉ๋ฒ์ ๋ค์๊ณผ ๊ฐ์ต๋๋ค.
ํ๋ ฅ์ ํ๋ฆฌ๋ฏธ์ ๋๋ ์๋น๋ก ์คํ ์ค์ธ ๊ฒฝ์ฐ ๋ค์ ๊ธฐ์ค ์ค ํ๋๋ฅผ ์ถฉ์กฑํด์ผ ํฉ๋๋ค.
๋๋
โ
์ด ์ค๋ ๋์ ๊ฐ์
ํ๊ธฐ ๋๋ฌธ์ ์ด ๋ฉ์์ง๋ฅผ ๋ฐ๊ณ ์์ต๋๋ค.
์ด ์ด๋ฉ์ผ์ ์ง์ ๋ต์ฅํ๊ณ GitHub https://eur01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2FMicrosoftDocs%2Fazure-docs%2Fissues%2F36458%23issuecomment-647631943&data์์ ํ์ธํ์ธ์. = 02% 7C01 % 7Co.winterbone % 40uea.ac.uk % 7Cecd3322262374fb9ffb608d816c9ad12 % 7Cc65f8795ba3d43518a070865e5d8f090 % 7C0 % 7C0 % 7C637284402737046987 ๋ฐ SDATA = woJvSwWrHgKQIV3xQ8QX3vIOULv6ZNfn5wln4tPn3EA % 3D ๋ฐ ์์ฝ = 0 ๋๋ ๊ฑฐ๋ถ https://eur01.safelinks.protection.outlook.com/?url= HTTPS % 3A % 2F % 2Fgithub.com % 2Fnotifications % 2Funsubscribe - ์ธ์ฆ์ %์ 2FAGFS4PC23VOJOEKS6ESN2C3RX6BM5ANCNFSM4IJGDPBQ ๋ฐ ๋ฐ์ดํฐ = 02ํผ์ผํธ 7C01 % 7Co.winterbone % 40uea.ac.uk % 7Cecd3322262374fb9ffb608d816c9ad12 % 7Cc65f8795ba3d43518a070865e5d8f090 % 7C0 % 7C0 % 7C637284402737056941 ๋ฐ SDATA = StHshC6EtV6A % 2BLi3g7x0xfNx56POAYnwjMWihEf % 2BCYM % 3D ๋ฐ ์์ฝ = 0 .
@briandunnington - ๋ค, ํผ๋์ ๋๋ ค ์ฃ์กํฉ๋๋ค.
@OwainWin - ๊ทํ์ ์ง๋ฌธ์ ํผ๋์ค๋ฌ์ ์ฃ์กํฉ๋๋ค. WEBSITE_CONTENTSHARE๋ฅผ ํฌํจํด์ผ ํ๋์ง ์ฌ๋ถ๋ฅผ ๋ฌผ์์ต๋๋ค.
ํ๋ก๋์ ๋ฐ ์คํ ์ด์ง ์ฌ๋กฏ ๋ชจ๋์ WEBSITE_CONTENTAZUREFILECONNECTIONSTRING ๋ฐ WEBSITE_CONTENTSHARE๊ฐ ์ ์๋์ด ์์ด์ผ ํ๋ค๊ณ ์๊ฐํฉ๋๋ค.
@ehamai ์๊ฒ ๊ฐ์ฌ๋๋ฆฝ๋๋ค. ์ด ์ค๋ ๋์ ์๋ ์ง๋ฌธ์ผ๋ก ๋์๊ฐ๋๋ค. ์ด๊ธฐ ๋ฐ ํ์ ๋ฐฐํฌ์ ์๋ํ๋ ARM ํ ํ๋ฆฟ์์ WEBSITE_CONTENTAZUREFILECONNECTIONSTRING ๋ฐ WEBSITE_CONTENTSHARE๋ฅผ ์ค์ ํ๊ธฐ ์ํ ์ง์นจ์ ๋ฌด์์ ๋๊น? ํ๋ฆฌ๋ฏธ์ ํ๋์ ๊ฒฝ์ฐ(์๋น ํ๋์ ๋ํด 100% ํ์ ํ ์๋ ์์ง๋ง ๋์ผํ๋ค๊ณ ์๊ฐํจ) ์๋/๋น์๋์ ๋ํ ๋งคํธ๋ฆญ์ค๋ ๋ค์๊ณผ ๊ฐ์ต๋๋ค.
๋ฐ๋ผ์ ํ์ฌ๋ก์๋ ๋ ์๋๋ฆฌ์ค ๋ชจ๋์์ ์๋ํ๋ ๋จ์ผ ARM ํ ํ๋ฆฟ์ ๊ฐ์ง ์ ์๋ ๋ฐฉ๋ฒ์ด ์๋ ๊ฒ ๊ฐ์ต๋๋ค.
์๋ ์๋ฆฌ์
๋ ๋ฒ์งธ ์์ ์ WEBSITE_CONTENTSHARE๊ฐ ์ ํ๋ฆฌ์ผ์ด์
์ค์ ์ผ๋ก ์ ์๋์ด์ผ ํ์ง๋ง ๋ฐฐํฌ ์ฌ๋กฏ ์ค์ ์ด ๋์ด์๋ ์ ๋๋ค๋ ๊ฒ์
๋๋ค.
๋ฐ๋ผ์ ์๋์ ๊ฐ์ด ํฑ์ด ์์ด์ผ ํฉ๋๋ค.
[cid:[email protected]]
๋ณด๋ธ ์ฌ๋: Elliott Hamai [email protected]
๋ณด๋ธ ๋ ์ง: 2020๋
6์ 22์ผ 18:38
๋ฐ๋ ์ฌ๋: MicrosoftDocs/azure-docs [email protected]
์ฐธ์กฐ: Owain Winterbone(ITCS - ์ง์) [email protected] ; ๋ฉ์
@noreply.github.com
์ ๋ชฉ: Re: [MicrosoftDocs/azure-docs] WEBSITE_CONTENTSHARE๋ ์ง์์ ๋ฐ๋ผ ์ฌ์ฉํด์๋ ์ ๋ฉ๋๋ค(#36458).
๊ฒฝ๊ณ : ์ด ์ด๋ฉ์ผ์ UEA ์์คํ ์ธ๋ถ์์ ์จ ๊ฒ์ ๋๋ค. ๋ณด๋ธ ์ฌ๋์๊ฒ ๊ธฐ๋ํ๊ณ ๋ด์ฉ์ด ์์ ํ๋ค๋ ๊ฒ์ ์๊ณ ์์ง ์๋ ํ ๋งํฌ๋ ์ฒจ๋ถ ํ์ผ์ ํด๋ฆญํ์ง ๋ง์ญ์์ค.
@OwainWin https://eur01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2FOwainWin&data=02%7C01%7Co.winterbone%40uea.ac.uk%7Cafedec71775f4f42d84108d8 %7C0%7C637284442665654874&sdata=x3m7KNp6hoQJMCqfb4aEUSNnmE6E5N7geDa8Vu7AUaw%3D&reserved=0 - ์ฃ์กํฉ๋๋ค. ๊ทํ์ ์ง๋ฌธ์ด ํผ๋์ค๋ฝ์ต๋๋ค. WEBSITE_CONTENTSHARE๋ฅผ ํฌํจํด์ผ ํ๋์ง ์ฌ๋ถ๋ฅผ ๋ฌผ์์ต๋๋ค.
ํ๋ก๋์ ๋ฐ ์คํ ์ด์ง ์ฌ๋กฏ ๋ชจ๋์ WEBSITE_CONTENTAZUREFILECONNECTIONSTRING ๋ฐ WEBSITE_CONTENTSHARE๊ฐ ์ ์๋์ด ์์ด์ผ ํ๋ค๊ณ ์๊ฐํฉ๋๋ค.
โ
๋น์ ์ด ์ธ๊ธ๋์๊ธฐ ๋๋ฌธ์ ์ด๊ฒ์ ๋ฐ๋ ๊ฒ์
๋๋ค.
์ด ์ด๋ฉ์ผ์ ์ง์ ๋ต์ฅํ๊ณ GitHub https://eur01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2FMicrosoftDocs%2Fazure-docs%2Fissues%2F36458%23issuecomment-647674267&data์์ ํ์ธํ์ธ์. = 02ํผ์ผํธ 7C01 % 7Co.winterbone % 40uea.ac.uk % 7Cafedec71775f4f42d84108d816d2f967 % 7Cc65f8795ba3d43518a070865e5d8f090 % 7C0 % 7C0 % 7C637284442665664832 ๋ฐ SDATA = ctK99d4qO2YuIN % 2F07lwuHC0wNut % 2Fx8LjgLd7v55rTAM % 3D ๋ฐ ์์ฝ = 0 ๋๋ ๊ฑฐ๋ถ https://eur01.safelinks.protection.outlook.com /?url=https%3A%2F%2Fgithub.com%2Fnotifications%2Funsubscribe-auth%2FAGFS4PEPPJE7NN6RO5D4SSLRX6JGNANCNFSM4IJGDPBQ&data=02%7C01%7Co.winterbone%40uea.ac.uk%7Cafedec71775f4f42d84108d816d2f967%7Cc65f8795ba3d43518a070865e5d8f090%7C0%7C0%7C637284442665664832&sdata=wXaMW%2Fx% 2B5RXDtrfiQgHeZYtpc%2BhLyI9w6f9ut9NTFjM%3D&reserved=0 .
@paulbatum
- ARM์ ํตํด ๋ฆฌ์์ค๋ฅผ ์ฒ์ ์์ฑํ ๋ WEBSITE_CONTENTSHARE๋ฅผ ์ค์ ํด์ผ ํฉ๋๋ค. ๊ทธ๋ฌ๋ ์ด๊ธฐ ์์ฑ ํ์๋ ARM ํ ํ๋ฆฟ์์ ์ด ์ค์ ์ ์๋ตํด์ผ ํฉ๋๋ค(ํฌํจ๋ ๊ฒฝ์ฐ ARM ํ ํ๋ฆฟ์ ์ถ๊ฐ๋ก ์คํํ๋ฉด ์๊ธฐ์น ์์ ์ฝํ ์ธ ๊ต์ฒด๊ฐ ๋ฐ์ํ ์ ์๊ธฐ ๋๋ฌธ์ ๋๋ค).
ARM ํ ํ๋ฆฟ์ ๋ชฉ์ ์ ์ด๋ฐ ์์ผ๋ก ๊นจ๋ ๊ฒ์ ์๊ณ ์์ต๋๊น?
๊ทธ ํ๋์ ๊ณ ์ณ์ง๊ณ ์์ง๋ง, ์๋ง 1-2๊ฐ์์ด ๊ฑธ๋ฆด ๊ฒ์ ๋๋ค. ๋ฐ๋ผ์ ๊ทธ๋์ ์์์ ๊ณต์ ํ ์ง์นจ(์ฒ์์ ์ค์ ํ ๋ค์ ARM ํ ํ๋ฆฟ์์ ์ ๊ฑฐํ ๊ฒฝ์ฐ)์ ์ ์ฉํ ์ ์์ต๋๋ค.
์ฌ๊ธฐ์ ์ต์ข ์์๋๋ ๊ตฌ์ฑ์ ๋ฌด์์ ๋๊น?
์ด ๋ชจ๋ ๊ฒ์ด ์ค์ ๋ก ๋ฐฐํฌ๋๋ฉด ์ ์ ํ ๊ตฌ์ฑ๊ณผ ๊ณต์ ์ผ์ ์ด ํฌํจ๋ Azure/app-service- announcements์ ๋ํ ๋ฐํ๋ฅผ ๋ฐ์ ์ ์์ต๋๊น?
์ด๊ฒ์ ์ฐ๋ฆฌ์๊ฒ ํฐ ์ฅ์ ๋ฌผ์ ๋๋ค. ๋์ผํ ARM ํ ํ๋ฆฟ์ ์ฌ์ฉํ์ฌ ๊ธฐ์กด ๋ฆฌ์์ค ๊ทธ๋ฃน์ ๋ฐฐํฌํ๋ ๋ฐ ์ฌ์ฉํ ์ ๋ฆฌ์์ค ๊ทธ๋ฃน์ ๋ฐฐํฌํ ์ ์์ด์ผ ํฉ๋๋ค. ์ฐ๋ฆฌ๋ ์ข ๋ ๋ง์ ์ปจํ ์คํธ๋ฅผ ์ ๊ณตํ๋ ๋ฐ ๋์์ด ๋๋๋ก ARM ํ ํ๋ฆฟ์ ์ ์ฒด ๋ชจ๋์์ ๊ตฌ์ฒด์ ์ผ๋ก ์คํํฉ๋๋ค.
ํ์ฌ ARM ํ ํ๋ฆฟ์ ๋ค์๊ณผ ๊ฐ์ต๋๋ค.
{
"apiVersion": "2016-08-01",
"type": "Microsoft.Web/sites",
"name": "[variables('functionAppName')]",
"location": "[variables('defaultLocation')]",
"kind": "functionapp",
"properties": {
"serverFarmId": "[resourceId('Microsoft.Web/serverfarms', variables('functionAppName'))]"
},
"resources": [
{
"name": "slotconfignames",
"type": "config",
"apiVersion": "2016-08-01",
"dependsOn": [
"[resourceId('Microsoft.Web/sites', variables('functionAppName'))]"
],
"properties": {
"appSettingNames": [
"SomeSlotSpecificSetting"
]
}
},
{
"name": "staging",
"type": "slots",
"apiVersion": "2016-08-01",
"location": "[variables('defaultLocation')]",
"dependsOn": [
"[resourceId('Microsoft.Web/serverfarms', variables('functionAppName'))]",
"[resourceId('Microsoft.Web/sites', variables('functionAppName'))]"
],
"properties": {
"serverFarmId": "[resourceId('Microsoft.Web/serverfarms', variables('functionAppName'))]",
"siteConfig": {
"appSettings": [
{
"name": "AzureWebJobsStorage",
"value": "[ourapp.storageConnectionString(listkeys(resourceId('Microsoft.Storage/storageAccounts', variables('storageResourceName')), '2015-05-01-preview').key1, variables('storageResourceName'))]"
},
{
"name": "AzureWebJobsDashboard",
"value": "[ourapp.storageConnectionString(listkeys(resourceId('Microsoft.Storage/storageAccounts', variables('storageResourceName')), '2015-05-01-preview').key1, variables('storageResourceName'))]"
},
{
"name": "SomeSetting__Foo",
"value": "[parameters('someSettings').foo]"
},
{
"name": "SomeSetting__Bar",
"value": "[parameters('someSettings').bar]"
},
{
"name": "WEBSITE_CONTENTAZUREFILECONNECTIONSTRING",
"value": "[ourapp.storageConnectionString(listkeys(resourceId('Microsoft.Storage/storageAccounts', variables('storageResourceName')), '2015-05-01-preview').key1, variables('storageResourceName'))]"
},
{
"name": "WEBSITE_CONTENTSHARE",
"value": "[toLower(variables('functionAppName'))]"
},
{
"name": "FUNCTIONS_EXTENSION_VERSION",
"value": "~3"
},
{
"name": "FUNCTIONS_WORKER_RUNTIME",
"value": "dotnet"
},
{
"name": "SomeSlotSpecificSetting",
"value": "abc 123"
},
{
"name": "WEBSITE_RUN_FROM_PACKAGE",
"value": "1"
}
]
}
}
}
],
"dependsOn": [
"[resourceId('Microsoft.Storage/storageAccounts', variables('storageResourceName'))]",
"[resourceId('Microsoft.Web/serverfarms', variables('functionAppName'))]"
]
}
๋ค์ ์ธ๋ถ ์ ๋ณด๋ฅผ ๊ธฐ๋กํด ๋์ญ์์ค. ํ๋ก๋์ ์ฌ๋กฏ์ด ์๋๋ผ _์คํ ์ด์ง ์ฌ๋กฏ์์_ ๊ตฌ์ฑ์ ์ง์ ํ๊ณ ์์ต๋๋ค. ์ด๋ฅผ ํตํด ์ฐ๋ฆฌ๋ ๋จผ์ ์คํ ์ด์ง ์ฌ๋กฏ์ ์ ์ค์ (๋ฐ ๊ธฐ์กด ์ค์ ์ ๋ํ ์ ๋ฐ์ดํธ)์ ๋ฐฐํฌํ ์ ์์ต๋๋ค. ๋ฐ๋ผ์ DevOps ํ์ดํ๋ผ์ธ์ ๋ค์์ ์ํํฉ๋๋ค.
๊ทธ๋ฌ๋ ๋ฌธ์ ๋ WEBSITE_CONTENTSHARE
๊ฐ ARM ํ
ํ๋ฆฟ ๋ด๋ถ์ ์ค์ ๋์ด ์๊ธฐ ๋๋ฌธ์ 2๋จ๊ณ ์งํ(์ค์์ด ๋ฐ์ํ๊ธฐ ์ ์) ํ๋ก๋์
์ฌ๋กฏ๊ณผ ์คํ
์ด์ง ์ฌ๋กฏ์ด ์ฆ์ ์ ๋ฒ์ ์ ์ ํ๋ฆฌ์ผ์ด์
์ ์ฌ์ฉํ๋ค๋ ๊ฒ์
๋๋ค. ๋๋ ์ด๊ฒ์ด ์ฌ๋๋ค์ด "์๋ํ์ง ์์ ์ค์ ์์
"์ด๋ผ๊ณ ๋งํ ๋ ๋งํ๋ ๊ฒ์ด๋ผ๊ณ ์๊ฐํฉ๋๋ค.
์ฐ๋ฆฌ๋ ARM ํ ํ๋ฆฟ์์ ์์ฐ ์ฌ๋กฏ ์ค์ ์ _DO NOT_ ์ง์ ํ๊ณ ์ถ์ง ์์ผ๋ฉฐ ARM ํ ํ๋ฆฟ ์คํ์ ๊ฒฐ๊ณผ๋ก ์์ฐ ์ฌ๋กฏ ์ค์ ์ด ์ ๊ฑฐ๋๋ ๊ฒ์ _DO NOT_ ์ํฉ๋๋ค. ์ ์ฒด ๋ชจ๋์์ ARM ํ ํ๋ฆฟ์ ๋ฐฐํฌํ๋ ๋ฐฉ์์ ํ๋ก๋์ ์ฌ๋กฏ์ ๋ํ ์ค์ ์ ์ง์ ํ๋ฉด ๋ช ์์ ์ผ๋ก ์ง์ ๋์ง ์์ ๋ชจ๋ ์ค์ ์ด ์๋์ผ๋ก ์ ๊ฑฐ๋๋ค๋ ๊ฒ์ ๋๋ค.
์ด ๋ชจ๋ ๊ฒ์ด ์๋ฏธ๊ฐ ์๊ธฐ๋ฅผ ๋ฐ๋๋๋ค. ๋ฐํ์์ด ๋ชจ๋ ์๋๋ฆฌ์ค์์ ๊ฐ์ ์์ฑํ๊ณ ๋ ์ด์ "์๋ํ์ง ์์ ์ค์"์ผ๋ก ์ด์ด์ง์ง ์๊ธฐ๋ฅผ ๋ฐ๋ผ๋ฉฐ ํ์ฌ ARM ํ
ํ๋ฆฟ์์ WEBSITE_CONTENTSHARE
๋ฅผ ์ ๊ฑฐํ๋ ค๊ณ ํฉ๋๋ค.
์๋ ํ์ธ์. ์ ๋ ๋ฐฐํฌ ์ฌ๋กฏ์ ์ฃผ์ ๊ฐ๋ฐ์์ด๋ฉฐ WEBSITE_CONTENTSHARE ๋ฐ WEBSITE_CONTENTAZUREFILECONNECTIONSTRING ์ค์ ๊ณผ ๊ด๋ จ๋ ๊ทํ์ ์ฐ๋ ค ์ฌํญ์ ํด๊ฒฐํด ๋๋ฆฌ๊ฒ ์ต๋๋ค.
๊ณต์ ์ง์นจ์ ๋ค์๊ณผ ๊ฐ์ต๋๋ค.
WEBSITE_CONTENTAZUREFILECONNECTIONSTRING: ์ฝํ ์ธ ์ ์ฅ์ azure ํ์ผ์ ์ฌ์ฉํ๊ณ ์์์ ์ฑ ์๋น์ค์ ์๋ฆฌ๋ฏ๋ก ํญ์ ์ค์ ํด์ผ ํฉ๋๋ค.
WEBSITE_CONTENTSHARE:
๊ทํ์ ์ฐ๋ ค ์ฌํญ์ด ํด๊ฒฐ๋๊ธฐ๋ฅผ ๋ฐ๋๋๋ค!
@shubDhond ์ ๋ง ๊ฐ์ฌํฉ๋๋ค. ๋ฌธ์์ ๋ํ ๊ณต์ ์ ๋ฐ์ดํธ๋ฅผ ๋ฐ์ ์ ์์ต๋๊น?
WEBSITE_CONTENTAZUREFILECONNECTIONSTRING๋ง ์ ๊ณตํ๋ ๊ฒฝ์ฐ Windows ์๋น ๊ณํ์ ์ํ @shubDhond WEBSITE_CONTENTSHARE๊ฐ ๋๋ฝ๋์๋ค๋ arm ํ
ํ๋ฆฟ ๋ฐฐํฌ๋ฅผ ํตํด ์ค๋ฅ๊ฐ ๋ฐ์ํฉ๋๋ค.
์ฌ๋กฏ์ ์ฌ์ฉํ ํ์๊ฐ ์์ต๋๋ค. ๋ ๋ค ์๋ตํ๋ฉด ๋ฐฐํฌ๊ฐ ์งํ๋์ง๋ง "์ ์ฅ์๊ฐ ๊ตฌ์ฑ๋์ง ์์์ต๋๋ค. ๊ธฐ๋ฅ ํ์ฅ์ด ์ ํ๋ฉ๋๋ค"๋ผ๋ ๊ฒฝ๊ณ ๊ฐ ํ์๋ฉ๋๋ค.
.net ํต์ฌ ์ฐฝ ์๋น ๊ณํ์ ์ฌ์ฉํ๊ณ ์๋ ๋ ๊ฐ์ง ๋งค๊ฐ๋ณ์์ ๋ํ ์๋น ๊ณํ์ ๋ํ ์ง์นจ์ ๋ฌด์์ ๋๊น?
๊ฐ๊ฒ! ๋๋ ๋ํ์ด ์ค๋ฅ๊ฐ ๋ฐ์ํฉ๋๋ค. ์ธ์ ์์ ๋๋์?
์๋น ๋ฐ ํ๋ ฅ์ ๊ณํ์ ๋ํด ๋์ผํ ๋ฌธ์ ๊ฐ ์์ต๋๋ค. ์๋ํ๋ ๋ฐฐํฌ์ ๋ง์ ๋ฌธ์ ๊ฐ ๋ฐ์ํ๊ณ ์์ต๋๋ค.
Microsoft.Web/sites
์์ฑ(siteConfig, appSettings)์์ ์ง์ ์ค์ ์ ๋ฐฐํฌํ ๋ Premium์ ๋ํด WEBSITE_CONTENTSHARE
๋ฅผ ์๋ตํ๋ ๋ฐ ์ฑ๊ณตํ์ง๋ง Microsoft.Web/sites/config
์ฌ์ฉํ์ฌ ์ค์ ์ ๋ณ๋์ ๋ฆฌ์์ค๋ก ์ง์ ํ ๋๋ ๊ทธ๋ ์ง ์์ต๋๋ค "type": "config"
.
@shubDhond ์ด ๋ฌธ์ ๋ ํ์คํ ํด๊ฒฐ๋์ง ์์์ต๋๋ค. Windows ์๋น ๊ณํ์์ WEBSITE_CONTENTAZUREFILECONNECTIONSTRING๋ง ์๊ณ WEBSITE_CONTENTSHARE ์์ด ํ ํ๋ฆฟ์ ๋ฐฐํฌํ๋ฉด "WEBSITE_CONTENTSHARE๊ฐ ์์ต๋๋ค" ์ค๋ฅ๊ฐ ๋ฐ์ํฉ๋๋ค.
Azure DevOps์์ App Service ๋ฐฐํฌ ์์ ์ ์ฌ์ฉํ๋ ค๊ณ ํ๊ณ WEBSITE_CONTENTAZUREFILECONNECTIONSTRING๋ง ์ค์ ํ๋ฉด HTTP 400 ์ค๋ฅ๋ ์์ฑ๋ฉ๋๋ค.
์๋น ๊ณํ์ Azure Function ์ฑ ์๋ํ๋ ํ์ฌ ์์ ํ ์ค๋จ๋์์ต๋๋ค.
@clawrenceks ์ ๋์ผํ ๋ฌธ์ ๊ฐ
์ฐ๋ฆฌ๋ ๋ํ @clawrenceks์ ๊ฐ์ ๋ฌธ์ ๋ฅผ ๊ฒช๊ณ ์์ต๋๋ค.
๋ํ Azure Portal์ ํตํด WEBSITE_CONTENTSHARE
์์ด WEBSITE_CONTENTAZUREFILECONNECTIONSTRING
๋ง ์ค์ ํ ์ ์์ต๋๋ค. WEBSITE_RUN_FROM_PACKAGE
1๋ก ์ค์ ํ์ต๋๋ค.
๋ํ ARM ํ
ํ๋ฆฟ ๋ฐฐํฌ ๋ชจ๋๋ฅผ Complete
๋ก ์ค์ ํ์ ๋ ์ด๊ฒ์ด ์ด๋ป๊ฒ ์๋ํ๋์ง ์ ๋ชจ๋ฅด๊ฒ ์ต๋๋ค. ์์ฑ๋ ์ฑ ์ค์ WEBSITE_CONTENTSHARE
์ ์ ๊ฑฐ๋์ง ์์ต๋๊น?
๋๋ถ๋ถ์ ์ฌ๋๋ค์ฒ๋ผ ์ฐ๋ฆฌ๋ ๊ธธ์ ์์ต๋๋ค.
์ด์ ARM ํ
ํ๋ฆฟ์ด Windows ์๋น ๊ณํ์ ํจ์ ์ฑ์ ์ฑ๊ณต์ ์ผ๋ก ๋ฐฐํฌํ์ต๋๋ค. ๋ฐฐํฌ ์ Storage is not configured, Function scaling will be limited. Click to learn more
๋ฉ์์ง๊ฐ ๋ ์ด์ ํ์๋์ง ์์ต๋๋ค. ์ฌ๋กฏ ์ค์๋ ์์๋๋ก ์๋ํฉ๋๋ค.
์ด ๊ณผ์ ์์ ์ป์ ์ฃผ์ ๊ฒฐ๊ณผ๋ ๋ค์๊ณผ ๊ฐ์ต๋๋ค.
ํ์ฌ WEBSITE_CONTENTAZUREFILECONNECTIONSTRING
๋ฐ WEBSITE_CONTENTSHARE
์ ํ๋ฆฌ์ผ์ด์
์ค์ ์์ด Azure Function ์ฑ์ด ์๋ ๊ฒฝ์ฐ ์ด ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ๋ ์ ์ผํ ๋ฐฉ๋ฒ์ WEBSITE_CONTENTAZUREFILECONNECTIONSTRING
์ค์ ์ ์ฑ ์๋น์ค ์์ฑ์ ์ผ๋ถ๋ก ์์ต๋๋ค.
๋ฆฌ์์ค ์์ฑ์ ์ผ๋ถ๋ก WEBSITE_CONTENTAZUREFILECONNECTIONSTRING
๋ฅผ ์ ์๋ฆฌ์ ๋๋ ๊ฒ์ด ํต์ฌ์
๋๋ค. ARM์ ์ฌ์ฉํ ๋ ๋ด ๋ฐ๊ฒฌ์ Microsoft.Web/sites
๋ฆฌ์์ค ์ ํ์ ์ฌ์ฉํ์ฌ ๊ธฐ๋ณธ ์ฑ ์๋น์ค ๋ฐฐํฌ ์ค์ ์ฑ ์ค์ ์ผ๋ก ๋ฐฐํฌํด์ผ ํ๋ค๋ ๊ฒ์
๋๋ค. ์ ํ๋ฆฌ์ผ์ด์
์ค์ ์ ๋ฐฐํฌํ๊ธฐ ์ํด ARM ํ
ํ๋ฆฟ์ Microsoft.Web/sites/config
์ ๋ณ๋ ๋ฆฌ์์ค ์ ํ์ด ์์ผ๋ฉด ์๋ํ์ง ์์ต๋๋ค.
๋ด ARM ํ
ํ๋ฆฟ์ WEBSITE_CONTENTSHARE
์ค์ ์ ํฌํจํ์ง ์์ต๋๋ค. ์ด๊ฒ์ ๋ด ARM ํ
ํ๋ฆฟ์ด ๋ฐฐํฌ๋ ๋ ๋ฐํ์์ ์ํด ์์ฑ๋ฉ๋๋ค. ์ด๊ฒ์ ๋ฐฐํฌ๊ฐ ์ ์๋ํ๊ณ ์๋ค๋ ์ ํธ์
๋๋ค. ์ฌ๊ธฐ์ ์ค๋ช
๋ ์ ๊ทผ ๋ฐฉ์์ ์ฌ์ฉํ๋ฉด ์ด๊ธฐ ๋ฆฌ์์ค๋ฅผ ๋ฐฐํฌํ ๋ค์ WEBSITE_CONTENTSHARE
์ค์ ๊ณผ ๊ด๋ จ๋ ์ค๋ฅ๋ฅผ ์์ ํ์ง ์๊ณ ํ
ํ๋ฆฟ์ ์ฌ๋ฌ ๋ฒ ๋ค์ ๋ฐฐํฌํ ์ ์์ต๋๋ค.
์ ์๊ฒ ๋ณ๋์ ํต์ฌ ์๊ตฌ ์ฌํญ์ ํ๋ก๋์ ์ฌ์ดํธ ์์ฉ ํ๋ก๊ทธ๋จ ์ค์ ์ด ์ด๊ธฐ ๋ฆฌ์์ค ์์ฑ ์ค์๋ง ๋ฐฐํฌ๋์ด์ผ ํ๋ค๋ ๊ฒ์ด์์ต๋๋ค. ์๋ก์ด(๋ฏธ๋์) ์ ํ๋ฆฌ์ผ์ด์ ์ค์ ์ ํ๋ก๋์ ์ฌ์ดํธ๋ก ๊ฐ์ ธ์ค๊ณ ์ถ์๋ ์ ์ผํ ๋ฐฉ๋ฒ์ ์ฌ๋กฏ ์ค์์ ํตํ๋ ๊ฒ์ ๋๋ค. ์ด๋ฅผ ๋ฌ์ฑํ๊ธฐ ์ํด ARM ํ ํ๋ฆฟ์ ๋ค์์ ์ฒ๋ฆฌํ๋ ๋ช ๊ฐ์ง ๋ก์ง์ ์ถ๊ฐํ์ต๋๋ค.
1) ARM ํ ํ๋ฆฟ์ ์ฑ ์ค์ ์ ์ด๊ธฐ ์ฌ์ดํธ ์์ฑ ์ค์๋ง ํ๋ก๋์ ์ฌ์ดํธ์ ๋ฐฐํฌ๋๋ฉฐ ํฅํ ๋ฐฐํฌ์ ์ผ๋ถ๋ก ํ๋ก๋์ ์ฌ์ดํธ์ ์ถ๊ฐ๋์ง ์์ต๋๋ค.
2) ARM ํ ํ๋ฆฟ์ ์ฑ ์ค์ ์ ํญ์ ์คํ ์ด์ง ์ฌ๋กฏ์ ์ ์ฉ๋ฉ๋๋ค. ๊ทธ๋ฐ ๋ค์ ์ค์ ์ฌ๋กฏ์ ์ฌ์ฉํ์ฌ ํ๋ก๋์ ์ผ๋ก ์ค์๋ฉ๋๋ค.
์์ ์ฌํญ์ ๋ฌ์ฑํ๊ธฐ ์ํด ๋ด ARM ํ ํ๋ฆฟ์ ํ๋ก๋์ ์ฌ์ดํธ์ ๋ํ appSettings๋ ์กฐ๊ฑด๋ถ์ ๋๋ค. ๋ฆฌ์์ค๊ฐ ์์ผ๋ฉด ํ ํ๋ฆฟ์ ์ ์ฒด ์ฑ ์ค์ ์งํฉ์ ๋ฐฐํฌํฉ๋๋ค(์ฑ ์๋น์ค๊ฐ ์ฌ๋ฐ๋ฅด๊ฒ ์์ฑ๋์๋์ง ํ์ธํ๊ธฐ ์ํด). ๋ฆฌ์์ค๊ฐ ์ด๋ฏธ ์์ฑ๋ ๊ฒฝ์ฐ ์ฑ ์ค์ ์ ๋ํด null์ ์ ๋ฌํฉ๋๋ค. ๋ฐฐํฌ ์ ํ๋ก๋์ ์ฌ์ดํธ์ ์ด๋ฏธ ์๋ ์ฑ ์ค์ ์ด ์ ์ง๋ฉ๋๋ค.
์ ๋ ์์ ํท๊ฐ๋ฆฝ๋๋ค. ์๋น ๊ณํ์ WEBSITE_CONTENTAZUREFILECONNECTIONSTRING์ด ํ์ํ์ง๋ง ์ฌ๋กฏ์ ๊ณ ์ ๋๋๋ก ๊ตฌ์ฑํ ์ ์๋ ๊ฒฝ์ฐ ๊ฐ๊ฐ ๋ค๋ฅธ ์คํ ๋ฆฌ์ง ๊ณ์ ์์ ์คํํ๋ ค๋ ์คํ ์ด์ง ์ฌ๋กฏ๊ณผ ํ๋ก๋์ ์ฌ๋กฏ ๊ฐ์ ์ด๋ป๊ฒ ๊ตํํด์ผ ํฉ๋๊น? ์ด๊ฒ์ Web Apps์์ ์์ํ ๊ฐ๋ฅํ์ผ๋ฉฐ ๋งค์ฐ ์ผ๋ฐ์ ์ธ ์ฌ์ฉ ์ฌ๋ก์ฒ๋ผ ๋ณด์ ๋๋ค. ๋ด๊ฐ ๋งํ ์ ์๋ ํ, ์ค์ํ ๊ธฐ๋ฅ ์ฑ ์ฌ๋กฏ์ ์ด ๋ฌธ์ ๊ฐ ํด๊ฒฐ๋ ๋๊น์ง ์์ ํ ์์๋์๊ฑฐ๋ ์ฌ์ฉํ ์ ์์ต๋๋ค. ๋๊ตฐ๊ฐ๊ฐ ๋์๊ฒ ์ / ๋ด๊ฐ ์ด๋ป๊ฒ ํ๋ ธ๋์ง ๋งํด์ฃผ๊ธฐ๋ฅผ ์ํฉ๋๋ค! ์๋ ๋ฌธ์ ๊ฐ ARM ํ ํ๋ฆฟ์ ์ฐธ์กฐํ๋ค๋ ๊ฒ์ ์๊ณ ์์ง๋ง ์ด๊ฒ์ ํจ์ฌ ๋ ๊ด๋ฒ์ํ ๋ฌธ์ ์ฒ๋ผ ๋ณด์ ๋๋ค.
Elastic Premium ํ๋์์๋ ๋์ผํ ๋ฌธ์ ์
๋๋ค. ๋์ผํ WEBSITE_CONTENTSHARE๋ฅผ ์ฌ์ฉํ์ฌ ๋์ผํ ARM ํ
ํ๋ฆฟ์ ์คํ
์ด์ง ์ฌ๋กฏ์ ๋ฐฐํฌํ๋ฉด ํ๋ก๋์
์ฌ๋กฏ์ด ์คํ
์ด์ง ์ฌ๋กฏ๊ณผ ๋์ผํ ๋ฐ์ด๋๋ฆฌ๋ฅผ ๊ฐ๋ฆฌํต๋๋ค.
2020-09-08T10:15:32.8385428Z ##[debug]Set-AzWebAppSlot : Operation returned an invalid status code 'BadRequest'
์ค๋ฅ๊ฐ ๋ฐ์ํ๋ฏ๋ก WEBSITE_CONTENTSHARE ์์ด๋ ๋ฐฐํฌํ ์ ์์ต๋๋ค.
๋๋ ํผ๋์ค๋ฝ๋ค. ์ณ์ ์ผ์ ๋ฌด์์ ๋๊น?
ํ๋ ฅ์ ํ๋ฆฌ๋ฏธ์ ๋๋ ์๋น๋ก ์คํ ์ค์ธ ๊ฒฝ์ฐ ๋ค์ ๊ธฐ์ค ์ค ํ๋๋ฅผ ์ถฉ์กฑํด์ผ ํฉ๋๋ค.
WEBSITE_CONTENTAZUREFILECONNECTIONSTRING ๋ฐ WEBSITE_CONTENTSHARE๊ฐ ์ ์๋์ด ์์ด์ผ ํฉ๋๋ค.
๋๋
zip/package์์ ์คํ์ ์ฌ์ฉํ๋ ๊ฒฝ์ฐ "WEBSITE_USE_ZIP", "WEBSITE_RUN_FROM_ZIP" ๋๋ "WEBSITE_RUN_FROM_PACKAGE"๊ฐ ๋น์ด ์์, 0 ๋๋ 1์ด ์๋ ๋ค๋ฅธ ๊ฐ์ผ๋ก ์ค์ ๋์ด ์์ด์ผ ํฉ๋๋ค.
@ehamai๊ฐ ๋งํ๋ฏ์ด?
๋๋
WEBSITE_CONTENTAZUREFILECONNECTIONSTRING: ์ฝํ ์ธ ์ ์ฅ์ azure ํ์ผ์ ์ฌ์ฉํ๊ณ ์์์ ์ฑ ์๋น์ค์ ์๋ฆฌ๋ฏ๋ก ํญ์ ์ค์ ํด์ผ ํฉ๋๋ค.
WEBSITE_CONTENTSHARE:
์ด์ ํ๋๋ฅผ ์๋ ์์ฑํ๊ณ ์๋ํ์ง ์์ ์ค์์ ๋ฐฉ์งํ๋ ์๋น sku ํจ์์ ๋ํ ARM ํ ํ๋ฆฟ์์ ์ด๊ฒ์ ์์ ํ ์๋ตํ ์ ์์ต๋๋ค. ์ด๋ ์ดํ์ ์์ฑ ๋ฐ ์ ๋ฐ์ดํธ์ ๋์ผํ ํ ํ๋ฆฟ์ ์ฌ์ฉํ ์ ์์์ ์๋ฏธํฉ๋๋ค.
๋ถํํ๋ Elastic Premium ์คํค์์๋ ์ด WEBSITE_CONTENTSHARE ์๋ ์์ฑ์ด ๊ฐ๊ณผ๋์ด ์์ฑ ์ค์ ํฌํจํ๊ณ ์ ๋ฐ์ดํธ ์ค์ ์๋ตํด์ผ ํ๋ ๋ฌธ์ ๊ฐ ์ฌ์ ํ ์กด์ฌํ๋ค๋ ๊ฒ์ ๋ฐ๊ฒฌํ์ต๋๋ค. ์ด ๋ฌธ์ ์ ๋ํ ์์ ์ฌํญ์ ํ์ฌ ์ถ์๋๊ณ ์์ผ๋ฉฐ ์ฐ๋ฆฌ ํจ๋์ ์ ๋ฐ์ ๋๋ฌํ์ต๋๋ค. ์์ผ๋ก 2์ฃผ ์์ ์์ ํ ๋กค์์๋์ด์ผ ํ๋ฉฐ ๊ทธ ์ดํ์๋ ์ง์นจ์ด sku ๋ชจ๋์ ๋ํด ๋์ผํ๋ฉฐ WEBSITE_CONTENTSHARE๋ ์์ ํ ์๋ต๋ ์ ์์ต๋๋ค.
๊ทํ์ ์ฐ๋ ค ์ฌํญ์ด ํด๊ฒฐ๋๊ธฐ๋ฅผ ๋ฐ๋๋๋ค!
@shubDhond๊ฐ ๋งํ๋ฏ์ด?
๋ ์ฌ๋กฏ ์ค ํ๋์ WEBSITE_CONTENTSHARE(์ค์ ๋ก ํ๋ก๋์ ์ฌ๋กฏ์๋ ์ฑ ์ค์ ์ด ์ ํ ์์)๊ฐ ์๋ ์๋น ๊ณํ์ ํ๋๋น ๊ธฐ๋ฅ์ด ์๊ณ ๋ค์๊ณผ ๊ฐ์ ๊ฒฝ์ฐ ์ค๋ฅ๊ฐ ๋ฐ์ํฉ๋๋ค.
๊ทธ๋ฐ ๋ค์ WEBSITE_CONTENTSHARE๊ฐ ํ์ํ๋ค๊ณ ์๋ ค์ค๋๋ค. ์ด์ ํ๋ก๋์ ์ฌ๋กฏ์ ๋ํ ๊ณต์ ๋ฅผ ์์ฑํ ์ ์๋ ๊ฒ๊ณผ ๊ฐ์ต๋๋ค. ๋๋ WEBSITE_CONTENTAZUREFILECONNECTIONSTRING์ ์ ๊ฑฐํ๋ ค๊ณ ์๋ํ์ง ์์๋ค. ์๋ํ๋ฉด ์ด ์ค๋ ๋๋ @ehamai๋ฅผ ์ ์ธํ๊ณ ๊ทธ๊ฒ์ ํ์ง ๋ง๋ผ๊ณ ๋งํ๊ณ ์๊ธฐ ๋๋ฌธ์ "WEBSITE_RUN_FROM_PACKAGE"๋ฅผ ํ๋ฉด ๋ด๊ฐ ๊ทธ๊ฒ์ ํ ์ ์๋ค๊ณ ์๋ ค์ค๋ค.
์ฌ๋ฏธ์๋ ์ ์ ์ด ์ค์ ์ผ๋ก ์คํ๋๋ ํจ์๊ฐ ์์ง๋ง ~3 ๋์ ~2 ๋ฐํ์์ผ๋ก ์๋ํ๊ณ ์๋ค๋ ๊ฒ์
๋๋ค. ~3 ๋ฐ ๋ฐฐํฌ ์ฌ๋กฏ์ ๋ฌธ์ ๊ฐ ์์ต๋๊น?
์ด๊ฒ์ ๋งค์ฐ ํผ๋์ค๋ฝ์ต๋๋ค.
์ด ์๋ฐ์ ์ธ ์ฌ๋กฏ ์ค์์ด ๋ฌด์์ด๋ ๊ฐ์ ์ด WEBSITE_
๋ณ์๋ฅผ ๋ชจ๋ ์์ฑํด์ผ ํ๋ฏ๋ก ์ฌ๊ธฐ ์ ์์ ๋ฐ๋ผ ํ์๋ ARM์ ์ง์ ์์ฑํด์ผ ํ๋ฏ๋ก ๋งค์ฐ ๋ฌด์ญ
์ด์ ๋ํ ์ ๋ฐ์ดํธ๊ฐ ์์ต๋๊น?
Microsoft ์ง์์์ "WEBSITE_CONTENTSHARE" ์์ฑ์ ์ค์ ํด์ผ ํ๋ค๋ ์กฐ์ธ๋ ๋ฐ์์ต๋๋ค. ์ฌ๋กฏ ์ค์ ์ผ๋ก ์ค์ ํ ์ ์๋ ๊ฒฝ์ฐ ์ด๋ ๋น๋ ํ์ดํ๋ผ์ธ ๋ฐ ARM ํ ํ๋ฆฟ์ ๋งค์ฐ ๋ฌธ์ ๊ฐ ๋ฉ๋๋ค. ์กฐ์ธ ๋ถํ๋๋ฆฝ๋๋ค!
์ ๋ ๋์ํฉ๋๋ค. ์ด์ ์ฌ๊ธฐ์์ ์ฌ๋กฏ์ ์ฌ์ฉํ๋ ๋ฐฉ๋ฒ์ ๋ํด ์ค๋ช ํ ์๊ฐ์ ๋๋ค!
์ ๋ ๋์ํฉ๋๋ค. ์ด ์ค๋ ๋๋ 15๊ฐ์ ์ ์ ์์๋์์ผ๋ฉฐ ์์ง ์์ ์ ์ธ ํด๊ฒฐ ๋ฐฉ๋ฒ์ด ์์ต๋๋ค.
์ ๋ขฐํ ์ ์๋ ์๋ฃจ์
์ผ๋ก ์ด ๋ฌธ์ ๊ฐ ์ ๋๋ก ํด๊ฒฐ๋ ๋๊น์ง ์ฌ๋กฏ์ ์ฌ์ฉํ ์ ์์ต๋๋ค. ์ฌ๋กฏ์ ํ์์ ์ธ ๊ธฐ๋ฅ์ด์ง๋ง ์์ ์ ์ด์ด์ผ ํฉ๋๋ค.
์๋ ํ์ธ์ ์ฌ๋ฌ๋ถ,
์ฌ๊ธฐ์ ์๋ต์ด ์ง์ฐ๋ ์ ์ ๋ํด ๋งค์ฐ ์ ๊ฐ์ค๋ฝ๊ฒ ์๊ฐํฉ๋๋ค. ์ด ์ค๋ ๋๋ ์ ๋๋ก ๋ชจ๋ํฐ๋ง๋์ง ์์์ต๋๋ค.
ํผ๋์ ํด๊ฒฐํ๊ธฐ ์ํด ์์ @clawrenceks์์ ์ค๋ช ํ ๋์์ ํ์ฌ๋ก์๋ ์ ํํฉ๋๋ค. Azure Files ์คํ ๋ฆฌ์ง๊ฐ ์์ง ๊ตฌ์ฑ๋์ง ์์ ์ฌ์ดํธ์ ๊ฒฝ์ฐ WEBSITE_CONTENTAZUREFILECONNECTIONSTRING ๋ฐ WEBSITE_CONTENTSHARE๋ฅผ ๋ชจ๋ ์ ๊ณตํด์ผ ํฉ๋๋ค. ์ด๋ฌํ ํญ๋ชฉ์ด ์ ๊ณต๋๊ณ ์ฑ์ด ์ด์ Azure Files์์ ์คํ๋๋๋ก ๊ตฌ์ฑ๋๋ฉด ์ดํ์ ํ ํ๋ฆฟ์์ WEBSITE_CONTENTSHARE๋ฅผ ์๋ตํ์ฌ ์ค์๋ก ์ฝํ ์ธ ๋ฅผ ๊ต์ฒดํ๋ ๊ฒ์ ๋ฐฉ์งํ ์ ์์ต๋๋ค.
API๊ฐ ํ์ฌ ์๋ํ๋ ๋ฐฉ์์ ์ฌ์ดํธ ์์ฑ('Microsoft.Web/sites' ๋ฆฌ์์ค)์์ WEBSITE_CONTENTSHARE๊ฐ ์๋ WEBSITE_CONTENTAZUREFILECONNECTIONSTRING์ ์ ๊ณตํ๋ฉด ์ฝํ ์ธ ๊ณต์ ๊ฐ ์์ฑ๋๋ ๊ฒ์ ๋๋ค. ๊ทธ๋ฌ๋ ๊ธฐ์กด 'Microsoft.Web/sites' ๋ฆฌ์์ค ๋๋ 'Microsoft.Web/sites/config' ๋ฆฌ์์ค๋ฅผ ์ ๋ฐ์ดํธํ ๋ API๋ ์ฑ์ ๋ํ WEBSITE_CONTENTSHARE ๊ฐ์ด ์ด๋ฏธ ์๋์ง ๊ทธ๋ฆฌ๊ณ ์๋์ง ํ์ธํฉ๋๋ค. , ์ค๋ฅ๊ฐ ๋ฐ์ํฉ๋๋ค.
๊ณ ๊ฐ์ด WEBSITE_CONTENTAZUREFILECONNECTIONSTRING์ ์ ๊ณตํ๊ณ ์ฐ๋ฆฌ๊ฐ ๊ณ ๊ฐ์ ์ํด ์๋ก์ด WEBSITE_CONTENTSHARE๋ฅผ ์์ฑํ๋ ๊ฒฝ์ฐ(์ด ๊ณต์ ๊ฐ ์ ๊ฒ์ด๊ธฐ ๋๋ฌธ์ ๋ณธ์ง์ ์ผ๋ก ๊ณ ๊ฐ์ ์ฝํ ์ธ ๋ฅผ ์ญ์ ํ๋ ๊ฒฝ์ฐ) ๊ณ ๊ฐ์ด Azure ํ์ผ๋ก ์ ํํ๋ ๋์ ์ค์๋ก ์ฝํ ์ธ ๋ฅผ ์ง์ฐ๋ ๊ฒ์ ๋ฐฉ์งํ๊ธฐ ์ํ ๊ฒ์ด๋ผ๊ณ ๊ฐ์ ํฉ๋๋ค. ์ฌ์ดํธ๋ ์ด์จ๋ ๊นจ๋ํ ์ํ๋ก ์์ํ๊ณ ์ฝํ ์ธ ๋ฅผ ์ง์ธ ์ํ์ด ์๊ธฐ ๋๋ฌธ์ ์ฌ์ดํธ๋ฅผ ๋ง๋๋ ๋์ ํจ์ฌ ๋ ์์ ํฉ๋๋ค.
ํ๋๋น ํ์ผ์ ์ํ๋ ์ฌ๋ฌ๋ถ ๋ชจ๋์ ํผ๋์ ์ถฉ๋ถํ ์ดํดํ ์ ์์ต๋๋ค. ์ ๋ฐ์ดํธ ์์ ์ด ๊ทํ์ ์ฝํ ์ธ ๋ฅผ ์ง์ฐ์ง ์๋๋ก ์์ ํ๊ฒ ์ ์งํ๋ฉด์ ์ด ๋ฌธ์ ๋ฅผ ๊ฐ์ฅ ์ ํด๊ฒฐํ๋ ๋ฐฉ๋ฒ์ ์๊ฐํด์ผ ํฉ๋๋ค. ํ์ฌ๋ก์๋ Azure ํ์ผ์ด ๊ตฌ์ฑ๋์ด ์์ง ์๊ณ ์ ํํ๋ ค๋ ๋ชจ๋ ์ฌ์ฉ์๋ฅผ ์ํ ์ง์นจ์ผ๋ก ์ด๊ธฐ ์ ํ์ ๋ํด WEBSITE_CONTENTAZUREFILECONNECTIONSTRING ๋ฐ WEBSITE_CONTENTSHARE๋ฅผ ๋ชจ๋ ์ ๊ณตํด์ผ ํฉ๋๋ค. ๊ทธ๋ฌ๋ฉด ์ง์นจ์์ WEBSITE_CONTENTSHARE๋ฅผ ์๋ตํ ์ ์์ต๋๋ค. ์ดํ ํ ํ๋ฆฟ.
์ ๋ฐ์ดํธ ์ฌ๋ก๋ฅผ ์ฒ๋ฆฌํ๋ ๋ฐฉ๋ฒ์ ๋ํ ์ ์์ด ์์ผ๋ฉด ๊ทธ๊ฒ๋ ํฌ๊ฒ ๊ฐ์ฌํ๊ฒ ์ต๋๋ค!
@shubDhond ๋ฐ๋ผ์ ํ๋ก๋์ ์ฌ๋กฏ์ ์ฒซ ๋ฒ์งธ ๋ฐฐํฌ ์ ์ฐ๊ฒฐ ๊ณต์ ์ฑ ์ค์ ์ ๋ฐฐํฌํด์ผ ํ์ง๋ง ๊ทธ ์ดํ์๋ ๋ฐฐํฌํ ํ์๊ฐ ์์ต๋๋ค. ์ด ์์ ์ ์๋์ผ๋ก ์ํํ๋ ๋ฐฉ๋ฒ์ด ์์ต๋๊น? ๋ฆฌ์์ค๊ฐ ARM์ ํตํด ๋ฐฐํฌ๋์๋์ง ๊ฐ์งํฉ๋๊น? ์๋๋ฉด ์ด ์ ๋ณด๋ฅผ ARM์ ์๋์ผ๋ก ์ ๋ฌํด์ผ ํฉ๋๊น( fx๊ฐ ์ด๊ฒ์ด ์ฒซ ๋ฒ์งธ ๋ฐฐํฌ์ธ์ง ์๋ ค์ฃผ๋ ๋งค๊ฐ๋ณ์๋ฅผ ํตํด?
@mslot ๋ถํํ๋ ๋ฆฌ์์ค๊ฐ ์ด๋ฏธ ์กด์ฌํ๋์ง ์ฌ๋ถ๋ฅผ ํ ํ๋ฆฟ ๋ด์์ ๋งํ ์๋ ์์ง๋ง ์ด๊ฒ์ด ๊ฐ๋ฅํด์ผ ํ๋ค๊ณ ์๊ฐํฉ๋๋ค(https://docs.microsoft.com/en-us/azure/azure-resource- manager/templates/template-tutorial-use-conditions) ์ฌ์ดํธ๊ฐ ์ด๋ฏธ Azure Files์ ๋ํด ๊ตฌ์ฑ๋์๋์ง ์ฌ๋ถ๋ฅผ ์๋ ค์ฃผ๋ ํ ํ๋ฆฟ์ ์ ๋ฌ๋ ๋งค๊ฐ ๋ณ์์ ๊ฒฐํฉ๋ฉ๋๋ค. ์ด๋ ์ฌ์ดํธ๋ฅผ ๊ฐ์ ธ์ค๊ณ ์ฑ ์ค์ ์ WEBSITE_CONTENTAZUREFILECONNECTIONSTRING ๋ฐ WEBSITE_CONTENTSHARE๊ฐ ์๋์ง ํ์ธํ์ฌ ๊ฒฐ์ ํ ์ ์์ต๋๋ค.
@mslot ๋ถํํ๋ ๋ฆฌ์์ค๊ฐ ์ด๋ฏธ ์กด์ฌํ๋์ง ์ฌ๋ถ๋ฅผ ํ ํ๋ฆฟ ๋ด์์ ๋งํ ์๋ ์์ง๋ง ์ด๊ฒ์ด ๊ฐ๋ฅํด์ผ ํ๋ค๊ณ ์๊ฐํฉ๋๋ค(https://docs.microsoft.com/en-us/azure/azure-resource- manager/templates/template-tutorial-use-conditions) ์ฌ์ดํธ๊ฐ ์ด๋ฏธ Azure Files์ ๋ํด ๊ตฌ์ฑ๋์๋์ง ์ฌ๋ถ๋ฅผ ์๋ ค์ฃผ๋ ํ ํ๋ฆฟ์ ์ ๋ฌ๋ ๋งค๊ฐ ๋ณ์์ ๊ฒฐํฉ๋ฉ๋๋ค. ์ด๋ ์ฌ์ดํธ๋ฅผ ๊ฐ์ ธ์ค๊ณ ์ฑ ์ค์ ์ WEBSITE_CONTENTAZUREFILECONNECTIONSTRING ๋ฐ WEBSITE_CONTENTSHARE๊ฐ ์๋์ง ํ์ธํ์ฌ ๊ฒฐ์ ํ ์ ์์ต๋๋ค.
์ด ๋ฌธ์ ๊ฐ ๊ณง ํด๊ฒฐ๋๊ธฐ๋ฅผ ๋ฐ๋๋๋ค. ๋ด ์์ ํ๋ฆ์์ ์ฌ๋กฏ ์ฌ์ฉ์ ์ธ๋ชจ ์๊ฒ ๋ง๋ญ๋๋ค. ์์ ํ ์๋ํ๋์ด์ผ ํฉ๋๋ค. ์ด ์๋ฃจ์ ์ ๋ด ๋์ ํดํน ํด๊ฒฐ ๋ฐฉ๋ฒ์ด๋ฉฐ ์น ์ฑ์์ ์๋ํ ๋ ์๊ฐํ๋ ๊ฒ์ ์๋ฏธ๊ฐ ์์ต๋๋ค. ํ๋ก์ ํธ์ ๋ค์ด์ค๋ ๋ค๋ฅธ ์ฌ๋๋ค์๊ฒ "ํ๋ง๋ฒ"์ ๋์ ํ๋ ๊ฒ๊ณผ ๋์ผํ๊ฒ ์๋ํด์ผ ํ๋ ๊ฒ์ ๋ํด ๋ง์ ๋ถ๋ถ์ด ๋ถ๊ธฐ๋๊ธฐ ๋๋ฌธ์ ๋๋ค.
์ด ๋ฌธ์ ๊ฐ ํด๊ฒฐ๋์ด ์ฌ์ฉ์ ์์ํ ์ ์๊ธฐ๋ฅผ ๋ฐ๋๋๋ค. ๋ง์ ์ฌ๋๋ค์ด ์ด ๊ธฐ๋ฅ์ ์ฌ์ฉํ์ง ๋ชปํ๋๋ก ๋ง๋๋ค๊ณ ์๊ฐํฉ๋๋ค.
@mslot ์ด ๋ฌธ์ ์ ๋ํ ๊ทํ์ ๊ณ ํต์ ์์ ํ ์ดํดํ๋ฉฐ ์ด ๋ฌธ์ ๋ฅผ ๋ ๋นจ๋ฆฌ ์๋ณํ์ง ๋ชปํด ์ฃ์กํฉ๋๋ค. ๋ค์ ์ฃผ์ ์ฒ์์ ์ด ๋์์ ๊ตฌํํ ๊ฐ๋ฐ์์ ์ด์ผ๊ธฐํ๊ณ ๊ณ ๊ฐ์ด ์ค์๋ก ์ฝํ ์ธ ์ ๋ํด ๋น ํ๋์ ํ์ผ ๊ณต์ ๋ฅผ ์ฌ์ฉํ๋๋ก ์ด๋ํ ๊ฐ๋ฅ์ฑ์ ๋ฐฉ์งํ ์ ์๋ ์ด ๋ฌธ์ ์ ๋ํ ์์ ํ ์์ ์ฌํญ์ ์ฐพ์ ์ ์๋์ง ํ์ธํ ๊ฒ์ ๋๋ค. ์ ์๋ ์๋ฃจ์ ์ด ์์ผ๋ฉด ์ฌ๊ธฐ์์ ์ ๋ฐ์ดํธํ๊ฒ ์ต๋๋ค.
@shubDhond Azure Files "์ผ๋ถ"๋ฅผ ์ดํดํ์ง ๋ชปํฉ๋๋ค. ๋จผ์ ๋ฐฐํฌ ์ฌ๋กฏ์ ๋ง๋ค๊ณ ์ฌ๊ธฐ์ ๋ฐฐํฌํ ๋ค์ ๊ต์ฒดํ์ฌ Azure DevOps๋ฅผ ์ฌ์ฉํ์ฌ Azure Function ํ๋ก์ ํธ๋ฅผ ๋ฐฐํฌํฉ๋๋ค. "RunFromPackage" ๋ฐฐํฌ ๋ฐฉ๋ฒ์ ์ฌ์ฉํ๊ณ ์๋๋ฐ ํด๋์ StorageAccount๋ฅผ ์ฌ์ฉํ ๋๋ ์๋ํ์ง ์๋ ๊ฒ ๊ฐ์ต๋๋ค. ์ ๋ Azure Files๋ฅผ ์ฌ์ฉํ์ง ์๊ณ ์์ผ๋ฉฐ ๋ ์ฌ๋กฏ์ ๋ํ WEBSITES_CONTENTSHARE ์ค์ ๊ณผ ๊ด๋ จ๋ ๋์ผํ ๋ฌธ์ ๊ฐ ์๋ ๊ฒ ๊ฐ์ต๋๋ค.
์๋ ํ์ธ์ @cannehag ์ด ๋ฌธ์ ์ ๋ํ ์ ๋ฌธ์ ๋ฅผ ์ด์ด ์ฃผ์๊ฒ ์ต๋๊น? ์ฌ๊ธฐ์ ์ค๋ช ๋ ๊ฒ๊ณผ ์ ์ฌํ ์ฆ์์ ์ ๋ฐํ๋ ๊ณ ์ ์ผ๋ก ํ์๋ RunFromPackage ์ฑ ์ค์ ์์ ์ด์ํ ๋์์ด ๋ฐ์ํ ์ ์์ต๋๋ค. ๋ฌธ์ ๊ฐ ๊ด๋ จ์ด ์์ ๊ฐ๋ฅ์ฑ์ด ์์ผ๋ฏ๋ก ์ฌ๊ธฐ์ ํผ๋์ ์ถ๊ฐํ์ง ์๋๋ก ์๋ก์ด ๋ฌธ์ ๋ฅผ ์ ์ํฉ๋๋ค.
๊ฐ์ฅ ์ ์ฉํ ๋๊ธ
@paulbatum
ARM ํ ํ๋ฆฟ์ ๋ชฉ์ ์ ์ด๋ฐ ์์ผ๋ก ๊นจ๋ ๊ฒ์ ์๊ณ ์์ต๋๊น?
์ฌ๊ธฐ์ ์ต์ข ์์๋๋ ๊ตฌ์ฑ์ ๋ฌด์์ ๋๊น?
์ด ๋ชจ๋ ๊ฒ์ด ์ค์ ๋ก ๋ฐฐํฌ๋๋ฉด ์ ์ ํ ๊ตฌ์ฑ๊ณผ ๊ณต์ ์ผ์ ์ด ํฌํจ๋ Azure/app-service- announcements์ ๋ํ ๋ฐํ๋ฅผ ๋ฐ์ ์ ์์ต๋๊น?