묻고 답해요
164만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
해결됨비전공자도 이해할 수 있는 Docker 입문/실전
depends_on에 따른 컨테이너 실행 순서
services: my-server: build: . ports: - 8080:8080 depends_on: my-db: condition: service_healthy my-db: image: mysql environment: MYSQL_ROOT_PASSWORD: pwd1234 MYSQL_DATABASE: mydb volumes: - ./mysql_data:/var/lib/mysql ports: - 3306:3306 healthcheck: test: ["CMD", "mysqladmin", "ping"] interval: 5s retries: 10강의 자료대로 이렇게 작성했는데이렇게 설정하면 my-db가 healthy할 때 my-server 컨테이너를 실행한다고 이해했습니다.그런데 docker compsoe logs로 확인해 보면 my-server가 먼저 실행되고, 중간에 대기하는 거 같은데, 저는 애초에 my-server 컨테이너 실행이 늦춰지는 거라 생각했었거든요.healthcheck와 depends_on이 정확히 어떻게 동작하는 건가요?
-
미해결[2026 NEW] 기초부터 이해하는 쉬운 쿠버네티스 - 리소스편
영상 강의에서 CoreDNS 이론을 설명하는 부분이 누락된 것 같습니다.
안녕하세요.영상 강의에서 CoreDNS 이론을 설명하는 부분이 누락된 것 같습니다. 강의 자료에는 있는데, 영상 자료는 없는 것 같아서요.확인 부탁 드려요. 감사합니다.
-
해결됨[2026 NEW] 기초부터 이해하는 쉬운 쿠버네티스 - 리소스편
51. L7 라우터와 인그레스 실습... 강의 복습 중 ingress 설정과, nginx.conf 파일 내용에 대해서 궁금한 점이 생겼습니다.
안녕하세요 선생님, 강의 복습 중에 조금 헷갈리는 부분이 생겨서 문의드립니다.현재 github 에서 제공해주시는 SUBSMANAER 프로젝트에서 yaml/01-basic/ingress/sm-ingress-domain.yaml파일에 보시면 다음과 같습니다.apiVersion: networking.k8s.io/v1 kind: Ingress metadata: name: sm-ingress namespace: subsmanager spec: ingressClassName: nginx rules: - host: subs-manager.com http: paths: - path: / pathType: Prefix backend: service: name: sm-frontend port: number: 80 - path: /users pathType: Prefix backend: service: name: sm-user port: number: 80 - path: /sub pathType: Prefix backend: service: name: sm-subs port: number: 80 - path: /recommend pathType: Prefix backend: service: name: sm-reco port: number: 80그리고 sm-frontend/nginx.conf 파일을 보면 아래와 같이 설정되어 있습니다.server { listen 80; location / { root /usr/share/nginx/html; index index.html; try_files $uri $uri/ /index.html; } # API 요청을 백엔드 서버로 프록시 location /users { proxy_pass http://sm-user:5000; } location /sub { proxy_pass http://sm-subs:5000; } location /recommend { proxy_pass http://sm-reco:5000; } } 여기서 갑자기 헷갈립니다.애초에 ingress 단에서 /sub//recommend , /user 요청에 대한 처리를 중간에 가로채서 처리를 하고 있는데, 굳이 frontend 에서 사용하는 nginx.conf 에도 설정하는 것이 좀 와닿지 않습니다. 이렇게 중복으로 설정해야되는 이유가 뭔지 궁금합니다!
-
미해결비전공자도 이해할 수 있는 Docker 입문/실전
실제 웹 서비스 배포 시 질문
안녕하세요 강사님! 저는 프론트엔드 개발자이고 현재 진행중인 사이드 프로젝트에서 Docker, AWS를 사용해서 Next.js 프로젝트를 배포하려고 합니다.머릿속으로 큰 그림을 그려봤을때, 강의에서 나오는 컨테이너 역할을 해주는 게 AWS EC2이고 https의 기본 포트는 443번이니까 실제 배포할때는 docker run -d -p 443:3000 my-web-server 이런식으로 포트가 맵핑돼야한다고 이해하고 있는데 제가 올바르게 이해하고 있는 게 맞을까요? 추가로 현재는 로컬에서 직접 docker run -d -p 80:3000 my-web-server를 실행하는데, 배포하게 된다면 이 명령어를 누가 실행시켜주는지도 궁금합니다..!
-
해결됨개발자를 위한 쉬운 도커
vscode 터미널 설정 관련 질문
안녕하세요vscode 설치하고 나서 기본프로필설정 하면 git-bash 가 보이질 않습니다.어떻게 하면 될까요?
-
미해결[2026 NEW] 기초부터 이해하는 쉬운 쿠버네티스 - 리소스편
gitbash 문제
실습 중에 위와 같이 앞에 이상한 문자가 추가되는데 혹시 해결법을 아실까요? 붙여 넣기 하지 않고 직접 타이핑하고 있는데도 이상한 문자가 앞에 삽입이 되는 것 같습니다. 윈도우 환경에서 git bash 사용하고 있습니다. 안녕하세요. 황현우입니다.강의에 포함된 내용이 아니더라도 강의를 듣다가 궁금하신 점이 생기시면 부담없이 편하게 질문해주세요. 실습에 오류가 발생했거나 명령어가 예상한대로 실행되지 않으신 경우 사용하시는 OS 환경과 화면을 캡처해서 보내주시면 빠르고 자세하게 답변을 드릴 수 있습니다. 질문은 가능한 빠르게 답변 드리겠습니다. 😀감사합니다.
-
미해결대세는 쿠버네티스 (초급~중급편)
클러스터 초기화 및 팟 네트워크 세팅시 문제가 있습니다
안녕하세요 현재 수동설치로 진행중인데 kubeadm, kubelet, kubectl 패키지까지는 설치가 잘 진행 되었습니다 문제는 클러스터 초기화 및 pod network 세팅 과정인데요 kubeadm init --pod-network-cidr=20.96.0.0/12 --apiserver-advertise-address 192.168.56.30 명령어 실행 후에 다음과 같은 문제가 발생하였습니다현재 이런 로그가 뜨는데 뭐때문에 그러는 건지 궁금합니다 그리고 vagrantfile에 kube패키지 설치하는 구간에서 SHELL$install_master = <<-SHELL 리눅스에서 명령어로 입력해도 안되는 것 같은데 의미가 궁금합니다
-
미해결대세는 쿠버네티스 (초급~중급편)
환경 구성에 있어서 질문드립니다
현재 사정상 회사망에서 구성을 하여 공부해볼 생각인데 말그대로 회사망이라서 vagrant를 사용하는 데에 제한이 있습니다 그래서 직접 설치할 예정이고 github에 올려주신 vagrantfile 내용을 토대로 설치해볼 생각인데 rocky 리눅스 같은 경우 8버전을 쓰는지도 궁금하고 minimal 버전으로 설치해서 구성하는지도 궁금합니다 이전에도 비슷한 내용으로 질문 드린 적이 있긴한데 제가 알고 있는 지식이 많지 않아 한계가 있어서 차근 차근 설치해 보면서 공부해 보려고 하는데 이전에도 언급해주신 적이 있어서 우선 카페에 올려주신 mac 설치 버전을 기점으로 참고하여 설치해보려고 합니다
-
미해결비전공자도 이해할 수 있는 Docker 입문/실전
도커 volume 질문
안녕하세요,1.도커 이미지를 이서버 , 저서버 왔다가 하는 경우면도커 컨테이너?이미지? 안에 있는 volume에 db를 저장해놓는게 좋죠??(호스트 storage를 이용해 db를 저장할 수도 있다고 하셔서 질문 드립니다) 도커 컨테이너 volume 저장 공간은 원하는 만큼 조정 할 수 있나요 (최대 호스트 디스크 저장공간)?도커 사용이 처음이라 질문이 모호한점 양해 부탁드립니다..
-
미해결대세는 쿠버네티스 (초급~중급편)
configMap 파일생성
configMap과 Secret을 파일로만들었는데 목록에서 안보입니다 파일이 없다고 떠서 pod도 생성실패되었엇어요 ConfigMap, Secret-실습 2:44영상
-
미해결대세는 쿠버네티스 (초급~중급편)
dashboard에서 pod 생성이 되지 않습니다.
안녕하세요 제 설치환경은 mac이고 카페에 올라가 있는 가이드대로 설치하고 노드연결까지 완료했습니다.대시보드에 접속해서 pod 생성하려고 하는데 권한이 없는지 해당화면이 나옵니다. 해결할 수 있는 좋은 방법이 있을까요?
-
미해결쿠버네티스 어나더 클래스-Sprint3 (#실무핵심 #Docker #Nginx #Minio #Longhorn)
Volume과 VolumeMount는 왜 나눠놨을까요?
안녕하세요.수업 중 뜬금없이 든 생각인데요.. 마운트 되지 않으면 볼륨을 붙일 필요가 없을텐데 왜 볼륨과 볼륨마운트를 나눠놨을까요?그냥 든 생각은 볼륨은 파드에 할당하고 볼륨마운트는 컨테이너에 할당하는 속성이라서 그런가(?) 생각도 들긴 하는데요.. 혹시 이유가 있을까요?
-
미해결대세는 쿠버네티스 (초급~중급편)
nodePort 서비스 접근 Client sent an HTTP request to an HTTPS server
[👍좋은 질문을 했을 때 좋은 답변이 돌아 옵니다]1. 실습 중 본인의 환경이 가이드와 다른 부분이 있었다면 말씀해주세요.2. 해당 문제의 발생 빈도(재설치 여부)와 문제 해결을 위해 시도해본 케이스를 말씀해 주시면 원인 파악에 큰 도움이 됩니다.3. 에러 메시지만 봐서는 저도 모르는 경우가 많아요. 그전에 했던 작업이 포함된 캡쳐 화면도 부탁 드려요.4. 영상 내용에 대한 질문 시 해당 시간을 같이 올려 주시면 답변을 드리는 시간이 더 빨라집니다.5. 긴 로그는 제 메일로 보내주세요. (k8s.1pro@gmail.com) Service-실습 4:16 강의 보면서 따라 하는데 >curl 192.168.56.31:30000/hostnameClient sent an HTTP request to an HTTPS servercurl -k https://192.168.56.31:30000/hostname404 page not found이렇게 뜨네요 ㅠ
-
미해결대세는 쿠버네티스 (초급~중급편)
대시보드 화면이 달라요 ㅠㅠ
[👍좋은 질문을 했을 때 좋은 답변이 돌아 옵니다]1. 실습 중 본인의 환경이 가이드와 다른 부분이 있었다면 말씀해주세요.2. 해당 문제의 발생 빈도(재설치 여부)와 문제 해결을 위해 시도해본 케이스를 말씀해 주시면 원인 파악에 큰 도움이 됩니다.3. 에러 메시지만 봐서는 저도 모르는 경우가 많아요. 그전에 했던 작업이 포함된 캡쳐 화면도 부탁 드려요.4. 영상 내용에 대한 질문 시 해당 시간을 같이 올려 주시면 답변을 드리는 시간이 더 빨라집니다.5. 긴 로그는 제 메일로 보내주세요. (k8s.1pro@gmail.com) Service-실습 3:34 여기서 노드포트 서비스 생성 후 엔드포인트에 포트가 두개가 나온는데요 제 대쉬보드는 이상하게 강의에 나오는것과 계속 달라도 무시하고 쭉 진행했는데 이번에는 포트가 안보여서요강의에는 상세-> 내부엔드포인트에 포트가 두개나옴 저는 메타데이터만 보여요 ㅠㅠ
-
해결됨비전공자도 이해할 수 있는 Docker 입문/실전
HTTPS로도 받고 싶으면 docker compose에 443도 쓰면 될까요?
services: my-web-server: build: . ports: - 80:3000이게 자료 예시인데 HTTPS도 받으려면 ports 부분에 - 443:3000도 써 주면 되는 건가요?현업에선 어떤 식으로 하나요?
-
미해결비전공자도 이해할 수 있는 Docker 입문/실전
sql 볼륨 폴더 지우면 데이터베이스 데이터 날라가는거 아닌가요?
mysql_data 폴더 지우고 다시 폴더 만들면 데이터베이스 안에 있는 데이터가 다 날라가는거 아닌가요? 그럼 볼륨을 사용하는 이유가 없을거 같아서요
-
해결됨비전공자도 이해할 수 있는 Docker 입문/실전
39강 도커파일 빌드 경로 질문이 있습니다.
[01:57] 에 상대경로로 .을 찍으라고 돼있는데요.그냥 절대경로 쓰는게 더 낫지 않나요?절대경로로도 동작하는데, 귀찮게 디렉토리 이동해야 하는 상대경로를 쓰는 이유가 궁금합니다.혹시 나중에 자동화할때 상대경로를 써야한다든지 등의 실무적인 이유가 있을까요?제가 모르는 큰 그림이 있는지 궁금합니다.
-
미해결비전공자도 이해할 수 있는 Docker 입문/실전
도커파일 copy
폴더 복사가 안되서요. 여러번 해봤는데 이미지 새로 생성 안하면 변경이 안되나봐요. 새로 생성한 이미지로 해보면 my-app 이 생성됩니다.
-
미해결대세는 쿠버네티스 (초급~중급편)
대시보드 접근이 안됩니다!
mac m 시리즈 사용중이라 자료 확인해서 노드2대 설치 및 마스터에 조인까지 완료하였는데요![root@k8s-master ~]# kubectl get nodes NAME STATUS ROLES AGE VERSIONk8s-master NotReady control-plane 12m v1.27.2k8s-node1 NotReady 28s v1.27.2 대시보드는 ERR_ADDRESS_UNREACHABLE 에러와 함께 접속이 안됩니다 ㅠㅠ 우선 ping 192.168.56.30 했을때는 이상이 없고30000 포트가 열려있는지 확인하고자 netstat 명령어 사용해보려고 했는데 명령어 설치가 안되어 있어서 확인을 못하였고(혹시 설치시 문제가 생길까봐 설치하지 않았습니다!) 제 피씨에서 telnet 으로 확인하면 30000 포트 확인 시 telnet 연결이 안되어서 포트가 막혀있는게 아닐까 싶기도 한데어떤 부분을 확인해야 할까요 ㅠㅠ?
-
해결됨비전공자도 이해할 수 있는 Docker 입문/실전
실무에서 docker compose up --build를 할 때
docker compose up --build 같은 명령어는 실무에서 보통기존 컨테이너를 중지한 다음에 하는 건가요? 아니면 실행 중인 상태에서 바로 저 명령어를 쓰는 편인가요?상관없나요?