inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

묻고 답해요

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

Could not find or load main class –jar 에러 발생 건

해결됨

개발자를 위한 쉬운 도커

안녕하세요. 현재 아래 빨간색 부분 강의 실습을 진행중에 있습니다. root@873e7cd9bbae:/app# ls build/libs 이렇게 했을 때 아래 처럼 정상적으로 파일이 생성되었습니다. Leafy-0.0.1-SNAPSHOT.jar Leafy-0.0.1-SNAPSHOT-plain.jar 그 다음 아래와 같이 실행 했을 때 Error 가 발생했습니다. 주신 실습 파일 그대로 빌드했습니다. root@873e7cd9bbae:/app# java –jar build/libs/Leafy-0.0.1-SNAPSHOT.jar Error: Could not find or load main class –jar Caused by: java.lang.ClassNotFoundException: –jar 이경우 어디를 체크해 봐야 하는 건지요? 감사합니다.

  • docker
  • 가상화
  • ci/cd
  • docker-compose
  • github-actions
  • docker-volume
  • docker-image
  • container
사랑2 댓글 1 좋아요 0 조회수 223

OS 관련질문

해결됨

개발자를 위한 쉬운 도커

강의를 듣다가 문득 이런 질문이 떠오르더라고요. 지금 저희가 만약 하이퍼 바이저 가상화를 사용한다고 하면 지금 제가 현재 쓰고 있는 windows가 host os가 되고 guest OS의 요청들을 hypervisor를 통해서 system call들을 받게 되는거잖아요. 그럼 컨테이너 가상화에서는 제가 쓰고 있는 Windows(OS)는 아예 배제되는건가요? HostOS가 Linux가 기본이라고 하셨는데 그럼 하이퍼바이저 가상화처럼 Linux라는 OS를 Windows가 host OS가 되어서 쓰는건가요? 조금 복잡하네요 ㅠ

  • docker
  • 가상화
  • ci/cd
  • docker-compose
  • github-actions
  • docker-volume
  • docker-image
  • container
이승주 댓글 2 좋아요 1 조회수 134

도커

해결됨

개발자를 위한 쉬운 도커

안녕하세요. 데브위키입니다. 강의에 포함된 내용이 아니더라도 강의를 듣다가 궁금하신 점이 생기시면 부담없이 편하게 질문해주세요. 실습에 오류가 발생했거나 명령어가 예상한대로 실행되지 않으신 경우 사용하시는 OS 환경과 화면을 캡처해서 보내주시면 빠르고 자세하게 답변을 드릴 수 있습니다. 질문은 가능한 빠르게 답변 드리겠습니다. 😀 감사합니다.

  • docker
  • 가상화
  • ci/cd
  • docker-compose
  • github-actions
  • docker-volume
  • docker-image
  • container
댓글 2 좋아요 0 조회수 159

Dockerfile질문입니다

해결됨

개발자를 위한 쉬운 도커

devcontainer를 통해 vscode에서 개발환경용으로 컨테이너를 만들 수 있다고 이해를 했는데요, 예제의 leafy-frontend 패키지를 보면 leafy-frontend root에 Dockerfile이 있고, .devcontainer 안에도 Dockerfile이 있는데요, .devcontainer 내부의 Dockerfile은 dev container 전용 세팅 Dockerfile인가요 ??

  • docker
  • 가상화
  • ci/cd
  • docker-compose
  • github-actions
  • docker-volume
  • docker-image
  • container
tjrwn0716 댓글 1 좋아요 1 조회수 145

애플리케이션 실행시 환경 변수에 대해서

미해결

실전! GitHub Actions으로 CI/CD 시작하기

애플리케이션을 실행하게 되면, 여러 환경 변수가 필요하게 되는데 DB 정보 URL 정보라던지. 이런 정보는 깃허브 액션에서 보통 어떻게 처리하나요?? 깃허브 액션의 secrets를 이용해서 도커 빌드시에 --build-arg를 활용하는지 ? 아니면 다른 방법으로 활용하는지 궁금합니다.

  • aws
  • kubernetes
  • ci/cd
  • github-actions
  • eks
