묻고 답해요
164만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
해결됨비전공자도 이해할 수 있는 Docker 입문/실전
dockerfile build 질문
docker build -t my-jdk17-server .명령어 실행했는데 선생님처럼 my-jdk17-server 이미지만 생성되는게 아니라openjdk:17-jdk 이미지까지 자꾸 생성이 되는데 왜 그런지 이유가 궁금합니다!
-
미해결비전공자도 이해할 수 있는 Docker 입문/실전
PostgreSql permission 에러
안녕하세요.실습을 진행하는 도중에 권한 문제와 관련된 에러를 만났습니다.docker logs 7be chmod: changing permissions of '/var/lib/postgresql/data': Operation not permitted The files belonging to this database system will be owned by user "postgres". This user must also own the server process.디렉토리에 대한 적절한 권한을 postgresql 컨테이너가 가지고 있지 못해서라고 하는데요. 이 때, Docker 볼륨을 사용해서 문제를 해결하는게 가장 적절할까요?docker volume create postgredata
-
미해결비전공자도 이해할 수 있는 Docker 입문/실전
도커 설치
안녕하세요. 작성해주신 게시글을 보고 도커를 세팅하고 있습니다.일단 도커 설치는 완료하였습니다.이후 wsl 커널 업데이트를 하라고 써있는데 저는 wsl 업데이트 안내창도 안나오고 powershell에서 docker pull nginx를 입력했을때 정상적으로 작동이 됩니다. 이러면 커널 업데이트를 안해줘도 되는건가요?
-
해결됨개발자를 위한 쉬운 도커
Remote JVM Debug Setting
실무에서 도커를 사용하고 있지만 intelliJ 에서 spring app을 실행하고 개발환경을 맞출 수 있다는 생각은 안해봤습니다. 좋은 내용 감사합니다.다만 remote JVM Debug 설정을 추가할 때 before launch 설정중 '+'에서 'Lanch Docker Before Debug' 옵션이 없는데 왜그런걸까요? 확인해주시면 감사하겠습니다. 좋은 하루 되세요
-
미해결비전공자도 이해할 수 있는 쿠버네티스 입문/실전
ECR에서 이미지를 받아오지 못하고있습니다
ECR에서 이미지를 못받아 오는거같습니다... 무슨 문제일까요..NAME READY STATUS RESTARTS AGE spring-deployment-6fdbd9cd87-j8ljj 0/1 ErrImagePull 0 6m1s spring-deployment-6fdbd9cd87-mchqp 0/1 ErrImagePull 0 6m1s spring-deployment-6fdbd9cd87-tp5x6 0/1 ErrImagePull 0 6m1sError from server (BadRequest): container "spring-container" in pod "spring-deployment-6fdbd9cd87-j8ljj" is waiting to start: trying and failing to pull imageEvents: Type Reason Age From Message ---- ------ ---- ---- ------- Normal Scheduled 4m7s default-scheduler Successfully assigned default/spring-deployment-6fdbd9cd87-j8ljj to ip Normal Pulling 70s (x5 over 4m6s) kubelet Pulling image "960452239058.dkr.ecr.ap-northeast-2.amazonaws.com/kube-ecr:1.0" Warning Failed 70s (x5 over 4m6s) kubelet Failed to pull image "960452239058.dkr.ecr.ap-northeast-2.amazonaws.com/kube-ecr:1.0": rpc error: code = NotFound desc = failed to pull and unpack image "960452239058.dkr.ecr.ap-northeast-2.amazonaws.com/kube-ecr:1.0": no match for platform in manifest: not found Warning Failed 70s (x5 over 4m6s) kubelet Error: ErrImagePull Normal BackOff 10s (x15 over 4m5s) kubelet Back-off pulling image "960452239058.dkr.ecr.ap-northeast-2.amazonaws.com/kube-ecr:1.0" Warning Failed 10s (x15 over 4m5s) kubelet Error: ImagePullBackOff 아키텍처 불일치 문제 같은데ARM64용 이미지 빌드 및 푸시를 해서 해결하려니Dockerfile이 없다고ERROR: failed to solve: failed to read dockerfile: open Dockerfile: no such file or directory꼬리에 꼬리를 무는게 뭔가 잘못된방향으로 가는거 같아서 도움이 필요합니다..
-
미해결비전공자도 이해할 수 있는 Docker 입문/실전
로컬과 ec2에서 같이 실행이 안되나요?
기존 로컬에서 mysql+spring 프로젝트에 해당 강의 영상을 보며 적용하고 있었습니다. compose.yml 설정을 하고 application.yml 설정까지 하니 localhost -> my-db 로 바뀌어서 그런지,,로컬에서는 db 연결이 실패했다고 뜨는데요 (ec2 인스턴스에서는 실행 됩니다) 정상적인 것인지 궁금합니다.
-
미해결비전공자도 이해할 수 있는 Docker 입문/실전
application.yml 변경 후 ecr push 시 변경내역 업데이트
스프링부트 기본 포트인 8080에서 80으로 변경하고 싶어. application.yml 설정에서 port:80 변경 후 다시 push 하였는데요. .gradlew clean buildaws 로그인docker compose up -d --builddocker push "url" 그런데 이렇게 이미 존재한 이미지라고 뜹니다. 0e05aa91b84c: Layer already exists 빌드 시 .yml이 변경되면 .jar 파일도 변경되어 이미지가 새로 push되어야 하지 않나요?이 부분 때문에 며칠 고민 하고 있어서 질문드립니다...
-
해결됨개발자를 위한 쉬운 도커
빌드 방식에 대해 질문 있습니다.
빌드 방식 설명에서도커 파일을 작성해서 이미지 빌드 명령을 실행하면도커가 임시 컨테이너를 실행하고 도커 파일에 정의된 작업을 수행 및 커밋하여 새로운 레이어를 생성하고 임시 컨테이너를 삭제한다.이렇게 그림으로 되어있는데,커밋을 했다는게 새로운 레이어가 포함된 이미지를 만들었다는 건가요?임시 컨테이너 생성, 커밋, 임시 컨테이너 삭제가 반복저 과정이 반복되는 거면 지시어 한 문장을 만날 때마다 수행 및 커밋하고 임시 컨테이너 삭제하고를 반복한다고 이해했는데,이러면 지시어가 많을 수록 임시 컨테이너 생성, 삭제가 많이 반복되는 건가요?
-
미해결쿠버네티스 어나더 클래스-Sprint3 (#실무핵심 #Docker #Nginx #Minio #Longhorn)
강의내용설명중 이해안가는부분이 있습니다.
15분 정도 강의내용중에 "StatefulSet 경우는 스토리지 클래스가 먼저 만들어져 있는 상태에서 StatefulSets에 이 VolumeClaimTemplage이라는 속성에storageClass이름을 넣으면 이렇게 각각의 파드들이 생길때마다 PVC와 PV가 만들어지고 볼륨이 만들어지고 이 구성들이복잡해지는데 VolumeClaimTemplage사용하면 이렇게 storageclass가 있으면 statefulSet에서 사용만하면되서 구성방법은더 쉬워졌다."이말씀이 있습니다.같은 말인거 같은데요...전자 후자 모두 VolumeClaimTemplage 사용하는데 앞 내용에서는 복잡하고 뒤에서는 쉬워졌다고 말씀하시니 헷갈립니다.똑같이 VolumeClaimTemplage 사용하는 내용같은데 말이죠~
-
미해결비전공자도 이해할 수 있는 Docker 입문/실전
도커 설치 명령어 (해결 되었습니다. )
안녕하세요. 수업 자료에 있는 도커 설치 명령어를 복사 붙여넣기 했는데 설치가 안되고 command not found 라는 답만 나옵니다. 왜 이러는 걸까요? 감사합니다.
-
미해결쿠버네티스 어나더 클래스-Sprint3 (#실무핵심 #Docker #Nginx #Minio #Longhorn)
tls ingress 기본값 설정
apiVersion: networking.k8s.io/v1 kind: Ingress metadata: annotations: nginx.ingress.kubernetes.io/ssl-redirect: "true"tls 적용된 ingress는 redirect 기본값이 true라고 적어주셨는데kubectl get ingress -n anotherclass-322 portal-3222 -o yaml 로 보면 안나오는데위에 기본값은 원래 있다는 의미로 저렇게 적어만 주셨던걸까요? 그리고 portal.com:31443/hostname으로 접속하면 페이지가 열리는데 portal.com:31080/hostname 요청하면 https로 리다이렉션 되니 페이지가 열려야 하는거죠?그런데 노드포트가 아니니 안열리는것 뿐인거고...실제는 portal.com:31443/hostname이거 요청했을때와 똑같은 페이지가 열려야 하는거죠?
-
미해결비전공자도 이해할 수 있는 Docker 입문/실전
도커 컴포즈 질문있습니다.
안녕하세요.현재 Docker Compose를 활용하여 여러 개의 컨테이너를 다루는 강의를 수강 중입니다. 섹션 6, "Docker Compose를 활용해 2개 이상의 컨테이너 관리하기"의 마지막 파트를 듣고 있습니다.다름이 아니라, 강의를 따라 실습하던 중 궁금한 점이 생겨 이렇게 문의드립니다.현재 Docker 환경에는 DB와 Redis가 구성되어 있는데요,$ ./gradlew clean build$ docker compose down $ docker compose up --build -d위와 같은 순서로 명령어를 실행하였습니다.여기서 ./gradlew clean까지는 이해가 되지만, gradlew build를 실행하면 아직 DB가 연결되지 않은 상태에서 JAR 파일이 빌드되는 것이므로 오류가 발생해야 하는 게 아닌가 하는 의문이 들었습니다.그래서 오히려 docker compose up --build -d 명령어로 컨테이너를 먼저 실행시킨 다음에, ./gradlew clean build를 실행하는 것이 더 맞는 순서가 아닐까 하는 생각이 드는데요.혹시 이에 대해 설명해주실 수 있을까요?감사합니다.
-
미해결비전공자도 이해할 수 있는 Docker 입문/실전
window 환경에서 vi 명령어
안녕하세요. Window환경에서 PowerShell 사용해서 수업을 듣고있습니다 🙂 vi 명령어 대신 notepad empty.txt 이렇게 사용하고 있는데 혹시 다른 명령어를 쓰는게 좋을까요 ? 그리고 윈도우환경에서 PowerShelll 말고 리눅스 환경으로 실습할 수 있는 방법은 없나요 ... ?
-
미해결쿠버네티스 어나더 클래스-Sprint 1, 2 (#실무기초 #설치 #배포 #Jenkins #Helm #ArgoCD)
cicd Vagrant 파일 다운로드 404 에러가 발생합니다.
[👍좋은 질문을 했을 때 좋은 답변이 돌아 옵니다]1. 실습 중 본인의 환경이 가이드와 다른 부분이 있었다면 말씀해주세요.2. 해당 문제의 발생 빈도(재설치 여부)와 문제 해결을 위해 시도해본 케이스를 말씀해 주시면 원인 파악에 큰 도움이 됩니다.3. 에러 메시지만 봐서는 저도 모르는 경우가 많아요. 그전에 했던 작업이 포함된 캡쳐 화면도 부탁 드려요.4. 영상 내용에 대한 질문 시 해당 시간을 같이 올려 주시면 답변을 드리는 시간이 더 빨라집니다.5. 긴 로그는 제 메일로 보내주세요. (k8s.1pro@gmail.com)6. 카페 [강의 자료실]에도 많은 질문과 답변들이 있어요!curl -O https://raw.githubusercontent.com/k8s-1pro/install/main/ground/cicd-server/vagrant-2.4.3/Vagrantfile nano Vagrantfile404: Not Found파일 안에 위와 같이 적혀 있습니다.
-
미해결비전공자도 이해할 수 있는 Docker 입문/실전
volume 생성 후 DB 조회 시 동일한 DB 없음
PS C:\Users\SSAFY\Inflearn\docker-mysql> docker run -e MYSQL_ROOT_PASSWORD=$(비밀번호) -d -p 3306:3306 -v C:\Users\SSAFY\Inflearn\docker-mysql\mysql_data:\var\lib\mysql mysql 0b272839d37a21ba514052f486d744988addbbfd898f88e4bbb77383c1a35d6c PS C:\Users\SSAFY\Inflearn\docker-mysql> docker ps CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES 0b272839d37a mysql "docker-entrypoint.s…" 14 seconds ago Up 13 seconds 0.0.0.0:3306->3306/tcp, 33060/tcp unruffled_diffie PS C:\Users\SSAFY\Inflearn\docker-mysql> docker exec -it 0b2 bash bash-5.1# mysql -u root -p Enter password: Welcome to the MySQL monitor. Commands end with ; or \g. Your MySQL connection id is 9 Server version: 9.3.0 MySQL Community Server - GPL Copyright (c) 2000, 2025, Oracle and/or its affiliates. Oracle is a registered trademark of Oracle Corporation and/or its affiliates. Other names may be trademarks of their respective owners. Type 'help;' or '\h' for help. Type '\c' to clear the current input statement. mysql> show databases; +--------------------+ | Database | +--------------------+ | information_schema | | mysql | | performance_schema | | sys | +--------------------+ 4 rows in set (0.014 sec) mysql> create database mydb; Query OK, 1 row affected (0.024 sec) mysql> show databases; +--------------------+ | Database | +--------------------+ | information_schema | | mydb | | mysql | | performance_schema | | sys | +--------------------+ 5 rows in set (0.001 sec) mysql> exit Bye bash-5.1# exit exit PS C:\Users\SSAFY\Inflearn\docker-mysql> docker ps CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES 0b272839d37a mysql "docker-entrypoint.s…" About a minute ago Up About a minute 0.0.0.0:3306->3306/tcp, 33060/tcp unruffled_diffie PS C:\Users\SSAFY\Inflearn\docker-mysql> docker rm -f 0b2 0b2 PS C:\Users\SSAFY\Inflearn\docker-mysql> docker run -e MYSQL_ROOT_PASSWORD=$(비밀번호) -d -p 3306:3306 -v C:\Users\SSAFY\Inflearn\docker-mysql\mysql_data:\var\lib\mysql mysql e0dbe2fa08d4ba1dec0442afacf5290a4c6ecef265be723e489b5d08f1ec237f PS C:\Users\SSAFY\Inflearn\docker-mysql> docker ps CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES e0dbe2fa08d4 mysql "docker-entrypoint.s…" 9 seconds ago Up 8 seconds 0.0.0.0:3306->3306/tcp, 33060/tcp romantic_booth PS C:\Users\SSAFY\Inflearn\docker-mysql> docker exec -it e0d docker: 'docker exec' requires at least 2 arguments Usage: docker exec [OPTIONS] CONTAINER COMMAND [ARG...] See 'docker exec --help' for more information PS C:\Users\SSAFY\Inflearn\docker-mysql> docker exec -it e0d bash bash-5.1# mysql -u root -p Enter password: Welcome to the MySQL monitor. Commands end with ; or \g. Your MySQL connection id is 9 Server version: 9.3.0 MySQL Community Server - GPL Copyright (c) 2000, 2025, Oracle and/or its affiliates. Oracle is a registered trademark of Oracle Corporation and/or its affiliates. Other names may be trademarks of their respective owners. Type 'help;' or '\h' for help. Type '\c' to clear the current input statement. mysql> show databases; +--------------------+ | Database | +--------------------+ | information_schema | | mysql | | performance_schema | | sys | +--------------------+ 4 rows in set (0.014 sec)강사님과 동일하게 volume 생성 후 다른 컨테이너로 접속 시 mydb가 조회되지 않습니다... 원인이 무엇인지 궁금합니다.비밀번호는 암호화했습니다.
-
미해결비전공자도 이해할 수 있는 Docker 입문/실전
compose 파일 작성문의
version: "3.8" services: mysql: image: mysql:5.7 volumes: - todo-mysql-data:/var/lib/mysql environment: MYSQL_ROOT_PASSWORD: secret MYSQL_DATABASE: todos volumes: todo-mysql-data:compose 파일을 작성할 떄 위와 같이 작성하는것 같은데요. version: "3.8"은 cmd에서 docker --version해도 안나오는데 어떻게 아나요.?
-
미해결쿠버네티스 어나더 클래스-Sprint3 (#실무핵심 #Docker #Nginx #Minio #Longhorn)
tls인증서 관련시
반면, nginx에 인증서를 넣을때는 이런 도메인이름( DNS Name : *.com ) 을 사면 여러 어플리케이션에 적욜수 있는데 이때는 비용이 더든다는 단점!이 있다고 말씀하셨는데요 nginx에 인증서를 넣을때 말고 ingress에 저런 도메인을 넣을수는 없다는 얘긴가요? nginx에 인증서 넣을때 *.com만 넣을수있는것처럼 반면, 말씀하셔서....헷갈려서 여쭤봅니다. 하나의 명확한 도메인은 ingress에만 넣을수 있다는것이죠? * 로 만든 여러 인증서는 nginx에만 넣을수있고, 또 사설만 가능하구요?
-
미해결쿠버네티스 어나더 클래스-Sprint3 (#실무핵심 #Docker #Nginx #Minio #Longhorn)
노트포트타입서비스 만들때 관한 설명
모든 노드에 포트가 만들어진다.이포트에 들어온 트래픽은 각각의 워커노드에 있는 iptables로 들어간다고 하셨는데요.동시에 각각 들어간다는 말이 아니고 특정 워커노드로 들어가서 그 노드의 iptables로 들어가는거지요? 그런데 kube-proxy라 다른 노드의 있는 파드로 라우팅을 해준다고 했는데 그럼 iptables와 kube-proxy역할이 각각 다른건가요? iptables는 로드밸런싱역할을 해주는것인가요?
-
미해결쿠버네티스 어나더 클래스-Sprint3 (#실무핵심 #Docker #Nginx #Minio #Longhorn)
노드 cpu사용량
매번 새로운 job실행시마다 cpu가 100% 차고 그래서테스트가 순조롭게 진행되지 않느데느려질때보면 cpu가 99%찹니다.해결방법이 있을까요?;;
-
미해결비전공자도 이해할 수 있는 Docker 입문/실전
rds vs mysql
안녕하세요! 여기에서는 현재 mysql을 ec2환경에 적은 것 같은데 rds로 db환경을 구축하고 연결하는 방법과는 다른 것인가요?