inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

묻고 답해요

172만명의 커뮤니티!! 함께 토론해봐요.

패스워드 없이 로그인하기 질문 드립니다.

미해결

스프링과 JPA 기반 웹 애플리케이션 개발

안녕하세요 ㅎㅎ 좋은 강의 잘 듣고있습니다. 강의를 따라하다 문제가 발생했습니다. 패스워드 없이 로그인하기에서 콘솔에 찍힌 링크를 복사해서 이동하면 로그인 화면이 나옵니다. 나온 로그인화면에서 로그인을 해야지 logged-in-by-email.html이 나옵니다. 디버깅 해보니까 콘솔의 링크로 이동하면 mainController의 login에서 먼저 걸리더군요 이것때문인것 같습니다 ㅠㅠ 강사님께서 올려주신 완성본이랑 비교를 해봣는데도 뭐가 문젠지 모르겠습니다 ㅠㅠ 도와주세요!

  • spring-boot
  • java
  • spring
  • JPA
  • thymeleaf
전승민 댓글 3 좋아요 0 조회수 252

@GetMapping 질문

미해결

스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술

안녕하세요, 강사님! 정말 친절한 설명 덕분에 이해가 잘 가는거 같습니다! 그런데 혹시 hello라는 url을 요청하면 이번 강의에서 만든 hello함수만을 실행시킬수 있는 이유가 @GetMapping이라는 어노테이션을 사용하는 모든 메서드를 스프링이 확인해 보는것 인가요?? 그리고 혹시, 첫 편에서 말씀하신 강의순서랑 올려주신 강의랑 이름이 맞지 않던데 JPA부터 듣는것이 맞는것 인가요? 아니면 아직 스프링 핵심 원리 및 스프링 mvc등의 강의는 올라오지 않은것 인가요? 감사합니다!

  • spring
  • spring-boot
  • java
  • MVC
dhotksis 댓글 1 좋아요 1 조회수 210

IOU 계산을 위한 Intersection areas 계산 문의

미해결

[개정판] 딥러닝 컴퓨터 비전 완벽 가이드

안녕하세요? IOU의 이해 강의에서 이해되지 않는 부분이 있어 질문 드립니다. Intersection 구역 넓이를 구하기 위해 좌상단 좌표와 우하단 좌표를 구하는 경우에 있어서, Intersection의 좌상단 X좌표는 각 GT, CB 박스의 좌상단 X좌표 중 큰(Max)값을 구하는 건 이해했습니다. 그런데 Intersection 좌상단의 Y좌표를 구할 때 코드를 보면 각 GT, CB 박스의 좌상단 Y좌표 중 큰(Max)값을 구하는게 잘 이해가 안됩니다. 반대로 작은(Min)값을 구해야 intersection 영역의 좌상단 Y좌표가 나오는 것이 아닌지.. 이와 유사하게 intersection의 우하단 영역의 Y좌표를 구하기 위해서는 GT, CB 박스 우하단의 Y좌표 중 큰(Max)값으로 구해야 하는 것이 아닌지요? 아니면 혹시 각 Box별 모서리 좌표의 Notation을 제가 잘못 이해하고 있는 것 같은데.. 설명 부탁드립니다.

  • 머신러닝 배워볼래요?
  • keras
  • 딥러닝
  • python
  • tensorflow
  • 컴퓨터-비전
thelazysong 댓글 1 좋아요 2 조회수 312

저...죄송하지만

미해결

플러터와 장고로 1시간만에 퀴즈 앱/서버 만들기 [무작정 풀스택]

퀴즈 앱 UI까지는 전부 따라서 만들었는데 Django 부분부터는 시작부터 막히네요 ㅜㅜ 해당 부분에 대해서 기초가 아예 없어서 어느 폴더에 어떻게 프로젝트가 들어갈 빈 폴더를 만들어야되는지 모르겠습니다...

  • django
  • Flutter
Genovese 댓글 1 좋아요 0 조회수 472

제가 생각한 proxy 구조가 이게 맞나요?

미해결

[리뉴얼] React로 NodeBird SNS 만들기

여기서 front에서 바로 back으로 갔다가 데이터 로딩해서 랜더링을 하면 서버사이드 렌더링이다 라고 이해하고 있는데 맞나요?

  • react
  • express
  • redux
  • nodejs
  • Next.js