두잇베스트 댓글 2 좋아요 0 조회수 235

어떻게 Primary-Standby Replication으로 구성되는지

해결됨

개발자를 위한 쉬운 도커

안녕하세요, 강의에서 구현해주신 Primary-Standby Replication 구조가 어떤 명령어를 통해 구성되는지 궁금해서 여쭤봅니다. 실습시에 복붙만 해서 정확히 어떤 명령어가 데이터를 복제해주고 동기화할 수 있는지, standby 쪽에서는 어떻게 읽기만 가능한지 궁금합니다. REPMGR_PRIMARY_HOST 는 Primary로 세팅되고, REPMGR_PARTNER_NODES 는 primary를 제외한 나머지 name:port는 standby로 세팅이 되는게 맞을까요? 추가로, primary-standby 방식에서 primary는 "반드시" 한개여야만 하나요 ? 여러개 일수도 있는지 궁금합니다

  • docker
  • 가상화
  • ci/cd
  • docker-compose
  • github-actions
  • docker-volume
  • docker-image
  • container
tjrwn0716 댓글 2 좋아요 1 조회수 206

캐싱에 대한 질문이 있습니다.

해결됨

개발자를 위한 쉬운 도커

COPY . . 와 같은 copy 레이어에서, 기존의 내용과 다른 경우 새로운 레이어를 생성한다고 했는데요, 기존의 내용과 다른지 같은지를 판별하려면 해당 명령어를 실행하여 결과를 가져와서 비교를 해봐야 같은지 다른지 알 수 있지 않나요?? 혹은 실행전에 특정 해시값이 존재하고, 그 해시값은 비교하는 형식으로 캐싱이 동작하나요 ? 궁금합니다!

  • docker
  • 가상화
  • ci/cd
  • docker-compose
  • github-actions
  • docker-volume
  • docker-image
  • container
tjrwn0716 댓글 2 좋아요 1 조회수 123

3030 포트 질문

해결됨

개발자를 위한 쉬운 도커

11분 50초에 3030을 사용하는 포트가 없기 때문에 정상적인 응답이 오지 않는다고 말씀하셨는데요, envnodecolorapp 내부적으로 3000 포트를 사용한다고 명시했기 때문에 응답이 오지 않는게 맞나요? 3030은 왜 사용이 불가한지 이해가 잘 가지 않습니다

  • docker
  • 가상화
  • ci/cd
  • docker-compose
  • github-actions
  • docker-volume
  • docker-image
  • container
tjrwn0716 댓글 2 좋아요 2 조회수 264

nginx port 질문입니다

해결됨

개발자를 위한 쉬운 도커

4분 58초 쯤에 nginx는 80 포트를 사용한다고 말씀하셨는데, 기본적으로 nginx는 80 포트를 사용하는건가요? docker container inspect 시에 portBindings 앞의 80/tcp 중 80이 포트를 의미하는지도 궁금합니다

  • docker
  • 가상화
  • ci/cd
  • docker-compose
  • github-actions
  • docker-volume
  • docker-image
  • container
댓글 2 좋아요 1 조회수 210

처음 강의에서 push.yaml을 workflows 폴더에서 part1으로 옮겼을때

미해결

실전! GitHub Actions으로 CI/CD 시작하기

push.yaml을 part1으로 옮기고 actions가 작동되지 않은 이유가 workflows 폴더에서 벗어나서 그런건가요? 만약 위 이유가 맞다면 테스트 할 때마다 workflows에 파일을 계속 만들어야 되나요?

  • aws
  • kubernetes
  • ci/cd
  • github-actions
  • eks
장인우 댓글 2 좋아요 0 조회수 232

Github Actions로 ECR 에 이미지 push 후, EC2 에 ssh 로 접속해 pull 받을 때 발생하는 문제

미해결

비전공자도 이해할 수 있는 CI/CD 입문·실전

