윈도우 환경으로 실습하고 계시는 분 중 저처럼 삽질 안하셨으면 하는 마음에 글을 남깁니다... ㅠ 저는 강사님과 동일하게 명령어를 수행했고, 관리자 환경임에도 불구하고 디렉토리만 만들어지며 내부의 내용물을 텅빈 상태였습니다. 이때 아래와 같이 "" 붙여주시면 잘 적용이 됩니다. docker run -e MYSQL_ROOT_PASSWORD=password123 -p 3306:3306 -v "호스트주소:/var/lib/mysql" -d mysql
개인적으로 실습을 해보고 있는 과정에서 아무리 해도 해결책을 모르는 것을 물어보고 싶어서 남겨봅니다. multistagebuild 하기전에 singlestagebuild를 하려고 하는 상황입니다. # 빌드 환경 설정 FROM gradle:7.6-jdk17 # 작업 디렉토리 설정 WORKDIR /app # Gradle 빌드 파일과 소스 코드 복사 COPY build.gradle settings.gradle . COPY src ./src # Gradle을 사용하여 애플리케이션 빌드 RUN gradle clean build --no-daemon # 빌드된 JAR 파일을 실행 환경으로 복사 RUN cp build/libs/*.jar app.jar # 빌드된 JAR 파일 실행 EXPOSE 8080 CMD ["java", "-jar", "app.jar"] 이렇게 입력을 하면 RUN cp 과정에서 " /bin/sh -c cp build/libs/*.jar app.jar" did not complete successfully: exit code: 1 " 결과가 나옵니다. (RUN cp /app/build/libs/*.jar /app/app.jar 로 해도 결과가 똑같이 나옵니다...) 하지만 RUN cp -> COPY로 수정하면 성공합니다. 이유에 대해서 물어봐도 될까요? 아무리 구글링을 해도 답을 찾기가 힘듭니다.. 또한 RUN cp로 빌드에 성공하려면 어떻게 작성해야 할까요?
자신이 직접 만든 이미지를 build 하면 docker image ls 에 뜨고 이를 docker run -d my-jdk17-server 명령어로 실행시킨다 까지 이해했습니다. 컨테이너가 내부적으로 필요한 명령어를 다 수행하면 컨네이너가 저절로 종료 된다고 하신 부분이 이해가 가지 않습니다. 이전에 mysql 실행할 때는 동일하게 run 명령어를 실행시키면 Up(실행)이 되었는데, 1) 왜 직접 만든 이미지는 실행되지 않나요? 2) mysql은 Dockerfile에 실행시키는 것까지 포함된건가요?
안녕하세요! 강의 정말 잘 들었습니다. 강의를 듣고 나서 혼자 프로젝트에 적용해 보던 중, 몇 가지 궁금한 점이 생겨 질문드립니다. 강의에서는 Docker Compose를 활용하여 세 개의 컨테이너를 하나의 컴포즈 파일로 묶고, 동일한 네트워크를 사용하여 API를 주고받는 방식을 설명해 주셨습니다. 이를 참고하여 직접 간단한 프로젝트를 만들어 실습해 보았는데, DB 연결에는 문제가 없었지만 프론트엔드와 백엔드 간의 통신에서 CORS 문제가 발생했습니다. 혹시 LEAFT 프로젝트에서는 CORS 문제를 어떤 방식으로 해결했는지 궁금합니다. 또한, AWS에 배포할 경우 Docker Compose로 프론트엔드와 백엔드를 하나로 묶어 한 번에 배포하는 것이 일반적인지, 아니면 각각 별도로 배포하는 것이 더 일반적인지도 궁금합니다. 다시 한번 좋은 강의 해주셔서 감사합니다!
실습에 문제 발생 시 최대한 캡쳐 화면을 꼭 올려 주세요. (원인 파악에 도움이 큽니다) 영상 내용 질문 시 해당 영상 제목과 내용이 있는 시간을 같이 올려주세요. (내용을 다시 들어보고 답변을 드리기 위해서 입니다) 긴 로그는 제 메일로 보내주세요. (k8s.1pro@gmail.com) 카페 [강의 자료실]에도 많은 질문과 답변들이 있어요! cafe: https://cafe.naver.com/kubeops 젠킨스 파이프라인 2211 실행완료해고 배포 잘 되었는데 쿠버네티스 대시보드에서 이런식으로 계속 경고 뜨면서 디플로이먼트 실행 안되다가 가끔씩 되어도 redinessprobe 경고 뜨는데 이유를 모르겠어서 질문 올립니다. 현재 앱은 잘 실행되는거 같은데 자꾸 이 오류가 뜨네요. 이유를 모르겠어서 질문 올립니다. 현재 총메모리량은 93퍼를 사용중인데 가상환경 서버 메모리가 남아 있더란도 이 총 메모리량때문에 오류가 뜰수 있는건가요?
안녕하세요. 강의 잘 듣고 있습니다. EC2 userdata에 강사님이 제공한 스크립트를 넣고 인스턴스 시작을 하면 스크립트 실행이 되지 않고 있어서 문의 드립니다. EC2 처음 생성시에는 스크립트가 잘 동작하는데 한번 instance stop한 다음에 다시 start 하면 실행이 되지 않습니다. 테스트를 스크립트 내에 echo 등 다양한 방법으로 시도를 해 보았는데 실행이 되지 않고 있습니다. 직접 connect 해서 아래 스크립트 실행하면 잘 됩니다. Security Group 이슈는 아닐 것 같습니다. 혹시 어떤 문제가 있는지 확인 가능할까요? 그리고 첫번째 인스턴스 생성시에 aws-operation-prac 폴더가 ec2-user에 생기는 것이 아니고 "/" 루트에 생성이 됩니다. 아래 userdata 스크립트입니다. 인스턴스를 몇개 만들어서 테스트를 해도 동일한 결과가 나옵니다. 이 이슈로 ALB, Auto scaling 등에서 진행이 되지를 않고 있습니다. #!/bin/bash sudo yum update -y sudo yum install -y git sudo yum install -y java-17-amazon-corretto-devel git clone -b 2_monolithic_cloud https://github.com/burger-2023/aws-operation-prac.git cd aws-operation-prac ./gradlew build sudo java -jar build/libs/aws-msa-monolithic-prac-0.1.jar
안녕하세요. 도커 데스크탑 설치가 회사 컴퓨터로 설치하다보니 유료버젼만 가능한 상태인데 혹시 다른 방법에 대해 설명 해주실 수 있으실까요? https://hackerpark.tistory.com/entry/Windows-%EB%8B%A8%EC%9D%BC-%EB%AA%85%EB%A0%B9-%ED%95%9C%EC%A4%84%EB%A1%9C-WSL2-Ubuntu-%ED%86%B5%ED%95%A9-%EC%84%A4%EC%B9%98%ED%95%98%EA%B8%B0 https://hackerpark.tistory.com/entry/Docker-Windows-WSL%EC%97%90%EC%84%9C-Docker-%EC%84%A4%EC%B9%98%ED%95%98%EA%B8%B0-Docker-Desktop-%EC%95%84%EB%8B%98 위 링크와 같은 글들을 봤는데 맞는지 모르겠습니다. 우선 설치해서 해보았는데 도커의 버전은 확인가능 하나(docker --version) 도커 실행이 되지 않습니다. docker is not running cannot connect to the docker daemon at unix:///var/run/docker.sock. is the docker daemon running? 위와 같이 나오는 상황입니다.
포트 포워딩을 통해 mysql을 외부에서 접속가능하게 할려고하는데 PS C:\kubernates\mysql-project> kubectl port-forward pod/mysql-deployment-545cb7c695-dxbm7 3306:3306 Unable to listen on port 3306: Listeners failed to create with the following errors: [unable to crea te listener: Error listen tcp4 127.0.0.1:3306: bind: An attempt was made to access a socket in a way forbidden by its access permissions. unable to create listener: Error listen tcp6 [::1]:3306: bind: An attempt was made to access a socket in a way forbidden by its access permissions.] error: unable to listen on any of the requested ports: [{3306 3306}] 이런식으로 오류가 떠서 어떻게 해야될지 모르겠어요...ㅠㅠ
EC2에서 ECR이미지를 pull하여 실행중에 exec /usr/java/openjdk-17/bin/java: exec format error 해당 오류가 계속발생합니다. dockerimage가 ec2의 arm64와 달라서 그렇다는 글도 있어 docker buildx build --platform linux/arm64 -t kube-ecr . 해당 명령어로 build하여 ECR에 push도 해보고 했지만 여전히 같은 오류가 발생합니다. 어떻게 해결해야할까요??
안녕하세요! Configmap과 Secret 기본 개념 강의를 보다가 궁금한 것이 생겨 문의 드립니다. 수업 자료 중 컨테이너 안에 볼륨 마운트 경로인 /usr/src/myapp/datasource/dev 안에 postgresql-info.yaml 이 생성되는 것으로 표시 설명하셨는, 실제로는 secret-datasource 마운트 경로인 secret-datasource에 있습니다. 볼륨 설정 중 "files"는 앱에서 사용할 볼륨을 설정하는 것이고, "secret-datasource"는 secret의 내용을 저장하는 볼륨으로 이해하면 맞는 걸까요?
안녕하세요 강의 재밌게 듣고 있습니다. 멀티 스테이지 빌드 강의 부분 7분42초 경에 대해 궁금한 점이 있습니다. 멀티 스테이지 빌드는 빌드 스테이지 따로, 빌드한 아티팩트 실행 스테이지 따로 이렇게 진행되는 것으로 알고 있는데요 여기서 첫 번째 스테이지에서 FROM maven AS build 이렇게 주고 --from 으로 가져올 때 빌드 컨텍스트에서 가져오지 않고 스테이지에서 가져온다고 하였는데 여기서 스테이지가 이해가 가지 않는데 첫 번째 빌드 스테이지가 실행되고 난 뒤 해당 이미지 디렉토리에서 파일을 가져온다는 뜻인가요.?
강사님 안녕하세요:) 강의 잘 듣고 있으며 docker에 대해 쉽고 친절하게 알려주셔서 감사합니다. 질문을 한개 드립니다. '[실습] AWS ECR 사용해보기' 강의를 들으면서 aws ecr get-login-password로 시작하는 명령어를 사용해 로그인을 시도했습니다. 그런데 아래와 같은 에러가 표출되었습니다. Exception ignored in: <_io.TextIOWrapper name='<stdout>' mode='w' encoding='utf-8'> BrokenPipeError: [Errno 32] Broken pipe [1] 69874 exit 120 aws ecr get-login-password --region ap-northeast-2 | 69875 killed docker login --username AWS --password-stdin 이것은 어떻게 해결할 수 있을까요~?