JJ NAM 댓글 1 좋아요 0 조회수 237

그림판에 도형을 따라 그리기

미해결

SVG 마스터

안녕하세요! 그림판 처럼 보이는 곳에 도형이 이미 그려져 있고, 그것을 잘 따라 그리면 true, 잘 못 따라 그리면 false 라는걸 만들고 싶습니다. 모바일에서 동작하게 만들고 싶은데 도형을 잘 따라 그렸는지를 어떤식으로 확인 할 수 있을까요? 대략적인 방향을 잡아주시면 많은 도움이 될거같습니다 ㅠ 이러한 기능을 구현하려면 svg로 해야하는건지 canvas를 이용해야 하는지도 궁금합니다. 감사합니다!

  • HTML/CSS
  • svg
고만석 댓글 1 좋아요 0 조회수 569

src/test/resources 동작 문제

미해결

실전! 스프링 부트와 JPA 활용1 - 웹 애플리케이션 개발

안녕하세요. 따라하던 중에 src/test/resources 폴더를 만들어서 아래에 메모리모드로 설정하는 파일을 따로 두어 test 동작 시에는 그 application.yml을 읽도록 하는 부분에서 문제가 있는데 해결이 안돼서 질문드립니다! main아래의 yml파일을 지우면 test아래의 yml을 읽기는 하는데 main에도 있고 test에도 파일이 있으면 main 파일 밑에 yml을 읽어버려서 혹시 STS 를 사용하면 실행 시에 읽어드리는 우선순위를 설정해야하는 것인지 무슨 문제인지 궁금합니다.

  • spring-boot
  • spring
  • 웹앱
  • java
  • JPA
dev1 댓글 4 좋아요 0 조회수 2755

VNCoreMLRequest 실행 안됨

미해결

iOS12 앱 개발 퍼펙트 가이드

VNCoreMLRequest() 에서 오류가 나는데 원인을 어떻게 찾을 수 있나요? return 값에서 확인 가능한가요?

  • swift
  • ios
dooridom 댓글 2 좋아요 0 조회수 400

@NamedEntityGraph 와 Fetch

미해결

스프링과 JPA 기반 웹 애플리케이션 개발