======CMD====== sudo docker stop github-action-prod || true sudo docker rm github-action-prod || true sudo docker pull [ECR URL]/github-action-prod:latest sudo docker run -d --name github-action-prod -p 8080:8080 [ECR URL]/github-action-prod:latest ======END====== err: Error response from daemon: No such container: github-action-prod err: Error response from daemon: No such container: github-action-prod err: Error response from daemon: Head "https://[ECR URL]/v2/github-action-prod/manifests/latest": no basic auth credentials 2024/10/03 02:07:08 Process exited with status 1 위와 같이 컨테이너를 찾을 수 없다 그러고 'no basic auth credentials' 이런 문구가 출력됩니다 로그인도 잘됐고, ECR에 push도 잘 됐는데 왜 이런 문제가 발생하는 걸까요ㅜㅜ 실행한 스크립트는 아래와 같습니다 steps: - name: Github Repository 파일 불러오기 # uses 키워드로 Github Actions의 라이브러리를 사용할 수 있다 uses: actions/checkout@v4 - name: JDK 17 설치 uses: actions/setup-java@v4 with: distribution: corretto java-version: 17 - name: application.yml 파일 만들기 run: echo "${{ secrets.APPLICATION_PROPERTIES }}" > ./src/main/resources/application.yml - name: 테스트 & 빌드 run: ./gradlew clean build - name: AWS Resource에 접근할 수 있게 AWS credentials 설정 uses: aws-actions/configure-aws-credentials@v4 with: aws-region: ap-northeast-2 aws-access-key-id: ${{ secrets.AWS_ACCESS_KEY_ID }} aws-secret-access-key: ${{ secrets.AWS_SECRET_ACCESS_KEY }} # ECR 에 업로드 하기 위한 과정 - name: ECR에 로그인하기 id: login-ecr uses: aws-actions/amazon-ecr-login@v2 - name: Docker 이미지 생성 run: docker build -t github-action-prod . - name: Docker 이미지에 Tag 붙이기 run: docker tag github-action-prod ${{ steps.login-ecr.outputs.registry }}/github-action-prod:latest - name: ECR에 Docker 이미지 Push하기 run: docker push ${{ steps.login-ecr.outputs.registry }}/github-action-prod:latest # ECR 에 업로드한 Docker Image 를 EC2 로 가져와 실행시키기 - name: SSH로 EC2에 접속하기 uses: appleboy/ssh-action@v1.0.3 with: host: ${{ secrets.EC2_HOST }} username: ${{ secrets.EC2_USERNAME }} key: ${{ secrets.EC2_PRIVATE_KEY }} script_stop: true script: | sudo docker stop github-action-prod || true sudo docker rm github-action-prod || true sudo docker pull ${{ steps.login-ecr.outputs.registry }}/github-action-prod:latest sudo docker run -d --name github-action-prod -p 8080:8080 ${{ steps.login-ecr.outputs.registry }}/github-action-prod:latest

  • aws
  • docker
  • ci/cd
  • github-actions
  • aws-code-deploy
  • infrastructure
  • aws-ec2
19 댓글 2 좋아요 0 조회수 571

이미지빌드 실습 질문

해결됨

개발자를 위한 쉬운 도커

데이터베이스, 백엔드, 프론트 실습에서 컨테이너 실행 실습과 도커파일 이미지 빌드 실습 두개를 하는데 컨테이너 실행 실습은 커밋 방식을 통해 이미지를 만드는 방법인건가요? 두 실습의 연관이 무엇인지 모르겠어요 ㅠㅠ

  • docker
  • 가상화
  • ci/cd
  • docker-compose
  • github-actions
  • docker-volume
  • docker-image
  • container
양양 댓글 2 좋아요 1 조회수 170

docker push 중 경고

해결됨

개발자를 위한 쉬운 도커

