Vscode-docker: .NET Core용 톡합 Docker Compose 디버깅

에 λ§Œλ“  2019λ…„ 03μ›” 12일  Β·  15μ½”λ©˜νŠΈ  Β·  좜처: microsoft/vscode-docker

Docker Composeλ₯Ό 톡해 μƒμ„±λœ Docker μ»¨ν…Œμ΄λ„ˆ 디버깅 지원

.NET Debug P2 enhancement

κ°€μž₯ μœ μš©ν•œ λŒ“κΈ€

κ·Έλ™μ•ˆ docker-compose둜 λ””λ²„κΉ…ν•˜λŠ” 방법을 μ•Œκ³  싢은 μ‚¬λžŒμ„ μœ„ν•΄ 이 링크λ₯Ό 여기에 λ‚¨κ²¨λ‘˜ μƒκ°μž…λ‹ˆλ‹€. :) https://www.richard-banks.org/2018/07/debugging-core-in-docker.html : )

λͺ¨λ“  15 λŒ“κΈ€

@philiphoff κ°€ docker-composeλ₯Ό μ‚¬μš©ν•˜μ—¬
이 λ¬Έμ œμ— λŒ€ν•œ 도움이 ν•„μš”ν•˜λ©΄ μ•Œλ €μ£Όμ‹­μ‹œμ˜€.

κ·Έλ™μ•ˆ docker-compose둜 λ””λ²„κΉ…ν•˜λŠ” 방법을 μ•Œκ³  싢은 μ‚¬λžŒμ„ μœ„ν•΄ 이 링크λ₯Ό 여기에 λ‚¨κ²¨λ‘˜ μƒκ°μž…λ‹ˆλ‹€. :) https://www.richard-banks.org/2018/07/debugging-core-in-docker.html : )

이 맀우 ν•„μš”ν•œ κΈ°λŠ₯에 λŒ€ν•œ Pum.

이에 λŒ€ν•œ μž‘μ—…μ΄ μ§„ν–‰λ˜κ³  μžˆμŠ΅λ‹ˆκΉŒ? 그렇지 μ•Šλ‹€λ©΄ μ–΄λ–»κ²Œ λ„μšΈ 수 μžˆμŠ΅λ‹ˆκΉŒ?

@chazt3n μ§€κΈˆμ€ μ•„λ‹ˆμ§€λ§Œ 우리 λ ˆμ΄λ”μ— μžˆμŠ΅λ‹ˆλ‹€. ν˜„μž¬ @philliphoff 와 μ €λŠ” μ£Όμš” 디버깅 λ¦¬νŒ©ν† λ§μ„ ν•˜κ³  μžˆμŠ΅λ‹ˆλ‹€. 주둜 단일 Dockerfile 디버깅을 μ€‘μ‹¬μœΌλ‘œ ν•˜μ§€λ§Œ λͺ¨λΈμ€ ν™•μ‹€νžˆ docker-compose 디버깅을 μ§€μ›ν•©λ‹ˆλ‹€. μ—¬κΈ°μ—μ„œ PR을 λ³Ό 수 μžˆμŠ΅λ‹ˆλ‹€. #1245

@bwateratmsft - ν›Œλ₯­ν•©λ‹ˆλ‹€, κ°μ‚¬ν•©λ‹ˆλ‹€ - ν™•μΈν•΄λ³΄μ„Έμš”