안녕하세요, 강의 잘 보고 있습니다. @NamedEntityGraph로 N+1 select를 해결하는것은 잘 되는데요, 문득 궁금증이 생겨 @NamedEntityGraph를 제거하고 그냥 해당 필드에 EAGER를 붙여보았습니다. Notification entity를 조회할 때 참조하고있는 Tag entity를 같이 가져오는 것을 구현연습 하고 있었습니다. Notification.java @Entity @Getter @Setter @EqualsAndHashCode(of = "id") @NoArgsConstructor public class Notification { @Id @GeneratedValue private Long id; @Enumerated(EnumType.STRING) private NotificationType notificationType; private String title; private String link; private boolean ringBellChecked = false; private boolean linkVisited = false; @ManyToOne private Account account; @ManyToMany(fetch = FetchType.EAGER) private List<Tag> commonTag = new LinkedList<>(); private LocalDateTime createdDateTime; } NotificationRepository.java public interface NotificationRepository extends JpaRepository<Notification, Long> { List<Notification> findByAccount(Account sessionAccount); } 그리고 이를 활용하여 NotificationService.java @Transactional @RequiredArgsConstructor @Service public class NotificationService { private final NotificationRepository notificationRepository; public List<Notification> ringBellCheck(Account sessionAccount) { List<Notification> allNotification = notificationRepository.findByAccount(sessionAccount); allNotification.forEach(notification -> { notification.setRingBellChecked(true); }); return allNotification; } } 위와같은 작업을 처리합니다. 근데 현재 Notification이 3개가 존재할 때, 2020-07-28 10:14:57.791 DEBUG 15072 --- [nio-8080-exec-9] org.hibernate.SQL : select notificati0_.id as id1_2_, notificati0_.account_id as account_8_2_, notificati0_.created_date_time as created_2_2_, notificati0_.link as link3_2_, notificati0_.link_visited as link_vis4_2_, notificati0_.notification_type as notifica5_2_, notificati0_.ring_bell_checked as ring_bel6_2_, notificati0_.title as title7_2_ from notification notificati0_ where notificati0_.account_id=? 2020-07-28 10:14:57.792 TRACE 15072 --- [nio-8080-exec-9] o.h.type.descriptor.sql.BasicBinder : binding parameter [1] as [BIGINT] - [1] 2020-07-28 10:14:57.840 DEBUG 15072 --- [nio-8080-exec-9] org.hibernate.SQL : select account0_.id as id1_0_0_, account0_.bio as bio2_0_0_, account0_.count_of_sending_email_verification_email as count_of3_0_0_, account0_.email_first_verified as email_fi4_0_0_, account0_.email_verification_token as email_ve5_0_0_, account0_.email_verified as email_ve6_0_0_, account0_.email_waiting_to_be_verified as email_wa7_0_0_, account0_.first_count_of_sending_email_verification_email_set_date_time as first_co8_0_0_, account0_.location as location9_0_0_, account0_.nickname as nicknam10_0_0_, account0_.nickname_before_update as nicknam11_0_0_, account0_.notification_comment_on_my_comment_by_email as notific12_0_0_, account0_.notification_comment_on_my_comment_by_web as notific13_0_0_, account0_.notification_comment_on_my_post_by_email as notific14_0_0_, account0_.notification_comment_on_my_post_by_web as notific15_0_0_, account0_.notification_like_on_my_comment_by_email as notific16_0_0_, account0_.notification_like_on_my_comment_by_web as notific17_0_0_, account0_.notification_like_on_my_post_by_email as notific18_0_0_, account0_.notification_like_on_my_post_by_web as notific19_0_0_, account0_.notification_my_interest_tag_added_to_existing_post_by_email as notific20_0_0_, account0_.notification_my_interest_tag_added_to_existing_post_by_web as notific21_0_0_, account0_.notification_new_post_with_my_interest_tag_by_email as notific22_0_0_, account0_.notification_new_post_with_my_interest_tag_by_web as notific23_0_0_, account0_.occupation as occupat24_0_0_, account0_.password as passwor25_0_0_, account0_.profile_image as profile26_0_0_, account0_.show_password_update_page_token as show_pa27_0_0_, account0_.sign_up_date_time as sign_up28_0_0_, account0_.user_id as user_id29_0_0_, account0_.verified_email as verifie30_0_0_ from account account0_ where account0_.id=? 2020-07-28 10:14:57.840 TRACE 15072 --- [nio-8080-exec-9] o.h.type.descriptor.sql.BasicBinder : binding parameter [1] as [BIGINT] - [1] 2020-07-28 10:14:57.888 DEBUG 15072 --- [nio-8080-exec-9] org.hibernate.SQL : select commontag0_.notification_id as notifica1_3_0_, commontag0_.common_tag_id as common_t2_3_0_, tag1_.id as id1_8_1_, tag1_.title as title2_8_1_ from notification_common_tag commontag0_ inner join tag tag1_ on commontag0_.common_tag_id=tag1_.id where commontag0_.notification_id=? 2020-07-28 10:14:57.889 TRACE 15072 --- [nio-8080-exec-9] o.h.type.descriptor.sql.BasicBinder : binding parameter [1] as [BIGINT] - [15] 2020-07-28 10:14:57.937 DEBUG 15072 --- [nio-8080-exec-9] org.hibernate.SQL : select commontag0_.notification_id as notifica1_3_0_, commontag0_.common_tag_id as common_t2_3_0_, tag1_.id as id1_8_1_, tag1_.title as title2_8_1_ from notification_common_tag commontag0_ inner join tag tag1_ on commontag0_.common_tag_id=tag1_.id where commontag0_.notification_id=? 2020-07-28 10:14:57.937 TRACE 15072 --- [nio-8080-exec-9] o.h.type.descriptor.sql.BasicBinder : binding parameter [1] as [BIGINT] - [13] 2020-07-28 10:14:57.984 DEBUG 15072 --- [nio-8080-exec-9] org.hibernate.SQL : select commontag0_.notification_id as notifica1_3_0_, commontag0_.common_tag_id as common_t2_3_0_, tag1_.id as id1_8_1_, tag1_.title as title2_8_1_ from notification_common_tag commontag0_ inner join tag tag1_ on commontag0_.common_tag_id=tag1_.id where commontag0_.notification_id=? 2020-07-28 10:14:57.984 TRACE 15072 --- [nio-8080-exec-9] o.h.type.descriptor.sql.BasicBinder : binding parameter [1] as [BIGINT] - [11] 2020-07-28 10:14:58.137 DEBUG 15072 --- [nio-8080-exec-9] org.hibernate.SQL : select count(notificati0_.id) as col_0_0_ from notification notificati0_ where notificati0_.account_id=? and notificati0_.ring_bell_checked=? 2020-07-28 10:14:58.137 TRACE 15072 --- [nio-8080-exec-9] o.h.type.descriptor.sql.BasicBinder : binding parameter [1] as [BIGINT] - [1] 2020-07-28 10:14:58.137 TRACE 15072 --- [nio-8080-exec-9] o.h.type.descriptor.sql.BasicBinder : binding parameter [2] as [BOOLEAN] - [false] 이처럼 필드에 EAGER를 붙인것은 N+1 select 문제가 해결되진 않네요. 하나의 Notification만 Id로 조회했을 때는 Tag도 같이 가져오는걸 확인했습니다. 하지만 List<Notification>에서는 적용이 안되네요. 필드에 EAGER를 붙이는 것은 하나만 조회할 때 유효한 건가요? 그리고 NotificationInterceptor.java에서 SecurityContextHolder에서 세션객체 꺼내서 해당 세션객체로 Notification를 조회할 때는 왜 Account를 조회하는 쿼리는 안날아가나요? detached상태인데.. NotificationService에서 Account로 Notification을 조회했을 때는 새로 Account를 다시 조회하는 쿼리가 날아가는데..

  • java
  • spring-boot
  • JPA
  • spring
  • thymeleaf