안녕하세요, 강의를 열심히 수강 중인 학생입니다. (실습을 진행 중인 환경은 맥입니다.) docker push 중에 선생님과 다른 결과창이 떠서 궁금한게 생겨 질문남깁니다. 메세지 내용을 정확하게 이해할 수 없어 챗지피티한테 먼저 물어봤습니다. 지피티한테 답변을 받은 이후에 생긴 궁금증들 입니다. 레이어가 마운트되고 있다는게 정확하게 무슨 의민가요? 우선 레이어도 무엇을 지칭하는지 모르겠습니다만ㅠ 현재 실습상황에서는 docker images 명령어를 통해 image를 확인해보면, 이렇게 나와있습니다. 원본 이미지(devwikirepo/simple-web)가 이미 존재하고 그에 대한 사본(sjin980530/simple-web)이 존재하기에 이런 경우가 발생하는건가요? 그럼 지금 진행하고 있는 실습은 push를 docker hub에 하고있는건데, 로컬의 상황과는 관계없는게 아닌가요?ㅠㅠ 현재 푸시된 이미지가 단일 플랫폼 이미지라는 말은 그럼 제 실습환경(mac)이 아닌 다른 환경(윈도우 등)에서는 사용하지 못하는 이미지라는 뜻인가요? 1과 이어지는 질문입니다 원래 레이어와 푸시된 레이어의 다이제스트가 매핑되고있다라고 하는데, 이건 어떻게 이해하면 될까요? 레이어에 대한 지식이 없어 어떤 상황인지 감이 잘 안잡힙니다. 항상 감사드립니다.

  • docker
  • 가상화
  • ci/cd
  • docker-compose
  • github-actions
  • docker-volume
  • docker-image
  • container
wldls0530 댓글 2 좋아요 1 조회수 286

Github Actions

해결됨

비전공자도 이해할 수 있는 CI/CD 입문·실전

안녕하세요 . ㅎㅎ 강의 잘 보고있습니다. Jenkins 와 Github Action 비교를 해주셨는데요. Github Actions 도 많이 사용하지만 Jenkins 도 많이 사용하더라고요 gpt 로 검색을 해보니까 Plugin 이 Jenkins 가 더 좋다고 하는데 강사님은 어떻게 생각하시나요 ?

  • aws
  • docker
  • ci/cd
  • github-actions
  • aws-code-deploy
  • infrastructure
  • aws-ec2
SJ 댓글 2 좋아요 0 조회수 250

탄력적 IP

해결됨

비전공자도 이해할 수 있는 CI/CD 입문·실전

말씀하신것처럼 만약에 Frontend 를 Ec2 에 배포했을때 탄력적 IP 가 없다면 불편할것 같습니다. 하지만 강의 초반에 말씀하셨던것처럼 Frontend 배포할때 S3 로 배포할수있을것 같습니다. 이럴경우에 Backend 입장에서 S3 로 배포된 Frontend 만 인바운드 규칙으로 열어주려면 어떻게 해야할까요 ?

  • aws
  • docker
  • ci/cd
  • github-actions
  • aws-code-deploy
  • infrastructure
  • aws-ec2
SJ 댓글 2 좋아요 0 조회수 150

tobe 디렉토리를 사용하는이유

해결됨

비전공자도 이해할 수 있는 CI/CD 입문·실전

안녕하세요 강사님! 강의 너무 잘듣고 있습니다. 강의를 보다가 궁금한 점이 생겨서 질문드립니다. - name: SCP로 EC2에 빌드된 파일 전송하기 uses: appleboy/scp-action@v0.1.7 with: host: ${{ secrets.EC2_HOST }} username: ${{ secrets.EC2_USERNAME }} key: ${{ secrets.EC2_PRIVATE_KEY }} source: project.jar target: /home/ubuntu/instagram-server/tobe - name: SSH로 EC2에 접속하기 uses: appleboy/ssh-action@v1.0.3 with: host: ${{ secrets.EC2_HOST }} username: ${{ secrets.EC2_USERNAME }} key: ${{ secrets.EC2_PRIVATE_KEY }} script_stop: true script: | rm -rf /home/ubuntu/instagram-server/current mkdir /home/ubuntu/instagram-server/current mv /home/ubuntu/instagram-server/tobe/project.jar /home/ubuntu/instagram-server/current/project.jar cd /home/ubuntu/instagram-server/current sudo fuser -k -n tcp 8080 || true nohup java -jar project.jar > ./output.log 2>&1 & rm -rf /home/ubuntu/instagram-server/tobe 해당 부분을 보면 tobe폴더로 빌드파일을 전송하고 current라는 별도의 디렉토리를 두어서 그 디렉토리로 빌드파일을 옮겨서 실행하고 있는데 혹시 이렇게 하는 이유가 있을까요?? 바로 current로 전송하지 않고 굳이 임시 디렉토리를 두는 이유가 궁금합니다.

  • aws
  • docker
  • ci/cd
  • github-actions
  • aws-code-deploy
  • infrastructure
  • aws-ec2
