묻고 답해요
141만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
해결됨개발자를 위한 쉬운 도커
npm run ci 캐싱 관련 질문입니다.
안녕하세요도커가 npm 패키지 변경내역을 어떤식으로 알 수 있는건지 원리가 궁금해서 질문드립니다.도커 자체에서 package.json과 package-lock.json파일이 패키지에 관련된 파일이란 것을 인식해서, 해당 파일들의 내용이 변경여부에 따라 캐싱이미지를 사용할지 말지 결정하는건가요?감사합니다.
-
해결됨비전공자도 이해할 수 있는 CI/CD 입문·실전
혹시 강의 github자료는 없나요 ?
혹시 강의 github자료는 없나요 ?
-
미해결개발자를 위한 쉬운 도커
mac 에서의 git 설치
맥에서도 사용해보고 싶어서 git을 설치하는 과정에서해당 에러가 지속적으로 나와 brew update를 먼제 해봤는데 homebrew-core is a shallow clone. 또 에러가 나와서 오류 창에서 알려준데로 git -C ......이부분 명령어를 실행해줬는데 저 에러가 안없어지더라구요...그리고 ARM processor 에러 부분도 shallow clone 이 에러가 납니다... 왜그럴까요...혹시 실습때 git 이 반드시 필요한 걸까요? git의 역할이 궁금합니다...
-
해결됨개발자를 위한 쉬운 도커
docker image ls 명령어 관련
PowerShell과 Git Bash에서 실행시켜봤는데 저 경로에 접속을 못하는 것 같은 에러가 나는데 왜그럴까요...
-
미해결Jenkins를 이용한 CI/CD Pipeline 구축
Permission denied
windows에서 테스트 진행 중 입니다.커뮤니티의 모든 글을 읽고 다 진행해봤습니다. ansible windows -m win_ping -u z2x2c해당 명령어를 입력하면 성공했다고 나옵니다.192.168.219.59 | SUCCESS => {"changed": false,"ping": "pong"}근데ansible-server의 /root/k8s 해당 경로에서 ansible-playbook -i hosts k8s-cicd-deployment-playbook.yml -u z2x2c해당 명령어를 입력하면 [WARNING]: Invalid characters were found in group names but not replaced, use -vvvv to see detailsPLAY [Create pods using deployment] ************************************************************************************TASK [Gathering Facts] *************************************************************************************************fatal: [192.168.219.59]: UNREACHABLE! => {"changed": false, "msg": "Failed to connect to the host via ssh: z2x2c@192.168.219.59: Permission denied (publickey,password,keyboard-interactive).", "unreachable": true}PLAY RECAP *************************************************************************************************************192.168.219.59 : ok=0 changed=0 unreachable=1 failed=0 skipped=0 rescued=0 ignored=0위와 같은 오류가 나옵니다..왜이러는지 답변 가능할까요? 너무 스트레스 받네요 ㅠㅠ..
-
미해결따라하며 배우는 도커와 CI환경 [2023.11 업데이트]
도커 볼륨이 작동이 안되는것 같아서 질문드립니다!
안녕하세요 덕분에 도커를 이해하기 시작한 수많은 수강생 중 한명입니다! 다름이 아니라 도커볼륨을 이용한 소스 코드 변경 강의에서 운영체제가 window라서 docker run -it -p 3000:3000 -v /usr/src/app/node_modules -v %cd%:/usr/src/app {이미지 이름} 를 해도 볼륨이 작동하지 않고 $(pwd) 로 바꾸어서 실행을 시켜봐도 실시간으로 수정이 되지 않아서 질문 드립니다!
-
해결됨개발자를 위한 쉬운 도커
docker volume 관련 질문
안녕하세요 도커 volume 관련해서 질문드립니다.저희가 수업에서는 db에 있는 data들을 volume에 연결하여 사용하였잖아요.근데 예를들어 nodejs 백엔드 프레임워크와 mongodb를 사용한다고 했을 때 제가 백엔드 서버에서 db서버로 유저 데이터를 보낸다했을 때 그 보낸 데이터가 제 로컬 피시에 저장이안되고 db자체 서버에 저장되는거같은데 굳이 volume을 왜 사용하는건가요?아 그리고 backend서버에도 volume이 필요할까요?필요하다면 어떨때 보통 volume에 데이터를 저장하나요?
-
미해결Jenkins를 이용한 CI/CD Pipeline 구축
tomcat manager 연결 문제
tomcat manager 접속 문제가 지속됩니다. tomcat-users.xmlcontext.xml 이외에 csrf 보호 비활성 작업 등 다른 조치를 취해봐도 계속 403 오류가 지속되어 질문 드립니다.
-
미해결Jenkins를 이용한 CI/CD Pipeline 구축
[Exec exit status not zero. Status [125]]
Async: Async started = false Async result = null Resolved Exception: Type = null ModelAndView: View name = index View = null Attribute = msg value = Hi, there Attribute = today value = Fri Oct 11 19:19:37 UTC 2024 FlashMap: Attributes = null MockHttpServletResponse: Status = 200 Error message = null Headers = [Content-Language:"en"] Content type = null Body = Forwarded URL = /WEB-INF/views/index.jsp Redirected URL = null Cookies = [] [INFO] Tests run: 1, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 6.205 s - in com.njonecompany.web.TestWelcome [INFO] [INFO] Results: [INFO] [INFO] Tests run: 1, Failures: 0, Errors: 0, Skipped: 0 [INFO] [JENKINS] Recording test results [INFO] [INFO] --- maven-war-plugin:3.2.2:war (default-war) @ web --- [INFO] Packaging webapp [INFO] Assembling webapp [web] in [/var/jenkins_home/workspace/My-Docker-Project/target/hello-world] [INFO] Processing war project [INFO] Copying webapp resources [/var/jenkins_home/workspace/My-Docker-Project/src/main/webapp] [INFO] Webapp assembled in [162 msecs] [INFO] Building war: /var/jenkins_home/workspace/My-Docker-Project/target/hello-world.war [INFO] ------------------------------------------------------------------------ [INFO] BUILD SUCCESS [INFO] ------------------------------------------------------------------------ [INFO] Total time: 29.112 s [INFO] Finished at: 2024-10-11T19:19:45Z [INFO] ------------------------------------------------------------------------ Waiting for Jenkins to finish collecting data [JENKINS] Archiving /var/jenkins_home/workspace/My-Docker-Project/pom.xml to com.njonecompany.web/web/1.0/web-1.0.pom [JENKINS] Archiving /var/jenkins_home/workspace/My-Docker-Project/target/hello-world.war to com.njonecompany.web/web/1.0/web-1.0.war channel stopped SSH: Connecting from host [***********] SSH: Connecting with configuration [docker-server] ... SSH: EXEC: completed after 13,242 ms SSH: Disconnecting configuration [docker-server] ... ERROR: Exception when publishing, exception message [Exec exit status not zero. Status [125]] Build step 'Send build artifacts over SSH' changed build result to UNSTABLE Finished: UNSTABLE다른 문의 글 봐도 이해가 안돼서 문의 남겨요 docker build --tag=cicd-project -f Dockerfile .docker images docker image inspect cicd-project:latestdocker run -p 8080:8080 --name mytomcat cicd-project:latest 실행 명령어 그대로 작성했는데도 오류가 발생하네요..
-
미해결Jenkins를 이용한 CI/CD Pipeline 구축
실습26) Jenkins를 이용하여 Ansible 서버에 배포하기 - 질문있습니다.
제가 도커나 클라우드 운영 경험은 전혀없습니다.[운영환경]에서는 jenkins에서 war파일만들어서 docker-server에 전달해서 도커 이미지만 만들고, ansible-server에서 docker-server에서 만든 도커 이미지로 컨테이너를 만들어서 실행하는데요.1) 앞 강좌에서 [로컬환경]에서는 이미지 push하고 pull해서 컨테이너 만들어서 진행했었는데, 운영환경에서는 이런식으로 진행하면 안되나 보죠?2) 현 강의대로 하면 [운영환경] 에서 docker-server가 10개 라면 jenkins에서 10개 서버에 다 들어가서 이미지 만들어야 하는데... 실제 운영에서 이렇게 운영하는지 아니면 그냥 강좌라서 이런식으로 구성한건지 궁금합니다. 아니면 실제 운영환경이 아니라 AWS에서 개발환경을 이렇게 구성한다는 얘기인가요? 감사합니다.
-
해결됨개발자를 위한 쉬운 도커
Git Bash에서 컨테이너 삭제 명령이 실행이 안됩니다.
혹시 왜그런걸까요...?
-
미해결개발자를 위한 쉬운 도커
Git Bash에서 컨테이너 삭제 명령어 실행이 안됩니다...
혹시 어떤 부분이 문제일까요!
-
해결됨개발자를 위한 쉬운 도커
강의명 "컨테이너 실행" 부분에 대하여
너무 간소한 질문인데요... 혹시 nginx 컨테이너 만드는 강의가 앞부분에 없었던것 같은데요... 어디에 있는걸까요? 지금 hellongnix 컨테이너의 nginx 이미지 실행하는 부분하고 있습니다!
-
미해결Jenkins를 이용한 CI/CD Pipeline 구축
톰캣 연결오류
[INFO] ------------------------------------------------------------------------ Waiting for Jenkins to finish collecting data [JENKINS] Archiving /var/jenkins_home/workspace/my-thrid-project/pom.xml to com.njonecompany.web/web/1.0/web-1.0.pom [JENKINS] Archiving /var/jenkins_home/workspace/my-thrid-project/target/hello-world.war to com.njonecompany.web/web/1.0/web-1.0.war channel stopped [DeployPublisher][INFO] Attempting to deploy 1 war file(s) [DeployPublisher][INFO] Deploying /var/jenkins_home/workspace/my-thrid-project/target/hello-world.war to container Tomcat 9.x Remote with context null ERROR: Build step failed with exception org.codehaus.cargo.container.ContainerException: Failed to redeploy [/var/jenkins_home/workspace/my-thrid-project/target/hello-world.war] at PluginClassLoader for deploy//org.codehaus.cargo.container.tomcat.internal.AbstractTomcatManagerDeployer.redeploy(AbstractTomcatManagerDeployer.java:176) at PluginClassLoader for deploy//hudson.plugins.deploy.CargoContainerAdapter.deploy(CargoContainerAdapter.java:81) at PluginClassLoader for deploy//hudson.plugins.deploy.CargoContainerAdapter$DeployCallable.invoke(CargoContainerAdapter.java:167) at PluginClassLoader for deploy//hudson.plugins.deploy.CargoContainerAdapter$DeployCallable.invoke(CargoContainerAdapter.java:136) at hudson.FilePath.act(FilePath.java:1235) at hudson.FilePath.act(FilePath.java:1218) at PluginClassLoader for deploy//hudson.plugins.deploy.CargoContainerAdapter.redeployFile(CargoContainerAdapter.java:133) at PluginClassLoader for deploy//hudson.plugins.deploy.PasswordProtectedAdapterCargo.redeployFile(PasswordProtectedAdapterCargo.java:95) at PluginClassLoader for deploy//hudson.plugins.deploy.DeployPublisher.perform(DeployPublisher.java:113) at jenkins.tasks.SimpleBuildStep.perform(SimpleBuildStep.java:123) at hudson.tasks.BuildStepCompatibilityLayer.perform(BuildStepCompatibilityLayer.java:80) at hudson.tasks.BuildStepMonitor$3.perform(BuildStepMonitor.java:47) at hudson.model.AbstractBuild$AbstractBuildExecution.perform(AbstractBuild.java:818) at hudson.model.AbstractBuild$AbstractBuildExecution.performAllBuildSteps(AbstractBuild.java:767) at PluginClassLoader for maven-plugin//hudson.maven.MavenModuleSetBuild$MavenModuleSetBuildExecution.post2(MavenModuleSetBuild.java:1072) at hudson.model.AbstractBuild$AbstractBuildExecution.post(AbstractBuild.java:711) at hudson.model.Run.execute(Run.java:1917) at PluginClassLoader for maven-plugin//hudson.maven.MavenModuleSetBuild.run(MavenModuleSetBuild.java:543) at hudson.model.ResourceController.execute(ResourceController.java:101) at hudson.model.Executor.run(Executor.java:446) Caused by: java.net.ConnectException: Connection timed out at java.base/sun.nio.ch.Net.connect0(Native Method) at java.base/sun.nio.ch.Net.connect(Unknown Source) at java.base/sun.nio.ch.Net.connect(Unknown Source) at java.base/sun.nio.ch.NioSocketImpl.connect(Unknown Source) at java.base/java.net.Socket.connect(Unknown Source) at java.base/java.net.Socket.connect(Unknown Source) at java.base/sun.net.NetworkClient.doConnect(Unknown Source) at java.base/sun.net.www.http.HttpClient.openServer(Unknown Source) at java.base/sun.net.www.http.HttpClient.openServer(Unknown Source) at java.base/sun.net.www.http.HttpClient.<init>(Unknown Source) at java.base/sun.net.www.http.HttpClient.New(Unknown Source) at java.base/sun.net.www.http.HttpClient.New(Unknown Source) at java.base/sun.net.www.protocol.http.HttpURLConnection.getNewHttpClient(Unknown Source) at java.base/sun.net.www.protocol.http.HttpURLConnection.plainConnect0(Unknown Source) at java.base/sun.net.www.protocol.http.HttpURLConnection.plainConnect(Unknown Source) at java.base/sun.net.www.protocol.http.HttpURLConnection.connect(Unknown Source) at PluginClassLoader for deploy//org.codehaus.cargo.container.tomcat.internal.TomcatManager.invoke(TomcatManager.java:567) at PluginClassLoader for deploy//org.codehaus.cargo.container.tomcat.internal.TomcatManager.list(TomcatManager.java:882) at PluginClassLoader for deploy//org.codehaus.cargo.container.tomcat.internal.TomcatManager.getStatus(TomcatManager.java:895) at PluginClassLoader for deploy//org.codehaus.cargo.container.tomcat.internal.AbstractTomcatManagerDeployer.redeploy(AbstractTomcatManagerDeployer.java:161) ... 19 more java.net.ConnectException: Connection timed out at java.base/sun.nio.ch.Net.connect0(Native Method) at java.base/sun.nio.ch.Net.connect(Unknown Source) at java.base/sun.nio.ch.Net.connect(Unknown Source) at java.base/sun.nio.ch.NioSocketImpl.connect(Unknown Source) at java.base/java.net.Socket.connect(Unknown Source) at java.base/java.net.Socket.connect(Unknown Source) at java.base/sun.net.NetworkClient.doConnect(Unknown Source) at java.base/sun.net.www.http.HttpClient.openServer(Unknown Source) at java.base/sun.net.www.http.HttpClient.openServer(Unknown Source) at java.base/sun.net.www.http.HttpClient.<init>(Unknown Source) at java.base/sun.net.www.http.HttpClient.New(Unknown Source) at java.base/sun.net.www.http.HttpClient.New(Unknown Source) at java.base/sun.net.www.protocol.http.HttpURLConnection.getNewHttpClient(Unknown Source) at java.base/sun.net.www.protocol.http.HttpURLConnection.plainConnect0(Unknown Source) at java.base/sun.net.www.protocol.http.HttpURLConnection.plainConnect(Unknown Source) at java.base/sun.net.www.protocol.http.HttpURLConnection.connect(Unknown Source) at PluginClassLoader for deploy//org.codehaus.cargo.container.tomcat.internal.TomcatManager.invoke(TomcatManager.java:567) at PluginClassLoader for deploy//org.codehaus.cargo.container.tomcat.internal.TomcatManager.list(TomcatManager.java:882) at PluginClassLoader for deploy//org.codehaus.cargo.container.tomcat.internal.TomcatManager.getStatus(TomcatManager.java:895) at PluginClassLoader for deploy//org.codehaus.cargo.container.tomcat.internal.AbstractTomcatManagerDeployer.redeploy(AbstractTomcatManagerDeployer.java:161) at PluginClassLoader for deploy//hudson.plugins.deploy.CargoContainerAdapter.deploy(CargoContainerAdapter.java:81) at PluginClassLoader for deploy//hudson.plugins.deploy.CargoContainerAdapter$DeployCallable.invoke(CargoContainerAdapter.java:167) at PluginClassLoader for deploy//hudson.plugins.deploy.CargoContainerAdapter$DeployCallable.invoke(CargoContainerAdapter.java:136) at hudson.FilePath.act(FilePath.java:1235) at hudson.FilePath.act(FilePath.java:1218) at PluginClassLoader for deploy//hudson.plugins.deploy.CargoContainerAdapter.redeployFile(CargoContainerAdapter.java:133) at PluginClassLoader for deploy//hudson.plugins.deploy.PasswordProtectedAdapterCargo.redeployFile(PasswordProtectedAdapterCargo.java:95) at PluginClassLoader for deploy//hudson.plugins.deploy.DeployPublisher.perform(DeployPublisher.java:113) at jenkins.tasks.SimpleBuildStep.perform(SimpleBuildStep.java:123) at hudson.tasks.BuildStepCompatibilityLayer.perform(BuildStepCompatibilityLayer.java:80) at hudson.tasks.BuildStepMonitor$3.perform(BuildStepMonitor.java:47) at hudson.model.AbstractBuild$AbstractBuildExecution.perform(AbstractBuild.java:818) at hudson.model.AbstractBuild$AbstractBuildExecution.performAllBuildSteps(AbstractBuild.java:767) at PluginClassLoader for maven-plugin//hudson.maven.MavenModuleSetBuild$MavenModuleSetBuildExecution.post2(MavenModuleSetBuild.java:1072) at hudson.model.AbstractBuild$AbstractBuildExecution.post(AbstractBuild.java:711) at hudson.model.Run.execute(Run.java:1917) at PluginClassLoader for maven-plugin//hudson.maven.MavenModuleSetBuild.run(MavenModuleSetBuild.java:543) at hudson.model.ResourceController.execute(ResourceController.java:101) at hudson.model.Executor.run(Executor.java:446) Build step 'Deploy war/ear to a container' marked build as failure Finished: FAILURE 톰캣자체에는 문제가 없는데, 젠킨스에서 연결이 계속 안되어서 질문드립니다. 젠킨스를 실행한 ec2 ssh에서 톰캣 서버랑 포트로 연결이 안되는데 이 문제 때문일까요?
-
미해결99% J형 엔지니어와 함께하는 AWS EKS와 GitLab CI/CD 기초 완벽 정복
깃랩 퍼블릭 레포 주소 알수있을까요 ??
public repo에서 clone 한 프로젝트를 각자 gitlab 계정의 private repo로 옮기시면 됩니다.노션에서 위 메모는 보았는데요퍼블릭 레포 주소가 어디있는지 안보입니다 ~
-
미해결Jenkins를 이용한 CI/CD Pipeline 구축
[AWS EC2에 Docker 서버 설치하기]에서 질문있습니다.
해당 서버에서 도커를 설치하던데...sudo yum install -y docker 이렇게 설치한 도커엔진은 운영에서 항상 무료로 사용이 가능한가요? Docker CE(Community Edition)는 무료라던데. 저 명령어로 설치되는 건 어떤 버전인가요? Docker CE 이 맞나요?
-
미해결DevOps를 위한 Docker 가상화 기술 (Private Harbor Registry)
service create 시에 에러 발생
service create 시에 아래와 같이 에러가 발생합니다.에러가 발생한 노드의 ps list 입니다. create만 되고 up이 되지않은 상황입니다.에러를 자세히 확인 해보니 아래의 스크린샷과 같이 되어있습니다.starting container failed: failed to create shim task: OCI runtime create failed: runc create failed: unable to start container process: can't copy bootstrap data to pipe: write init-p: broken pipe: unknown어떻게 해결할 수 있을까요?
-
미해결Jenkins를 이용한 CI/CD Pipeline 구축
저는 우분트 사용하는데 이미지를 어디서 받는건가요?
저는 Ubuntu Desktop 사용하는데 Ansible 이미지를 어디서 받는건가요? 윈도우나 MacOS(intel, m1)는 있는데, 우분투에서 실습하는 사용자를 위한 Ansible 이미지 다운로드는 어디서 하나해서욤...도커 허브에 가서 검색하니깐. alpine/ansible , ansible/ansible 뭐 이런것들 있던데, 이런것 중에 하나 사용하면 되는건가요?그리고 왜 별도로 Ansible 이미지 만들어서 제공해주시는지 그 이유도 궁금합니다. 뭐 이유가 있을테니깐요. 혹시 우분트 사용자는 도커를 써서 실습하는게 아니라 그냥 Ansible설치해야 하는건가요? ㅋㅋㅋ 처음이라 잘 모르겠네요.따라서 할려면 왠지 도커 안에다가 설치해야 할것 같은데...ㅎㅎ 일반적으로 운영에서는 Ansible을 어떻게 사용하는지도 궁금합니다. (도커안에서 운영하는지 아니면 그냥 설치해서 사용하는지 궁금합니다.) 감사합니다.
-
해결됨개발자를 위한 쉬운 도커
layer 관련질문
안녕하세요. 강의를 듣다보니 문득 궁금한게 생겨서 질문올립니다. 저희가 image로 컨테이너를 만들고 container에서 변경사항을 만들고 그걸 commit한다면 기존에 있는 image layer위에 쌓는다고 얘기하셨는데 그렇다면 기존의 image에 있는 index.html파일 안에는 원래 nginx에서 갖고있던 index.html이 있고 그위에 저희가 변경한 index.html이 있는거잖아요 그럼 이걸 run 했을때는 어떻게 되는건가요?밑에 layer부터 순차적으로 run하면서 기존의 index.html을 덮어 쓰는건가요?
-
미해결개발자를 위한 쉬운 도커
이미지 푸시가 안됨
안녕하세요! 매번 강의 잘 듣고있습니다. 다름이 아니라 매번 이미지를 push 할때마다 에러가 떠서 뭐가 문제지하고 며칠 고민하다가 글을 올립니다. 상황은 아래와 같습니다. postgreSQL 컨테이너 강의를 수강중이였고, 강의 12분35초 실습 내용입니다. 그전까지는 실습 진행하는데 문제 없었습니다. 로그인할때 패스워드는 token을 이용해서 하고 있고,토큰은 다음과 같이 설정해두었습니다. M2 pro를 사용하고 있으며, 강의는 회사에서 듣고있는데요(사내망 사용) 사내망이여서 이런 문제가 발생했다고 생각해야할까요? 아니면 어느 부분을 확인해야할까요?