taehee-kim-dev 댓글 5 좋아요 0 조회수 372

의존관계 주입관련해서 질문 있습니다.

미해결

실전! 스프링 부트와 JPA 활용1 - 웹 애플리케이션 개발

안녕하세요~ 강의잘보고 있습니다!!! 강의를 듣다가 의존관계(DI) 주입관련해서 의문이 생겼습니다. 저는 기존에 @Autowired 어노테이션을 사용하여 의존관계를 설정하였는데 김영한님 뿐만 아니라 다른 블로그를 찾아봐도 생성자 주입을 통해 DI 설정을 하고 있는데 Autowired를 사용하지않고 생성자 주입했을 때의 장점을 알려주셨으면 좋겠습니다 ㅎㅎ

  • java
  • 웹앱
  • spring-boot
  • spring
  • JPA
Kim 댓글 1 좋아요 0 조회수 180

create-react-app 오류 (Cannot find module './encoding/utf8')

미해결

누구든지 하는 리액트: 초심자를 위한 react 핵심 강좌

안녕하세요, 윈도우 환경에서 yarn 을 사용하여 create-react-app을 설치했습니다. create-react-app <프로젝트 이름>을 사용하여 프로젝트를 생성하려고 하는데, 아래와 같은 오류가 나면서 안되네요. 어떻게 해결해야 하나요?? Error: Cannot find module './encoding/utf8' Require stack: - C:\Users\charm\Documents\bus-control\node_modules\chardet\index.js - C:\Users\charm\Documents\bus-control\node_modules\external-editor\main\index.js - C:\Users\charm\Documents\bus-control\node_modules\inquirer\lib\prompts\editor.js - C:\Users\charm\Documents\bus-control\node_modules\inquirer\lib\inquirer.js - C:\Users\charm\Documents\bus-control\node_modules\react-dev-utils\browsersHelper.js - C:\Users\charm\Documents\bus-control\node_modules\react-scripts\scripts\init.js - C:\Users\charm\Documents\bus-control\[eval] at Function.Module._resolveFilename (internal/modules/cjs/loader.js:1065:15) at Function.Module._load (internal/modules/cjs/loader.js:911:27) at Module.require (internal/modules/cjs/loader.js:1125:19) at require (internal/modules/cjs/helpers.js:75:18) at Object.<anonymous> (C:\Users\charm\Documents\bus-control\node_modules\chardet\index.js:4:13) at Module._compile (internal/modules/cjs/loader.js:1236:30) at Object.Module._extensions..js (internal/modules/cjs/loader.js:1257:10) at Module.load (internal/modules/cjs/loader.js:1085:32) at Function.Module._load (internal/modules/cjs/loader.js:950:14) at Module.require (internal/modules/cjs/loader.js:1125:19) { code: 'MODULE_NOT_FOUND', requireStack: [ 'C:\\Users\\charm\\Documents\\bus-control\\node_modules\\chardet\\index.js', 'C:\\Users\\charm\\Documents\\bus-control\\node_modules\\external-editor\\main\\index.js', 'C:\\Users\\charm\\Documents\\bus-control\\node_modules\\inquirer\\lib\\prompts\\editor.js', 'C:\\Users\\charm\\Documents\\bus-control\\node_modules\\inquirer\\lib\\inquirer.js', 'C:\\Users\\charm\\Documents\\bus-control\\node_modules\\react-dev-utils\\browsersHelper.js', 'C:\\Users\\charm\\Documents\\bus-control\\node_modules\\react-scripts\\scripts\\init.js', 'C:\\Users\\charm\\Documents\\bus-control\\[eval]' ]

  • javascript
  • react
jjb9083 댓글 0 좋아요 0 조회수 291

코드 다운로드 파일 주소 확인 요청

미해결

Python 부트캠프

인쇄용 pdf 말고 코드 복사할 수 있는 다운로드 페이지 열리지가 않습니다.(비틀리 페이지) 시간이 부족하다보니 코드들을 복사, 붙여넣기로 해야 할 것 같은데 페이지가 열리지 않아 결과들을 많이 못보고 있습니다. 확인 부탁 드립니다.

  • python
kkkms78 댓글 1 좋아요 0 조회수 308

ingress에서 인증서 생성에 관해

미해결

대세는 쿠버네티스 (초급~중급편)

openssl로 인증서를 생성하고 만들어진 tls.key파일로 secret을 생성하는데 openssel을 그냥 아무데서나 내가 이용할 도메인이름으로 생성하면 되는건가요? 생성된 인증서랑 어떻게 nginx랑 맵핑(?)되어 인식되는지 어느위치에서 해야 하는지 헷갈립니다. ㅠㅠ

  • kubernetes
  • docker
gusqhr999 댓글 1 좋아요 1 조회수 192

activate 토글

해결됨

페이스북 클론 - full stack 웹 개발

좋아요 버튼을 누를때마다 클래스에 active가 들어갔다가 나오는데, 한번 클릭을 하고 active가 들어가있는 상태에서 새로고침을 하면 다시 active가 없는 상태가 됩니다. 새로고침을 하더라도 좋아요가 눌러져있다면 active가 남아있게 하는 방법이 있을까요?

  • python
  • django
  • HTML/CSS
  • linux
  • javascript
  • 클론코딩
taejin5314 댓글 6 좋아요 1 조회수 460

detail의 레이아웃과 list의 레이아웃이 다릅니다

미해결

파이썬 사용자를 위한 웹개발 입문 A to Z Django + Bootstrap

오른쪽에 있어야할 widget과 category가 detail페이지에서만 하단에 위치합니다 아무리봐도 뭐가문젠지 모르겠습니다... 어차피 템플릿확장으로 base.html을 post_detail과 post_list가 공유할텐데 왜 post_list페이지는 정상적으로 배치되어있고 detail만 이럴까요? startbootstrap의 detail부분 페이지 소스와 저의 base.html소스의 일부를 첨부합니다

  • django
  • bootstrap
  • python
윤태영 댓글 3 좋아요 0 조회수 503

콘솔창에 표시가 안 뜹니다.

해결됨

[C#과 유니티로 만드는 MMORPG 게임 개발 시리즈] Part3: 유니티 엔진

맨마지막 실습 중에 Get<GameObject>((int)GameObjects.ItemIcon).AddUIEvent((PointerEventData) => { Debug.Log($"아이템 클릭! {_name}"); }); 를 추가해서 아이템을 누르면 콘솔창에 표시되도록 해보는 실습을 하고 있는데 콘솔창에 표시가 안뜹니다. 선생님께서 작성하시는대로 따라서 작성했는데도 콘솔창에 문구가 뜨지 않습니다.. 혹시 왜 이런 오류가 생기는지 짐작되는부분이 있을까요..?

  • C#
  • unity
김나영 댓글 5 좋아요 2 조회수 470

블로그 정리 관련하여 문의 드립니다.

미해결

스프링 웹 MVC

안녕하세요 백기선선생님의 강의를 스프링 프레임워크 핵심 기술을 듣고 현재 웹 MVC 강좌를 듣는 학생입니다. 스프링 프레임워크 핵심 기술 질의 응답에서 블로그 정리를 하셔도 괜찮다는 글을 보고 현재 블로그에 웹 MVC 강좌를 들은 내용을 정리하여 올리고 있는데 직접 문의를 드리고 올리는 것이 맞다고 생각되어 문의를 드립니다. 항상 좋은 강의를 올려 주셔서 감사합니다.

  • spring
  • java
  • MVC
gilmat 댓글 1 좋아요 0 조회수 162

질문드립니다

미해결

남박사의 파이썬 기초부터 실전 100% 활용

1. requests.get에 들어있는 stream=True의미는 무엇인가요? 그리고 .raw와 .content는 어떤 역할을 해주나요? 2.cv2.destroyAllWindows()가 키가 눌렸을때 모든 윈도우 창을 꺼준다고 하셨는데 위 코드가 없어도 바뀌는게 보이지 않습니다.정확히 어떤 역할을 하는지 알고싶습니다.

  • 웹-크롤링
  • python
김민찬 댓글 1 좋아요 1 조회수 220

ingress nginx 관련 질문입니다.

미해결

데브옵스(DevOps)를 위한 쿠버네티스 마스터

일반적으로 ingress --- svc(NodePort) --- pod로 연결 되는 구조로 되어 있는 걸로 이해하는데 지금 실습은 ingress를 만들고 다시 node의 IP로 접속을 하는데 실제.....그냥 인그레스 없이 노드 포트로 연결 된 것과 차이를 모르겠습니다. 원래 SVC앞단에 인그레스가 와야 하는것이 아닌지요??

  • docker
  • kubernetes
최선을 다하자 댓글 3 좋아요 0 조회수 383

nginx ingress관련 링크가 없습니다.

미해결

데브옵스(DevOps)를 위한 쿠버네티스 마스터

강의와 관련있는 질문 을 남겨주세요. &bull; 강의와 관련이 없는 질문은 지식공유자가 답변하지 않을 수 있습니다. (사적 상담, 컨설팅, 과제 풀이 등) &bull; 질문을 남기기 전, 비슷한 내용을 질문한 수강생이 있는지 먼저 검색 을 해주세요. (중복 질문을 자제해주세요.) &bull; 서비스 운영 관련 질문은 인프런 우측 하단 &lsquo;문의하기&rsquo; 를 이용해주세요. (영상 재생 문제, 사이트 버그, 강의 환불 등) 질문 전달 에도 요령이 필요합니다. &bull; 지식공유자가 질문을 좀 더 쉽게 확인할 수 있게 도와주세요. &bull; 강의실 페이지 (/lecture) 에서 '질문하기'를 이용해주시면 질문과 연관된 수업 영상 제목이 함께 등록됩니다. &bull; 강의 대시보드에서 질문을 남길 경우, 관련 섹션 및 수업 제목을 기재 해주세요. &bull; 수업 특정 구간에 대한 질문은 꼭 영상 타임코드 를 남겨주세요! 구체적인 질문 일수록 명확한 답을 받을 수 있어요. &bull; 질문 제목은 핵심 키워드를 포함해 간결하게 적어주세요. &bull; 질문 내용은 자세하게 적어주시되, 지식공유자가 답변할 수 있도록 구체적으로 남겨주세요 . &bull; 정확한 질문 내용과 함께 코드 를 적어주시거나, 캡쳐 이미지 를 첨부하면 더욱 좋습니다. 기본적인 예의 를 지켜주세요. &bull; 정중한 의견 및 문의 제시, 감사 인사 등의 커뮤니케이션은 더 나은 강의를 위한 기틀이 됩니다. &bull; 질문이 있을 때에는 강의를 만든 지식공유자에 대한 기본적인 예의를 꼭 지켜주세요. &bull; 반말, 욕설, 과격한 표현 등 지식공유자를 불쾌하게 할 수 있는 내용 은 스팸 처리 등 제재를 가할 수 있습니다.

  • docker
  • kubernetes
최선을 다하자 댓글 0 좋아요 0 조회수 227

인기 태그

인프런 TOP Writers

주간 인기글