μ—°κ²° 디버거 λͺ¨λΈμ„ μ‚¬μš©ν•  λ•Œ Compose μŠ€μΊν΄λ”© 및 디버깅 μŠ€ν† λ¦¬λ₯Ό κ°œμ„ ν–ˆμŠ΅λ‹ˆλ‹€. μžμ„Έν•œ λ‚΄μš©μ€ 이 도움말 λ¬Έμ„œ( https://code.visualstudio.com/docs/containers/docker-compose)λ₯Ό μ°Έμ‘°ν•˜μ„Έμš”.

1년이 훨씬 λ„˜μ—ˆμŠ΅λ‹ˆλ‹€. 이에 λŒ€ν•œ 일정이 μžˆμŠ΅λ‹ˆκΉŒ? 더 λ‚˜μ€ 지원을 λ°›λŠ” 것이 μ’‹μŠ΅λ‹ˆλ‹€. ν˜„μž¬ .net μ½”μ–΄ 및 마이크둜 μ„œλΉ„μŠ€μ— λŒ€ν•œ Docker 지원은 vscode와 Visual Studio λͺ¨λ‘μ—μ„œ μ—΄μ•…ν•©λ‹ˆλ‹€. Mac용 VSμ—μ„œ 둜컬둜 κ°œλ°œν•  λ•Œ μˆ˜λ§Žμ€ SSL μΈμ¦μ„œ λ¬Έμ œκ°€ λ°œμƒν•©λ‹ˆλ‹€.

vscodeμ—μ„œ 디버깅 μž‘μ—…μ„ μ‹œλ„ν•˜λŠ” 것은 λ§ˆμ΄ν¬λ‘œμ„œλΉ„μŠ€λ₯Ό μ„€κ³„ν•˜λŠ” 것보닀 더 λ³΅μž‘ν•©λ‹ˆλ‹€.

μ•ˆλ…•ν•˜μ„Έμš” @mattjbrent μ €λŠ” VS, VS Code 및 Mac용 VS의 μ»¨ν…Œμ΄λ„ˆ 도ꡬλ₯Ό λ‹΄λ‹Ήν•˜λŠ” μˆ˜μ„ PMμž…λ‹ˆλ‹€. VS Codeμ—μ„œ μ—¬λŸ¬ .NET Core 마이크둜 μ„œλΉ„μŠ€λ₯Ό λ””λ²„κΉ…ν•˜λŠ” 것과 κ΄€λ ¨ν•˜μ—¬ Docker Composeλ₯Ό μ‚¬μš©ν•˜λŠ” 졜근 μ—…λ°μ΄νŠΈλœ μ„€λͺ…μ„œλ₯Ό λ³΄μ…¨μŠ΅λ‹ˆκΉŒ? https://code.visualstudio.com/docs/containers/docker-compose μ—μ„œ 찾을 수 μžˆμŠ΅λ‹ˆλ‹€

κ·€ν•˜ λ˜λŠ” 이 μ£Όμ œμ— 관심이 μžˆλŠ” λ‹€λ₯Έ μ‚¬λžŒμ΄ μ‹œκ°„μ„ λ‚΄μ„œ μ „ν™”λ‘œ μ±„νŒ…ν•  수 μžˆλŠ”μ§€ μ•Œκ³  μ‹ΆμŠ΅λ‹ˆλ‹€. 우리 νŒ€μ΄ ν΄λΌμš°λ“œ λ„€μ΄ν‹°λΈŒ μ•±/λ§ˆμ΄ν¬λ‘œμ„œλΉ„μŠ€λ₯Ό κ΅¬μΆ•ν•˜λŠ” 방법과 κ²ͺκ³  μžˆλŠ” 문제/고좩점을 μ΄ν•΄ν•˜λŠ” 데 30-45뢄이 μ†Œμš”λ  κ²ƒμž…λ‹ˆλ‹€. λ§ˆμ΄ν¬μ—κ²Œ 이메일을 λ³΄λ‚΄μ£Όμ„Έμš”. ν† λ‘ ν•  μ˜μ‚¬κ°€ μžˆλŠ” 경우 [email protected] 으둜 λ¬Έμ˜ν•˜μ„Έμš”.

@BigMorty μ™€μš° 이런 μΉœμ ˆν•œ μ œμ•ˆμ— κ°μ‚¬λ“œλ¦½λ‹ˆλ‹€ - μš°λ¦¬λŠ” "큰 λΉ„μ£Όμ–Ό μŠ€νŠœλ””μ˜€"라고 λΆ€λ₯΄λŠ” .dcproj 파일둜 μƒλ‹Ήνžˆ 운이 μ’‹μ•˜μŠ΅λ‹ˆλ‹€.

.dcprojκ°€ μž‘λ™ν•  κ²ƒμœΌλ‘œ μ˜ˆμƒν–ˆλ˜ λŒ€λ‘œ vs μ½”λ“œμ˜ κ²½ν—˜μ— μ‹€μ œλ‘œ 뛰어듀지 μ•Šμ•˜μŠ΅λ‹ˆλ‹€.

docker-compose with vs codeκ°€ μ‹€μ œλ‘œ μž‘λ™ν•œλ‹€κ³  λ“€μ—ˆμ§€λ§Œ λΆˆν–‰νžˆλ„ μ‹œκ°„μ΄ μ—†μ—ˆμŠ΅λ‹ˆλ‹€. μœ„μ˜ λ¬Έμ„œ 링크λ₯Ό ν™•μΈν•˜κ² μŠ΅λ‹ˆλ‹€. μ΅œμ’… μ‚¬μš©μž κ²½ν—˜μ„ κ°œμ„ ν•˜κΈ° μœ„ν•΄ μ—°λ½ν•˜κ³  λ…Έλ ₯ν•΄ μ£Όμ…”μ„œ κ°μ‚¬ν•©λ‹ˆλ‹€.

컴포즈λ₯Ό μ‚¬μš©ν•˜μ—¬ λ””λ²„κΉ…ν•˜λŠ” 것은 ν™•μ‹€νžˆ κ°€λŠ₯ν•©λ‹ˆλ‹€. 단지 λ³΅μž‘μ„±μ˜ 문제일 λΏμž…λ‹ˆλ‹€. VSCode + Docker ν™•μž₯ + C# ν™•μž₯μ—λŠ” 디버깅에 ν•„μš”ν•œ λͺ¨λ“  것이 μžˆμŠ΅λ‹ˆλ‹€.

VSCode μžμ²΄λŠ” dcprojsλ₯Ό ν¬ν•¨ν•œ ν”„λ‘œμ νŠΈ/μ†”λ£¨μ…˜μ— λŒ€ν•΄ λ³„λ‘œ μ‹ κ²½ 쓰지 μ•ŠλŠ”λ‹€λŠ” 점은 μ£Όλͺ©ν•  κ°€μΉ˜κ°€ μžˆμŠ΅λ‹ˆλ‹€. λ¬Όλ‘  .NET μžμ²΄μ—λŠ” μ—¬μ „νžˆ csprojsκ°€ ν•„μš”ν•©λ‹ˆλ‹€.

μž‘μ„±μ— λŒ€ν•œ 디버깅을 μ„€μ •ν•˜λ €λ©΄ 일반 및 디버그 μž‘μ„± 파일이 ν•„μš”ν•©λ‹ˆλ‹€. λ˜ν•œ λ””λ²„κ·Έν•˜λ €λŠ” 각 μ„œλΉ„μŠ€μ— λŒ€ν•œ μ‹œμž‘ ꡬ성을 μ„€μ •ν•΄μ•Ό ν•©λ‹ˆλ‹€. ν•˜λ‚˜μ˜ F5, VSCode 호좜둜 μ—¬λŸ¬ μ„œλΉ„μŠ€λ₯Ό 디버그할 수 μžˆμŠ΅λ‹ˆλ‹€ . μ €λŠ” @ucheNkadiCode κ°€ ν˜„μž¬ μ–΄λ–»κ²Œ μ‹€μ œλ‘œ 이것을 κ°€λŠ₯ν•˜κ²Œ ν•˜λŠ”μ§€μ— λŒ€ν•œ 보닀 μ² μ €ν•œ κ°€μ΄λ“œλ₯Ό λ§Œλ“€κ³  μžˆλ‹€κ³  λ―ΏμŠ΅λ‹ˆλ‹€.

λ‹΅μž₯을 보내 μ£Όμ‹  @chazt3n μ—κ²Œ κ°μ‚¬λ“œλ¦½λ‹ˆλ‹€. VS μ½”λ“œ Docker ν™•μž₯으둜 Composeλ₯Ό μ‹œλ„ν•œ ν›„ κ·€ν•˜μ˜ ν”Όλ“œλ°±μ„ κΈ°λ‹€λ¦¬κ² μŠ΅λ‹ˆλ‹€. λ‹€μ‹œ λ§ν•˜μ§€λ§Œ, 이 μŠ€λ ˆλ“œμ— μžˆκ±°λ‚˜ 관심이 μžˆλŠ” μ‚¬λžŒμ΄ λ‚˜μ™€ @bwateratmsft μ—κ²Œ μ „ν™”λ₯Ό

λ§ˆμ΄ν¬μ—κ²Œ 이메일을 λ³΄λ‚΄μ£Όμ„Έμš”. ν† λ‘ ν•  μ˜μ‚¬κ°€ μžˆλŠ” 경우 [email protected] 으둜 λ¬Έμ˜ν•˜μ„Έμš”.

@BigMorty @bwateratmsft 여기에

λ‚˜λ³΄λ‹€ 훨씬 더 밝은 λ§Žμ€ μ‚¬λžŒλ“€μ΄ 이 μž‘μ—…μ„ μˆ˜ν–‰ν–ˆμŠ΅λ‹ˆλ‹€. 그리고 이 μž‘μ—…μ„ μˆ˜ν–‰ν•  수 μžˆλŠ” λ§Žμ€ 방법이 있고 μ•„λ§ˆλ„ _right_ 방법도 μžˆμ„ 것이라고 ν™•μ‹ ν•©λ‹ˆλ‹€. κ·ΈλŸ¬λ‚˜ μ•½ ν•œ 달 λ™μ•ˆ 기술 μˆ˜μ€€μ—μ„œ 여기에 νˆ¬μžν•œ κ²°κ³Ό, ν˜„μž¬ λ¬Έμ„œμ™€ κ½€ 일반적인 μ‹œλ‚˜λ¦¬μ˜€μ—μ„œ κ΅¬ν˜„ 사이에 큰 도약이 μžˆλ‹€κ³  λŠλ‚λ‹ˆλ‹€. λ¬Όλ‘  이것은 μ—¬μ „νžˆ ​​_μƒλŒ€μ μœΌλ‘œ_ μƒˆλ‘œμš΄ κ²ƒμ΄λ―€λ‘œ 격차λ₯Ό 이해할 수 μžˆμŠ΅λ‹ˆλ‹€.

λ‚΄κ°€ λ§ν–ˆλ“―μ΄, λ‚˜μ™€ 같은 μœ„μΉ˜μ— μžˆλŠ” μ‚¬λžŒλ“€μ„ λ„μšΈ 수 μžˆλŠ” 의미 μžˆλŠ” λ°©μ‹μœΌλ‘œ 토둠에 κΈ°μ—¬ν•  수 μžˆλ‹€λ©΄ μ±„νŒ…μ„ ν•˜κ²Œ λ˜μ–΄ κΈ°μ©λ‹ˆλ‹€.

μΆ”κ°€ν•˜κ³  μ‹ΆμŠ΅λ‹ˆλ‹€. μ €λŠ” 제 νŒ€μ΄ ν˜„μž¬ κ°œλ°œμ„ μ‹œμž‘ν•˜κ³  μžˆλŠ” μ™„μ „ν•œ κ°œλ… 증λͺ… μž‘μ—…μ„ μˆ˜ν–‰ν•  수 μžˆμ—ˆμŠ΅λ‹ˆλ‹€. λ”°λΌμ„œ λˆ„κ΅°κ°€ μ—¬κΈ°μ—μ„œ 이 μŠ€λ ˆλ“œλ₯Ό μš°μ—°νžˆ λ°œκ²¬ν•˜κ³  μš°λ¦¬κ°€ μ–΄λ–»κ²Œ μ ‘κ·Όν–ˆλŠ”μ§€ μ•Œκ³  μ‹Άλ‹€λ©΄ μ–Έμ œλ“ μ§€ μ—°λ½ν•˜μ‹­μ‹œμ˜€.

기꺼이 μ±„νŒ…μ„ ν•΄μ£Όμ‹  @mattjbrent μ—κ²Œ κ°μ‚¬λ“œλ¦½λ‹ˆλ‹€. 당신이 보낸 이메일도 방금 λ³΄μ•˜μŠ΅λ‹ˆλ‹€. λ‹€μŒμ£Όμ— λ³΄λ‚΄λ“œλ¦¬κ³  μ΄ˆλŒ€ν•˜κ² μŠ΅λ‹ˆλ‹€.

dotnet μ‘μš© ν”„λ‘œκ·Έλž¨(.NET 5.0)의 docker-compose 및 디버깅을 μ‹€ν—˜ν–ˆμœΌλ©° λ‹€μŒ μžμŠ΅μ„œμ—μ„œ μ œλŒ€λ‘œ μž‘λ™ν•©λ‹ˆλ‹€.
https://code.visualstudio.com/docs/containers/docker-compose#_net

결과에 맀우 λ§Œμ‘±ν•©λ‹ˆλ‹€.

이 νŽ˜μ΄μ§€κ°€ 도움이 λ˜μ—ˆλ‚˜μš”?
0 / 5 - 0 λ“±κΈ‰