묻고 답해요
141만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
해결됨비전공자도 이해할 수 있는 CI/CD 입문·실전
선생님 모든 IP 말고 제 IP로는 연결이 안 됩니다.
선생님 좋은 강의 감사합니다. 도중에 문제가 생겼는데 도무지 해결이 안 돼 글 남깁니다. ㅠㅠ너무 위험해 보여서 제 IP로 진행하고 싶어 보안 그룹에서 SSH 22번 포트 설정할 때 제 IP로 설정을 하였습니다. 제 맥북 터미널을 통한 SSH 원격 접속은 잘 되는데, 콘솔에서 강의에 나오는 웹 방식으로는 접속이 안 되고 있습니다.왜 이럴까요? IP가 잘못된 것은 아닙니다. IP를 바꾸고 제 맥북 터미널에서 SSH 접속을 해보면 접속에 실패하는 것으로 확인했습니다. 도대체 왜 이럴까요?
-
미해결대세는 쿠버네티스 [초급~중급]
1.27 kubernetes에서 docker command가 안쓰입니다
안녕하세요.https://kubetm.github.io/k8s/09-intermediate-architecture/networking/위 부분의 네트워킹 실습 중docker ps 명령어를 입력했는데-bash: docker: command not found^ 위처럼 명령어를 찾을 수 없다고 하더라구요.찾아보니 쿠버네티스 1.27 버전에서는 containerd가 container-runtime으로 변경된듯 합니다. Dockershim이 1.24부터 빠졌다는데 이거랑 관련이 있을까요?: https://kubernetes.io/blog/2022/02/17/dockershim-faq/[root@k8s-master ~]# kubectl get nodes -o wide NAME STATUS ROLES AGE VERSION INTERNAL-IP EXTERNAL-IP OS-IMAGE KERNEL-VERSION CONTAINER-RUNTIME k8s-master Ready control-plane 35d v1.27.2 192.168.56.30 <none> Rocky Linux 8.9 (Green Obsidian) 4.18.0-513.18.1.el8_9.x86_64 containerd://1.6.21 k8s-node1 Ready <none> 35d v1.27.2 192.168.56.31 <none> Rocky Linux 8.9 (Green Obsidian) 4.18.0-513.24.1.el8_9.x86_64 containerd://1.6.21 k8s-node2 Ready <none> 35d v1.27.2 192.168.56.32 <none> Rocky Linux 8.9 (Green Obsidian) 4.18.0-513.24.1.el8_9.x86_64 containerd://1.6.21혹시 시간되시면 나중에 실습파트의 명령어 부분을 수정해 주실 수 있으신가요? 강의 정말 잘 듣고 있습니다. 많은 가르침을 주셔서 감사합니다.
-
해결됨AWS 배포 완벽가이드 (feat. Lightsail, Docker, ECS)
프론트 백엔드간의 http 요청을 주고 받으려면
안녕하세요 선생님.저는 next.js로 만든 프론트엔드와, nestjs로 만든 백엔드를 ECS에 각각 서비스로 만들어 클러스터를 관리하고 있습니다.프론트엔드에서 fetch() 함수로 백엔드에 요청을 보내는데,이 때 백엔드 url을 결정하는데 어려움을 겪고 있습니다.처음에는, 서비스 연결 을 적용해서Request URL: http://languin-backend-container-8000-tcp.languin-cluster:8000/auth/check/email이런식으로 적용했었는데, ERR_NAME_NOT_RESOLVED 이란 에러를 만났습니다.혹시 이 문제가 fetch() 함수가 프론트엔드가 실행되고 있는 컨테이너가 아니라, 사용자 브라우저이기 때문에 Inter Service Communication이 적용이 안되는 건가요?프론트에서 백엔드로 요청을 보낼 수 있도록 하려면, 백엔드 주소를 어떻게 정해야 하나요? Route53을 사용해야 하는건가요?
-
해결됨개발자를 위한 쉬운 도커
copy-on-write 전략에 대해 질문 있습니다.
index.html 파일 혹은 nginx.conf 파일을 수정한다고 했을때 읽기 레이어에 있는 파일들을 수정하는게 아니라 읽기 레이어에 있는 파일들을 읽기/쓰기 레이어로 COPY 해오고 COPY 해온 파일들을 수정해서 사용하는 건가요?위 내용이 맞다면 굳이 읽기쪽 레이어에 있는 파일을 COPY 안하고 읽기/쓰기에 있는 파일을 바로 수정하면 안되는건지 궁금합니다.읽기/쓰기 레이어에 있는 nginx.conf 파일을 수정한다고 했을때 실무에서의 흐름이 EC2에 접속하고 docker를 설치하고 nginx 이미지를 pull 하고 nginx 컨테이너를 띄운다음 nginx 컨테이너에 접속해서 nginx.conf 파일을 수정하기 가 맞는건지 궁금합니다.
-
해결됨입문자를 위한 Spring Boot with Kotlin - 나만의 포트폴리오 사이트 만들기
안녕하세요 스프링 시큐리티 로그인 개발 질문 드려용 ^^
안녕하세요.강의 내용중에 궁금한게 있어서 질문 드립니다.로그인 폼을 거치지 않고 POST body를 전달해서 바로 로그인 해보면 어떨까 해서 시도 했는데 잘 되지 않네요 ...fun filterChain(httpSecurity: HttpSecurity): SecurityFilterChain { return httpSecurity .authorizeHttpRequests { authorizeHttpRequests -> authorizeHttpRequests .requestMatchers(AntPathRequestMatcher("/admin/**")).authenticated() .anyRequest().permitAll() }.csrf {csrf -> csrf.disable() }.headers { headers -> headers.addHeaderWriter(XFrameOptionsHeaderWriter(XFrameOptionsHeaderWriter.XFrameOptionsMode.SAMEORIGIN)) }.formLogin { formLogin -> formLogin.defaultSuccessUrl("/h2-console") // 추가 ////////////////////////////////////////// formLogin.loginProcessingUrl("/login") formLogin.usernameParameter("email") formLogin.passwordParameter("password") }.logout { logout-> logout.logoutRequestMatcher(AntPathRequestMatcher("/admin/logout")) .logoutSuccessUrl("/") }.build() }강의 내용중에 제가 주석으로 추가 내용 달았어요...그리고 Entity는 아래처럼 구성했습니다.class Account(email: String, pw: String): BaseEntity(), UserDetails {........@field:NotNull @Column(unique = true) var email: String = email @Column(name = "password") var pw: String = pw그래서위에처럼 전달했습니다.그리고 run accountRepository에 디버깅 브레이크를 걸고 Post 메세지를 쐈습니다.그런데 디버깅 걸린건 "" 공백이네요.프론트 엔드에서 시큐리티 로그인페이지를 만들고 아디이 패스워드를 전달해서 제어하려고 시도 했는데 뭔가 문제가 있나봐요...답변 해주지면 감사하겠습니다.@Service class AdminSecurityService( private val accoutRepository: AccountRepository ) : UserDetailsService { override fun loadUserByUsername(email: String): UserDetails { return accoutRepository.findByEmail(email) .orElseThrow{RuntimeException("사용자 정보를 찾을 수없습니다.") } } }=========추가 질문 드려요지금 시큐리티 로그인은 Spring boot 초기화 스타트 한후 유저의 접근을 막는 방화벽 같은 용도로 사용하는건가요??아니면 웹 "react" http://localhost:3000/에서 로그인 폼 게발한후에 로그인 정보(이메일, 패스워드 아이디)를 http://localhost:8080/login 에 POST / GET 방식으로 전달하고 시큐리티에 접근해서 로그인 하는 사용자 로그인 목적으로 사용하는건지 ...이게 intellij IDEA에 웹페이지랑 스프링 부트를 개발해서 강의내용은 이해하는데 프론트 엔드와 백엔드와의 통신으로 본다면 좀 헛깔려요로그인 페이지는 프론트 엔드에서 만드는게 아니라 백엔드에서 만들어야하나... 그럼 프론트엔드에서 백엔드에 접근해 시큐리티 로그인을 한후 로그인 성공 했다는 메세지를 어떻게 프론트 엔드에 전달해야되는지... 그냥 관리자 페이지(사용자 목록 리스트나 사용자 로그인 접근 정보를 보는 용도)를 사용할때 시큐리티 로그인을 사용하고 user로그인(작성한 글, 좋아요 같은 카운트, 로그인한 전화번호, 사진 정보)은 따로 user 로그인하는 Api Controller에 접근해서 로그인 하는건지 좀 헛깔려요.현재 구글에서 찾아보면 관리페이지는 시큐리티로 접근 사용자, 게스트튼 로그인 API로 접근해서 관리하는거 같은데 정보 찾는게 어렵네요...
-
미해결비전공자도 이해할 수 있는 Docker 입문/실전
호스트경로/mysql_data경로 질문
안녕하세요mysql_data는 어떤 역할하고 있는지 궁금합니다.mysql_data를 없이 docker에 mysql를 넣었는데 실행이 중단되고 아래와 같은 오류가 나와서 이유를 알고싶습니다그리고 항상 docker에 mysql에 호스트 내부에 파일을 저장할때 새로운 my_data의 이름이 아니여도 다른 파일경로를 지정을 해줘야하는건가요?
-
미해결풀스택을 위한 도커와 최신 서버 기술(리눅스, nginx, AWS, HTTPS, flask 배포) [풀스택 Part3]
강의 듣다가 궁금한 점이 생겼는데요
강의에서 putty 클라이언트를 사용해서aws 서버의 리눅스(우분투 패키지)에 키를 사용하여접속하면 리눅스에 접속이 성공하고 디렉토리 포인트가 잡히는 개념이더라구요.그런데 aws의 리눅스는 아이디 비밀번호로 접속이 불가능한가요?su -를 입력해서 관리자 권한에 들어가보려고 하니까password를 입력하라고 하는데 키로 접속한 기억은 있는데 password를 언제 설정했는지 기억이 잘 안나더라구요강의에서 password를 입력하는 구간이 없었나요..?ssh로 리눅스 서버 접속해보고 싶은데 아이디는 whoami하면 나오던데 비밀번호를 잘 모르겠더라구요..ssh로 접속하더라도 키로 접속해야 하는건가 싶기도 하구요.. 두서없는 질문이지만 답변 부탁드려도 될까요?
-
해결됨개발자를 위한 쉬운 도커
수업 내용 중 질문 있습니다.
2분 20초 쯤 동일한 이미지에서 실행한 컨테이너는 내부에서 모두 동일한 프로세스로 실행된다. 라고 하셨는데만약 동일한 이미지로 컨테이너 5개를 띄운다면 하나의 프로세스가 5개의 컨테이너를 감당하게 되는데 이렇게 되면 비효율적이지 않나요?
-
해결됨개발자를 위한 쉬운 도커
사진속에 이미지 별로 OS가 존재하는 부분에 대해 질문 있습니다.
안녕하세요 사진속에 이미지 별로 OS가 존재하는 부분이 궁금해서 질문글을 작성했습니다.컨테이너 가상화면 각 컨테이너에 OS가 없고 호스트 OS를 공유해서 사용하는 걸로 알고 있습니다. 그리고 컨테이너는 이미지를 바탕으로 실행되는 프로세스 개념으로 이해 했습니다.사진처럼 이미지 내부에도 결국 OS가 존재한다면 컨테이너에도 결국 OS가 존재하는게 아닌가 라는 궁금증이 생겼습니다.
-
해결됨개발자를 위한 쉬운 도커
가상머신과 프로세스에 대해 질문 있습니다.
안녕하세요기존 호스트 OS에서 프로그램을 4개 실행 시켰을때 4개의 프로세스가 생성이 되서 작업을 진행합니다 그리고호스트 OS에 하이퍼바이저를 설치하고 4개의 가상 머신을 실행시 결국에는 이 4개의 가상 머신에 대한 프로세스도 4개 할당이 되는건지 궁금합니다. 만약 할당이 된다면 맨 처음 얘기한 호스트 OS 만 있었을때의 프로세스와 가상 머신에 할당된 프로세스와 어떤 차이점이 있는지 궁금합니다.감사합니다.
-
미해결쉽게 시작하는 쿠버네티스(v1.30) - {{ x86-64, arm64 }}
vagrant up 명령어 실행 중 worker#3 kubelet 오류로 설치 실패
질문 답변을 제공하지만, 강의 비용에는 Q&A는 포함되어 있지 않습니다. 다만 실습이 안되거나, 잘못된 내용의 경우는 알려주시면 가능한 빠르게 조치하겠습니다![질문 전 답변]안녕하세요, 아래와 같이 kubelet쪽에 문제가 있다고 설치가 안되는데, 해결방법이 궁금합니다 w3-k8s-1.30.0: [kubelet-start] Starting the kubelet w3-k8s-1.30.0: [kubelet-check] Waiting for a healthy kubelet. This can take up to 4m0s w3-k8s-1.30.0: [kubelet-check] The kubelet is healthy after 1.504250225s w3-k8s-1.30.0: [kubelet-start] Waiting for the kubelet to perform the TLS Bootstrap w3-k8s-1.30.0: w3-k8s-1.30.0: Unfortunately, an error has occurred: w3-k8s-1.30.0: context deadline exceeded w3-k8s-1.30.0: w3-k8s-1.30.0: This error is likely caused by: w3-k8s-1.30.0: - The kubelet is not running w3-k8s-1.30.0: - The kubelet is unhealthy due to a misconfiguration of the node in some way (required cgroups disabled) w3-k8s-1.30.0: w3-k8s-1.30.0: If you are on a systemd-powered system, you can try to troubleshoot the error with the following commands: w3-k8s-1.30.0: - 'systemctl status kubelet' w3-k8s-1.30.0: - 'journalctl -xeu kubelet' w3-k8s-1.30.0: error execution phase kubelet-start: context deadline exceeded w3-k8s-1.30.0: To see the stack trace of this error execute with --v=5 or higherThe SSH command responded with a non-zero exit status. Vagrantassumes that this means the command failed. The output for this commandshould be in the log above. Please read the output to determine whatwent wrong.1. 강의에서 다룬 내용과 관련된 질문인가요? [예 | 아니요]2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? [예 | 아니요]3. 질문 잘하기 법을 읽어보셨나요? [예 | 아니요](https://www.inflearn.com/blogs/1719)4. 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요.5. vagrant up 에서 발생하는 문제는 주로 호스트 시스템(Windows, MacOS)과 연관된 다양한 조건에 의해 발생합니다. 따라서 이를 모두 제가 파악할 수 없어서 해결이 어렵습니다. vagrant up으로 진행이 어렵다면 제공해 드리는 가상 머신(VM) 이미지를 import해서 진행하시기 바랍니다. (https://www.inflearn.com/questions/992407/comment/281901)[질문 하기]
-
해결됨개발자를 위한 쉬운 도커
정리
안녕하세요 선생님. 공부하면서 블로그에 정리를 하려는데, https://www.inflearn.com/course/개발자를-위한-쉬운-도커?inst=f4872931&utm_source=instructor&utm_medium=referral&utm_campaign=inflearn_트래픽_promotion-link이 출처를 남긴다면, 괜찮을까요? 다른 질문에서 가능하다고 되어 있는데, 그래도 한번더 여쭤보고 작성하는게 좋을 것 같아 연락드립니다.양질의 강의 감사드립니다!
-
해결됨개발자를 위한 쉬운 도커
로그인에 성공했는데 권한 거부와 함께 push 가 안됩니다.
로그인에 성공했는데 push 가 안됩니다. ㅠㅠ 어떻게 해야 할까요..?
-
해결됨비전공자도 이해할 수 있는 CI/CD 입문·실전
도커 이미지 생성과 푸시 명령어를 할 수 있는 이유
안녕하세요 선생님. 질문 있어 글 남깁니다.Github actions에서 도커 이미지를 생성하고, ECR에 푸시하기 위해 사용한 docker build, docker push와 같은 명령어가 어떻게 실행 될 수 있는건가요?위의 테스트 과정에서 테스트를 위해 ubuntu 서버에 node를 설치했듯이, 여기서도 이미지 생성,푸시 위해서는 ubuntu 서버에 docker를 설치해야 되지 않나요?정리하면, ubuntu 서버에서 도커 설치 없이 docker build, docker push와 같은 명령어가 실행 가능한 이유가 궁금합니다
-
해결됨개발자를 위한 쉬운 도커
docker build 시 bus error가 발생합니다
Window 10 사용하고, 강의 앞부분의 gradle로 빌드 후 java -jar로 실행했을 때 실패하는 건 강의와 같지만, docker build로 이미지 빌드 시도했을 때에는 아래처럼 bus error가 발생하면서 안 됩니다. 검색해보니까 메모리 용량 관련 얘기가 많아서 .wslconfig 통해서 이리저리 조절해봐도 그대로네요... Dockerfile 내용은 강의에서의 Dockerfile과 같습니다. 문제가 뭘까요?
-
해결됨AWS로 구축하는 MSA와 컨테이너 오케스트레이션
bastion서버가 있을경우 cli로의 접근은 권장되지 않나요??
강사님은 ssh나 sftp툴을 사용하시나요? connect 서비스를 사용하지 않는경우에 bastion서버는 처음사용하는데 cli를 사용하는 저같은경우 두번 접속하는게 조금은 번거롭게 느껴져서 궁금합니다
-
해결됨AWS로 구축하는 MSA와 컨테이너 오케스트레이션
java.net.UnknownHostException 에러 관련 질문입니다
현재 환경VPCpublic subnet 2개ALB, Nat gatewayprivate subnet 2개fagateSecurity grouppublic group (80포트 모든 ip허용)private group(80포트 public group아이피만 허용) 여기서 이미지 컨테이너 실행도중 한 컨테이너에서Caused by: ! java.net.UnknownHostException: 690bd678bcf4: Name or service not known와같은 에러와함께 컨테이너 실행이 실패했고스택오버플로우 검색에서 얻은 정보를 통해localhost를 수정하는 sh파일을 도커컨테이너 실행하도록 변경하여 에러를 해결했습니다.(해당 스크립트)#!/bin/bash set -e shift cmd="$@" echo "127.0.0.1 $HOSTNAME" >> /etc/hosts exec $cmd현재 실행된 컨테이너는 아무문제없이 잘 작동하지만제가 이부분에대해 이해가 잘 안되기도하고 올바른방법으로 해결한것인지 불안한감이 있어서혹시나 좋은 피드백을 받을 수 있을까해서 질문올립니다! 위에러는 강의랑 다른구성의 서버실행도중 발생한 에러이고 저또한 정확한 질문을 드린것은 아니라답변이 안될거라 생각되지만 혹시나하는 마음에 올려봅니다!!
-
해결됨[코드캠프] 부트캠프에서 만든 고농축 백엔드 코스
강의 전체 소스코드 깃허브가 있을까요?
도커까지 진행했는데제 깃허브에 따로 저장하지않고 진행하다가하드가 고장나서 다 날려버렸네요 ... ㅜ없으면 어쩔수 없지만....아 그리고 가상머신에서 우분투 설치해서 해도 될까요?
-
해결됨개발자를 위한 쉬운 도커
이미지라는 것에 대한 궁금증
안녕하세요 강사님 ! 정말 도커에 대해서 처음 듣는데도 이해하면서 들을 수 있어 감사합니다 . 우선 궁금한 것이, 이미지라는 것이 결국 애플리케이션을 실행하는데 필요한 모든 파일과 설정을 포함하는 읽기 전용 템플릿 ? 파일 시스템이라는 것을 이해했습니다.그런데 궁금한 것이, 그렇다면 지금처럼 계속 이미지를 nginx만 넣어주고 있는데 이후에 만약 제가 따로 개발한 애플리케이션을 이미지로 넣을 수도 있는 것인가요 ? 보통 이미지에는 어떤 것이 들어가는지 궁금합니다. 말 그대로 프로그램이면 다 올라갈 수 있는 것인가요 ?
-
해결됨AWS로 구축하는 MSA와 컨테이너 오케스트레이션
path기반의 라우팅 테스트 실패이유가 궁금합니다
라우팅 부분이 제대로안되는 것 같아 경로기반 라우팅 테스트후에 타겟그룹을 연결하려고 하는데요라우팅 테스트를 실패하지만 원인을 모르겠어서 질문드립니다. public subnet에 로드밸런스를 생성한뒤 80번 포트로 2가지 룰을 만들었습니다.첫번째는 기본값으로 default response를 반환2번째는 /mp4* 경로로 들어오는 모든 값에대해 mp4 reponse라는 텍스트를 반환하도록 설정했는데 alb도메인/mp4 입력시, alb도메인 입력시 모두 "default response"가 반환되는데어떤부분을 제가 이해못해서 안되는지 잘 모르겠는데 혹시 짐작가는 부분이 있다면 알려주시면 감사하겠습니다