묻고 답해요
169만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결AWS 배포 완벽가이드 (feat. Lightsail, Docker, ECS)
loadbalancer로 vm 연결할때 궁금한 점
loadbalancer로 vm 연결할때서버에서 npm start가 아닌관리자 권한으로 sudo npm start 한 후 로드밸런서가 동작이 되던데, 왜 관리자 권한으로 해야 동작이 되나요?
-
해결됨Docker Essentials - 감 잡히는 컨테이너 & 도커
도커 이미지와 컨테이너 이미지가 다른 건가요?
강의를 듣다 보면 '도커이미지'라는 용어도 있고 '컨테이너이미지'라는 용어도 있는데 둘 다 동일한 부분 일까요? 혹시 다르면 어떻게 다른지 설명부탁드려요
-
미해결AWS 배포 완벽가이드 (feat. Lightsail, Docker, ECS)
typescript 개발 환경 세팅해주기(nodemon) 질문
nodemon 설정까지 다 하고 나서 npm run dev 하면 정상적으로 실행이 됩니다. 그런데 그 이후에 index.ts 파일을 수정했을 때곧바로 실행이 되어야 하는데그런 변화가 일어나지 않습니다. 무엇이 문제일까요?
-
미해결바로쓰는 바이브코딩 – 운영비용 0원
컴퓨터 sleep 방지
안녕하세요, 강의 잘 듣고 있습니다. 궁금한 점이 있는데, 컴퓨터가 시간이 지나면 자동으로 sleep 되는데 그걸 어떻게 막을 수 있을까요? 참고로 Mac 사용중입니다.
-
해결됨개발자를 위한 쉬운 도커
개발환경에서 도커 설정
친절한 강의 감사합니다. 준비 많이 하시고 찍으신 티가 팍팍 나네요 ㅎㅎ 개발환경에서 도커를 어디까지 세팅하고 개발을 해야될까에 대한 고민입니다. 개발 > 검증 > 운영 이렇게 3가지 환경에 대해서검증과 운영에서는 말씀해주신 Remote Debugging을 이용해서 개발에서 빌드해놓고 검증과 운영에 컨테이너와 함께 배포해놓고 디버깅하면 되겠지만.... 개발환경에서는 결국 IDE가 필요하기에 IDE 상에서 개발할려면 언어 설치와 비롯하여 여러가지 프로젝트 내에서 사용하는 종속성들을 전부 세팅을 해야되자나요? 그러면 결국 개발환경에서는 비즈니스 어플리케이션 관련해서는 도커를 사용하지 않고 개발환경 세팅이 필요한거고 , DB나 Redis와 같은 외부 모듈들만 컨테이너로 띄워놓고 개발하는게 일반적일까요?
-
미해결비전공자도 이해할 수 있는 CI/CD 입문·실전
deploy.yml작성후 원격에 push불가
강의 13:20초대 나오는데로 원격에 push를 하면 ! [remote rejected] main -> main (refusing to allow a Personal Access Token to create or update workflow .github/workflows/deploy.yml without workflow scope)이런 식으로 Push 불가 멘트가 나옵니다.토큰 발급할때 workflow 권한 잘 체크했는데 push 불가입니다. 깃 액션 보안 강화로 ssh?로 접근해야 하나요? 강의대로는 cicd 불가능한 걸까요?
-
해결됨개발자를 위한 쉬운 도커
vscode 터미널 설정 관련 질문
안녕하세요vscode 설치하고 나서 기본프로필설정 하면 git-bash 가 보이질 않습니다.어떻게 하면 될까요?
-
미해결비전공자도 이해할 수 있는 CI/CD 입문·실전
CodeDeploy 사용시 registration 요구
CodeDeploy 를 클릭했더니, 이런 문구가 뜨네요.complete your AWS registration 눌러도 콘솔 홈으로 돌아가고,credit card information 을 눌렀더니, 결제 기본 설정 창이 뜨는데, 딱히 문제될 건 없어 보여요.다른 AWS 서비스 사용할 때는 이런 문구 안 떴는데 왜 CodeDeploy만 이럴까요? ㅠㅠ
-
미해결Jenkins를 이용한 CI/CD Pipeline 구축
git 에 강의내용에 필요한 파일들 존재하지 않음
https://github.com/joneconsulting/jenkins_cicd_script/tree/master/pipeline_script위 git 에 sh 파일 및 다른 파일들 없습니다....
-
미해결비전공자도 이해할 수 있는 CI/CD 입문·실전
스프링 종료 명령어
안녕하세요 sudo fuser -k -n tcp 8080 이 명령어로 스프링 죽이시던데 실제 실무에서도 저 명령어로 스크립트를 구성하나요?
-
해결됨실전! GitHub Actions으로 CI/CD 시작하기
자료가 깨진 것 같습니다.
자료를 다운받았는데, 압축 파일 안에 아무것도 뜨지 않습니다.확인해주시고 자료를 새롭게 업로드 해주시면 감사하겠습니다
-
미해결실전! GitHub Actions으로 CI/CD 시작하기
강의자료 다운로드
강의자료 다운받으면 폴더가 비어있는데 어떻게 해야하는건가요?
-
미해결[DevOps] 빠르고 안전한 어플리케이션 배포 파이프라인(CI/CD) 만들기
cosign tlog 관련 409에러
1. 무엇을 하고 싶으신가요?cosign sign을 통한 이미지 스캔을 하고 싶은데 단순히 이미지 재빌드하고 푸시하면 해결될 것이라고 생각하는데 그러지 않고 해결할 수 있는 방법을 찾고 싶습니다. 2. 언제, 어떤 오류가 발생하시나요? cosign에서 맨처음에 태그 기반으로 사이닝을 진행(최초 --tlog-upload=false 옵션 없이 이때 따로 진행할거냐는 경고 없이 바로 사이닝 진행 , 이후 --tlog-upload=false 옵션과 함께 진행하였지만 이미 사인되어있다는 메시지 그리고 ECR을 확인해보니 레포지토리에 서명 결과가 푸시된 것을 확인) , 이후 서명 결과를 ECR에서 삭제하고 다이제스트 기반으로 sign 명령을 내려도 계속 409 에러가 발생합니다. 3. 어떤 시도를 해보셨나요? 4. 작성한 코드를 공유해주세요.cosign sign --tlog-upload=false \ --key awskms:///REDACTED-KMS-KEY-ID \ <AWS_ACCOUNT_ID>.dkr.ecr.<REGION>.amazonaws.com/<REPO>@$( docker buildx imagetools inspect \ <AWS_ACCOUNT_ID>.dkr.ecr.<REGION>.amazonaws.com/<REPO>:latest \ --format "{{json .Manifest}}" | jq -r ".digest" ) Error: signing [<AWS_ACCOUNT_ID>.dkr.ecr.<REGION>.amazonaws.com/<REPO>@sha256:<DIGEST>]: signing digest: signing bundle: [POST /api/v1/log/entries][409] createLogEntryConflict {"code":409,"message":"an equivalent entry already exists in the transparency log with UUID <REDACTED>"}
-
미해결안정적인 서비스 배포를 위한 배포 전략과 팁
무중단 배포 시 클라이언트와의 연결 보장 전략이 궁금해서 질문 남깁니다!
준형님, 안녕하세요.항상 질 좋은 강의 제공해 주셔서 감사합니다.WebSocket을 통해 클라이언트와 실시간 연결을 유지하는 서버에서 blue/green 배포가 이루어질 경우, 교체 대상 서버에 연결되어 있던 클라이언트의 세션이 끊어질 수 있을 것 같은데요.이러한 상황에서 클라이언트의 재연결 혹은 연결 보장을 위해 일반적으로 어떤 전략을 사용하시는지 여쭤보고 싶습니다.시간 괜찮으실 때 조언 주시면 정말 감사하겠습니다!
-
미해결[DevOps] 빠르고 안전한 어플리케이션 배포 파이프라인(CI/CD) 만들기
gitleaks 시크릿 스캔의 기준에 대한 질문입니다.
1. 무엇을 하고 싶으신가요? gitleaks가 secret을 판별하는 기준에 대해서, 또 지금 현 상황에 대한 이유가 궁금합니다. 2. 언제, 어떤 오류가 발생하시나요?from flask import Flask app = Flask(__name__) @app.route("/") def hello_world(): return "AROAWU22AXDEPO3JX44FD" @app.route("/rextest") def rextest(): return "REXTEST_PATH" if __name__ == "__main__": app.run( host="0.0.0.0", port=8080, debug=True, ) app.py 코드를 위처럼 작성해서 MR을 날릴 경우, 파이프라인에서 gitleaks에 시크릿 값(AWS 예제)가 스캔되지 않습니다. 때문에 build job까지 문제 없이 실행이 됩니다. 3. 어떤 시도를 해보셨나요?로컬 환경에서 강사님 코드를 pull 하고 tools 디렉토리의 gitleaks 디렉토리에서 gitleaks detect -v --no-git 명령을 수행해도 디스코드 예제와 깃랩 예제 2 종류만 스캔될 뿐 AWS 예제는 스캔되지 않습니다. 그래서 app.py 파일에 디스코드 예제를 넣어서 파이프라인을 실행할 경우, 정상적으로 gitleaks에서 시크릿이 스캔되어 job이 실패합니다. 이러한 경우, 코드 문제가 아니라 gitleaks에 대한 문제라고 생각이 드는데, 강의 영상에서는 AWS 예제가 스캔되어 job이 실패되고 저는 정상적으로 실행되는 이유가 궁금합니다. 4. 작성한 코드를 공유해주세요.stages: - gitleaks - build - deploy default: image: name: bentolor/docker-dind-awscli id_tokens: GITLAB_OIDC_TOKEN: aud: https://gitlab.com variables: AWS_DEFAULT_REGION: ap-northeast-2 IMAGE: ${CI_PROJECT_NAME}:latest REMOTE_LATEST_IMAGE: ${AWS_ECR_REPO_URL}:latest REMOTE_REGULAR_IMAGE: ${AWS_ECR_REPO_URL}:${CI_COMMIT_SHORT_SHA} .get_aws_role: &get_aws_role - > export $(printf "AWS_ACCESS_KEY_ID=%s AWS_SECRET_ACCESS_KEY=%s AWS_SESSION_TOKEN=%s" $(aws sts assume-role-with-web-identity --role-arn ${AWS_ROLE_ARN} --role-session-name "GitLabRunner-${CI_PROJECT_ID}-${CI_PIPELINE_ID}" --web-identity-token ${GITLAB_OIDC_TOKEN} --duration-seconds 3600 --query 'Credentials.[AccessKeyId,SecretAccessKey,SessionToken]' --output text)) .get_ecr_token: &get_ecr_token - *get_aws_role - aws ecr get-login-password --region ap-northeast-1 | docker login --username AWS --password-stdin ${AWS_ECR_REPO_URL} gitleaks: stage: gitleaks image: name: zricethezav/gitleaks:latest entrypoint: [""] script: - gitleaks detect -v --no-git --redact --report-format json rules: - if: $CI_PIPELINE_SOURCE == "merge_request_event" changes: paths: - app.py - Dockerfile - requirements.txt build-container-image: stage: build services: - name: docker:dind before_script: - *get_ecr_token script: - docker build -t ${IMAGE} . - docker tag ${IMAGE} ${REMOTE_LATEST_IMAGE} - docker push ${REMOTE_LATEST_IMAGE} - docker tag ${IMAGE} ${REMOTE_REGULAR_IMAGE} - docker push ${REMOTE_REGULAR_IMAGE} rules: - if: $CI_PIPELINE_SOURCE == "merge_request_event" changes: paths: - app.py - Dockerfile - requirements.txt deploy: stage: deploy image: registry.gitlab.com/gitlab-org/cloud-deploy/aws-base:latest before_script: *get_aws_role variables: AWS_DEFAULT_REGION: ap-northeast-1 script: - | export SERVICE_NAME="${CI_PROJECT_NAME}-service" export AR_SERVICE_NAME=$(aws apprunner list-services --query "ServiceSummaryList[?ServiceName=='${SERVICE_NAME}'].ServiceName | [0]" --output text) # AppRunner에 해당 레포의 매핑되는 서비스가 없는 경우 if [ ${AR_SERVICE_NAME} != ${SERVICE_NAME} ]; then export AR_SERVICE_ARN=$(aws apprunner create-service --service-name "${SERVICE_NAME}" --source-configuration "{\"AuthenticationConfiguration\": {\"AccessRoleArn\": \"${AWS_APP_RUNNER_SERVICE_ROLE_ARN}\"}, \"ImageRepository\": {\"ImageIdentifier\": \"${REMOTE_LATEST_IMAGE}\", \"ImageRepositoryType\": \"ECR\"}}" --instance-configuration 'Cpu="0.25 vCPU",Memory="0.5 GB"' --output text --query "Service.ServiceArn") echo "[+] Creating ${AR_SERVICE_ARN}" # AppRunner 서비스가 존재하는 경우 else export AR_SERVICE_ARN=$(aws apprunner list-services --query "ServiceSummaryList[?ServiceName=='${SERVICE_NAME}'].ServiceArn | [0]" --output text) aws apprunner start-deployment --service-arn ${AR_SERVICE_ARN} echo "[+] Deploying ${AR_SERVICE_ARN}" fi export AR_SERVICE_STATUS=$(aws apprunner describe-service --service-arn ${AR_SERVICE_ARN} --output text --query "Service.Status") while [ ${AR_SERVICE_STATUS} != "RUNNING" ]; do echo "[*] Waiting..." sleep 10 export AR_SERVICE_STATUS=$(aws apprunner describe-service --service-arn ${AR_SERVICE_ARN} --output text --query "Service.Status") if [ ${AR_SERVICE_STATUS} = "CREATE_FAILED" ]; then echo "[-] ${AR_SERVICE_ARN} ${AR_SERVICE_STATUS}" exit 1 fi done echo "[+] ${AR_SERVICE_ARN} deployed!" rules: - if: $CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH changes: paths: - app.py - Dockerfile - requirements.txt
-
해결됨개발자를 위한 쉬운 도커
쿠버네티스 강의 언제 나오나요..
11월 초에 나온다고 하셔서 기다리고 있습니다.아직 완강하지 않았더라도 연재식으로라도 강의 올려주셨으면 좋겠어요
-
미해결도커 마스터즈! CI/CD, DevSecOps로 자동화 보안 실무까지!
docker inspect 명령 결과에서 GraphDriver 항목을 찾을 수 없습니다.
안녕하세요. 강의 내용 알차게 잘 듣고 있습니다.다만, 강사님과 같이 docker inspect nginx:1.28.0-alpine3.21-slim 명령을 실행했을 경우 GraphDrvier 항목을 찾을 수 없고 바로 RootFS 항목만 확인되어 질문 드립니다.root@vagrant:~# docker images i Info → U In Use IMAGE ID DISK USAGE CONTENT SIZE EXTRA nginx:1.28.0-alpine3.21-slim ce2bd4775ed6 20.6MB 6.29MB root@vagrant:~# docker inspect nginx:1.28.0-alpine3.21-slim [ { "Id": "sha256:ce2bd4775ed6859d35f47d65401ee9f35f1dd00b32ed05f0ce38b68aa1830195", "RepoTags": [ "nginx:1.28.0-alpine3.21-slim" ], "RepoDigests": [ "nginx@sha256:ce2bd4775ed6859d35f47d65401ee9f35f1dd00b32ed05f0ce38b68aa1830195" ], "Comment": "buildkit.dockerfile.v0", "Created": "2025-08-13T16:03:17Z", "Config": { "ExposedPorts": { "80/tcp": {} }, "Env": [ "PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin", "NGINX_VERSION=1.28.0", "PKG_RELEASE=1", "DYNPKG_RELEASE=1" ], "Entrypoint": [ "/docker-entrypoint.sh" ], "Cmd": [ "nginx", "-g", "daemon off;" ], "WorkingDir": "/", "Labels": { "maintainer": "NGINX Docker Maintainers <docker-maint@nginx.com>" }, "StopSignal": "SIGQUIT" }, "Architecture": "arm64", "Variant": "v8", "Os": "linux", "Size": 5802435, "RootFS": { "Type": "layers", "Layers": [ "sha256:982780712fdf5e22c7ed01172785fd7059a9ec11cb375c7133dc5b06c24250ff", "sha256:0d43a52040463d2c8abf5dbcfdf7494c64098f7eab47f4499e759d796c66d90c", "sha256:b81791db8dfbab361faf2ce24c74cf8da607971931576b0ba83e2dc8755af4e8", "sha256:098b681d959ad46239860f217c74a463292b5262fe004da34aa0414fe885a78e", "sha256:12d33c2f4dc442cbdfb0c830f359cfd92e0560c34678a1198ea68f281ada2d21", "sha256:76a1ff61253d86aafba3fd803cc79eb75dd573fb1ee00c6f716a8ea44dcfc414", "sha256:734a6dcc0d105722be038d38341a5f9c30a119082eaac2fa45fb8d51eb335451" ] }, "Metadata": { "LastTagTime": "2025-12-02T04:04:23.335181057Z" }, "Descriptor": { "mediaType": "application/vnd.oci.image.index.v1+json", "digest": "sha256:ce2bd4775ed6859d35f47d65401ee9f35f1dd00b32ed05f0ce38b68aa1830195", "size": 10293 } } ]
-
해결됨Docker Essentials - 감 잡히는 컨테이너 & 도커
수업 강의록 자료
안녕하세요. 도커 강의 잘 듣고 있습니다! 다만, 강의에서 이루어지는 학습자료(ppt? pdf?)도 공유 받을 수 있는지 여쭙고자 문의드렸습니다
-
해결됨도커 마스터즈! CI/CD, DevSecOps로 자동화 보안 실무까지!
구글 드라이브 404
안녕하세요. 선생님 공유해주신 root me 관련된 구글 드라이브에 접속되지 않아 문의드립니다.
-
미해결따라하며 배우는 도커와 CI환경 [2023.11 업데이트]
Docker Containers간 통신 할 때 나타나는 에러 강의 질문
안녕하세요. Docker Containers간 통신 할 때 나타나는 에러 강의 를 듣고 있는데요. 강의중에서 컨테이너1 (노드 js 앱 + redis client) 컨테이너2(레디스서버) 라고 그림을 그려주셨는데요. 궁금한것이 레디스 서버는 왜 다른 컨테이너 안에 있나요? 하나의 docker file에 이미지 생성후 , 컨테이너를 만들어서 실행시킨건데 그러면은 하나의 container 안에 들어있는거 아닌가요?