djqwkfj43u 댓글 2 좋아요 0 조회수 211

이벤트 트리거 pull_request의 types

미해결

실전! GitHub Actions으로 CI/CD 시작하기

이 부분에서 types에 closed 가 추가되는 이유가 있을까요?

  • aws
  • kubernetes
  • ci/cd
  • github-actions
  • eks
두잇베스트 댓글 2 좋아요 0 조회수 319

region

해결됨

비전공자도 이해할 수 있는 CI/CD 입문·실전

만약에 사용자가 한국에도 있고 다른나라 미국 프랑스 에도 있다고 한다면어떻게 해야할까요 ?

  • aws
  • docker
  • ci/cd
  • github-actions
  • aws-code-deploy
  • infrastructure
  • aws-ec2
SJ 댓글 2 좋아요 0 조회수 110

Windows WSL 설치 문구 없음

해결됨

개발자를 위한 쉬운 도커

강의때 버전과 Docker 버전이 달라 WSL설치에 대한 경고문구가 나오지않습니다. 설치 하지않아도 문제없을까요? 아니면 필수적으로 설치해야할까요?

  • docker
  • 가상화
  • ci/cd
  • docker-compose
  • github-actions
  • docker-volume
  • docker-image
  • container
댓글 2 좋아요 1 조회수 244

섹션 2 - 가상화기술 질문

해결됨

개발자를 위한 쉬운 도커

강의내용 가상화 기술 사용 이전에는 하나의 OS에서 여러 프로그램을 동작시키는 경우 하나의 프로그램에서 오류가 발생하거나, 주어진 리소스보다 많은 리소스를 사용하면 다른 프로그램에 영향을 미친다. 이에 대한 해결책으로 가상화 기술을 사용하면서 각 프로그램이 독립적으로 동작하며 할당된 자원만을 사용하므로 근본적인 문제를 해결할 수 있다. 라고 이해했습니다. 질문 하지만 결국 호스트 OS가 뻗어버리면 가상화된 방식으로 동작하는 것들도 모두 뻗어버린다고 생각이 들어 근본적인 해결책이 되지는 않는다는 생각이 들었습니다. 얕은 지식으로 생각해본 결과 결국 하나의 컴퓨터에 하나의 프로그램만 돌아가도록 해야할 것 같은데, 이러면 많은 리소스가 사용될 뿐만 아니라 관리의 어려움도 있을 것 같다는 생각이 들었습니다. 제가 너무 극단적인 상황을 생각을 생각하는 걸까요? 실무 레벨에서는 실제로 어떻게 관리하는지, 정말 가상화가 근본적인 해결책이 되는지 등에 대해서 궁금증이 생겨 질문 드립니다. 강의 잘 보고 있습니다. 감사합니다! --- 추가적으로 프론트앤드 개발 환경에서 다양한 환경을 구성해보면서 도커를 공부해보고 싶은데요. 실무에서는 이런 식으로 도커를 활용하니 이런걸 중점적으로 공부하고 구성해보세요. 하는 환경이 있다면 몇개 추천해주시면 감사드리겠습니다!

  • docker
  • 가상화
  • ci/cd
  • docker-compose
  • github-actions
  • docker-volume
  • docker-image
  • container
띵호 댓글 3 좋아요 1 조회수 129

인기 태그

인프런 TOP Writers

주간 인기글