묻고 답해요
141만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결Jenkins를 이용한 CI/CD Pipeline 구축
ssh-copy-id 질문
[root@e83d1887d439 ~]# ssh-copy-id root@172.17.0.3/usr/bin/ssh-copy-id: INFO: Source of key(s) to be installed: "/root/.ssh/id_rsa.pub"/usr/bin/ssh-copy-id: INFO: attempting to log in with the new key(s), to filter out any that are already installed/usr/bin/ssh-copy-id: WARNING: All keys were skipped because they already exist on the remote system. (if you think this is a mistake, you may want to use -f option)[root@e83d1887d439 ~]# ssh-copy-id root@172.17.0.4/usr/bin/ssh-copy-id: INFO: Source of key(s) to be installed: "/root/.ssh/id_rsa.pub"/usr/bin/ssh-copy-id: INFO: attempting to log in with the new key(s), to filter out any that are already installed/usr/bin/ssh-copy-id: ERROR: ssh: connect to host 172.17.0.4 port 22: Connection refused[root@e83d1887d439 ~]# docker exec docker-server systemctl status sshdError: No such container: docker-server현재 발생한 에러인데 sang-gyu ~ docker network inspect bridge [ { "Name": "bridge", "Id": "b1e14a292142598e8bcd79d82082aaff3e38cea78e21bf96be13f653372729fc", "Created": "2023-11-22T09:53:35.039938917Z", "Scope": "local", "Driver": "bridge", "EnableIPv6": false, "IPAM": { "Driver": "default", "Options": null, "Config": [ { "Subnet": "172.17.0.0/16", "Gateway": "172.17.0.1" } ] }, "Internal": false, "Attachable": false, "Ingress": false, "ConfigFrom": { "Network": "" }, "ConfigOnly": false, "Containers": { "3fb54fe4c70280511b312f38bee776752f25bc3c63b419be2084e5b27225c643": { "Name": "jenkins-server", "EndpointID": "83739368b00a9e4d8cdfd8d09c96c8a313acf5fbd8bb52f6e715d58d0f79d373", "MacAddress": "02:42:ac:11:00:02", "IPv4Address": "172.17.0.2/16", "IPv6Address": "" }, "8a361c8c922999eba52422d0b6f7608fa2665b1a074a2a9df8ab5ee9d4ae45cd": { "Name": "docker-server", "EndpointID": "d0389122955b24d7db4b1eb7d5f60f001e1ab4de1a58305fa8d9b13711db16f5", "MacAddress": "02:42:ac:11:00:04", "IPv4Address": "172.17.0.4/16", "IPv6Address": "" }, "e83d1887d439e59bbe54630c8968cbcddbb461ca911116b304befa9d628833d4": { "Name": "ansible-server", "EndpointID": "cd7dc8ebd152940c9c2439ba26e9e21704b8426be6cef96cbd71ddb7e52da43b", "MacAddress": "02:42:ac:11:00:03", "IPv4Address": "172.17.0.3/16", "IPv6Address": "" } }, "Options": { "com.docker.network.bridge.default_bridge": "true", "com.docker.network.bridge.enable_icc": "true", "com.docker.network.bridge.enable_ip_masquerade": "true", "com.docker.network.bridge.host_binding_ipv4": "0.0.0.0", "com.docker.network.bridge.name": "docker0", "com.docker.network.driver.mtu": "65535" }, "Labels": {} } ][root@e83d1887d439 ~]# cat /etc/ansible/hosts[devops]172.17.0.3172.17.0.4 왜 에러가 발생하는지 모르겠습니다 엔서블 루트에 접속해서 카피하는게 맞는거같은데 ...
-
미해결Jenkins를 이용한 CI/CD Pipeline 구축
강의자료가 없어요
커뮤니티에 올라온 것을 보니 강의자료가 있었다 없었다 하는 것 같은데, 지금은 또 없네요.. 빠른 확인 부탁드립니다.
-
해결됨Jenkins를 이용한 CI/CD Pipeline 구축
kex_exchange_identification: Connection closed by remote host 에러 질문 드려요 ㅠㅠ
다른 질문글에서 kex_exchange_identification: Connection closed by remote host 에러 해결 방법 확인하고 시도해봤는데 해결을 못해서 질문글 남겨요 ㅠㅠ맥북: apple silicon m1 chip이미지: edowon0623/ansible-server:m1컨테이너 실행: docker run --privileged -itd --name ansible-server -p 20022:22 -p 8082:8080 -e container=docker -v /sys/fs/cgroup:/sys/fs/cgroup edowon0623/ansible-server:m1 /usr/sbin/initssh 접속:ssh root@localhost -p 20022 컨테이너 포트 충돌나서 8082로 변경했어요나머진 스크립트랑 같아요docker ps 확인해보면 ansible-server status up 상태인데 ssh 접속하면 kex_exchange_identification: Connection closed by remote host 에러가 발생해요docker-server컨테이너는 ssh root@localhost -p 10022로 잘 되는데 ansible-server은 왜 에러가 발생할까요? ㅠㅠ
-
미해결Jenkins를 이용한 CI/CD Pipeline 구축
access. jenkins가 안됩니다
포트를 8083으로 설정하고 localhost:8083 으로 들어가도 페이지가 작동하지 않는다고 뜨네요..8080 포트를 lsof -i tcp:8080으로 조회해서 kill -9 으로 해도 자꾸 사용중이라고 뜹니다. docker run -d -p 8083:8083 -p 50000:50000 --name jenkins-server --restart=on-failure jenkins/jenkins:lts-jdk11 으로 실행하면 안되는건가요??
-
미해결Jenkins를 이용한 CI/CD Pipeline 구축
playbook 2번은 이걸 사용하세요.
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. ---- name: Download Tomcat9 from tomcat.apache.org hosts: devops tasks: - name: Create a Directory /opt/tomcat9 file: path: /opt/tomcat9 state: directory mode: 0755 - name: Download Tomcat using get_url get_url: url: https://dlcdn.apache.org/tomcat/tomcat-9/v9.0.82/bin/apache-tomcat-9.0.82.tar.gz dest: /opt/tomcat9 mode: 0755 checksum: sha512:https://downloads.apache.org/tomcat/tomcat-9/v9.0.82/bin/apache-tomcat-9.0.82.tar.gz.sha512 버전이 9.0.82 가 출시되어서 기존의 75버전은 링크가 삭제되었네요. 갑자기 에러 발생해서 놀랐는데 직접 url들어가니 페이지 자체가 없어서 발생한 에러였습니다. 여러분은 헷갈리지 마세용~
-
미해결Jenkins를 이용한 CI/CD Pipeline 구축
ansible > docker 배포 시 질문사항이 있습니다.
안녕하세요.강의를 듣다보니 질문사항이 생겨 여쭤봅니다. 강의에서 Jenkins-server에서 빌드된 war파일을 ansible-server까지 연동하여. 실제 ansible 서버에서 docker server로 docker 명령어를 날리는 것 까지는 이해 했습니다.하지만 docker server에서 docker 명령어를 날릴 시, 해당 docker server에서는 war파일이 존재하지 않아 에러가 발생하지 않나요?해서 저는 ansible playbook에 docker 명령어 전 copy명령어를 통해 ansible -> docker로 war파일을 전송하는 task를 하나 더 추가하여 해결하였습니다. 혹 제가 놓친 부분이 있어서 이런 작업을 추가한건가요 ?(제가 개인서버를 보유중이라 개인서버 2대로 현재 강의를 따라가다 보니 환경적으로 조금 달라 제가 이해한 부분대로 강의를 따라가고 있습니다..) 답변 주시면 감사하겠습니다.
-
미해결Jenkins를 이용한 CI/CD Pipeline 구축
AWS 서버 구성 문의
기존에 젠킨스를 돌리고 있는 리눅스 서버를 운영중에 있습니다.이번 강의를 계기로 SonarQube, Ansible, Kubernetes 를 추가로 운영하려고 합니다.현재 저희팀은 FrontEnd/BackeEnd 프로젝트를 하나 진행하고 있습니다. 그리고 이를 AWS 에 배포 준비중이어서 AWS 인스턴스를 하나 운영중에 있습니다. (유료 버전 사용중) 현재 강의 실습에서는 AWS 에 개별 인스턴스를 따로따로 구동시키는 상황을 가정해서 진행하고 있는데, 이럴 경우 프리티어의 경우 1년까지는 무료지만 1년 이후에는 경우에 따라 비용이 지불되는것으로 알고 있습니다. 이에 아래처럼 진행해볼까 하는데 가능한 방법일지요? 혹은 추천하실만한 설계가 있으시면 조언도 부탁드리겠습니다. 기존 젠킨스 리눅스 서버 -> 유지++ 여기에 Docker 로 SonarQube, Ansible 서버 추가++ 기존 사용중인 AWS 인스턴스에 Kubernetes 서버 추가++ Docker 형태로 F/E, B/E 배포 제가 개념을 잘못 잡고 있거나, 다른 더 좋은 방법이 있으시다면 조언 부탁드리겠습니다. 좋은 강의 감사드립니다~
-
미해결Jenkins를 이용한 CI/CD Pipeline 구축
CD job 에서 왜 빌드를 또 수행하는지 모르겠어요.
섹션4의 마지막 실습강의 (실습8) 에서 보면CI job 으로 My-K8s-Project-for-CI 를 돌리고CD job 으로 My-K8s-Project-using-Ansible 을 돌리는데,My-K8s-Project-using-Ansible 에서도 github 에서 소스코드를 pull 해서 빌드를 하도록 되어있습니다.이부분은 이미 CI job 에서 수행해서 docker image 로 docker hub 에 등록한 상황이고 , CD job 에서는 이 docker hub 로부터 이미지를 pull 해 와서 kubernetes 관련 일만 해야할것 같은데요. 제 이해가 맞을지요?git 소스를 댕겨와서 빌드를 하는 과정은 CI 에서만 해야하는것이 아닌가요?
-
미해결Jenkins를 이용한 CI/CD Pipeline 구축
ec2 환경의 sonarqube
ec2 환경의 sonarqube는 실습에 없어서 혼자 할려다가 못하겠어요... maven 빌드까지 하고 그걸 어떻게 sonarqube로 옮기는지 모르겠어요 강의 영상 만들어주세요 ㅜㅜ
-
해결됨Jenkins를 이용한 CI/CD Pipeline 구축
Linux 에서 젠킨스 서버를 운영중이라면...
저는 이미 리눅스 서버가 하나있고 여기에 젠킨스 서버를 운영하고 있습니다.이 경우 강의 내용중 docker linux 부분만 개념에서 제외하고 이해하고 있는데요, 문제는 실습 등에서 여전히 헷갈리는 부분이 있습니다. 예를들면 docker 로 ssh-server 를 설치할 경우인데요, edowon0623 docker 이미지에는 윈도우즈 용과 맥용만 있습니다. 리눅스용은 없어서 일단 intel tag 용을 받아서 설치하면 컨테이너가 실행까지는 됩니다 (제 리눅스 서버에서).하지만 ssh 접속시에 key_exchange_identification: Connection closed by remote host 에러가 납니다. (이미 질문한 분이 있더군요)인텔칩 맥에서는 해결이 됐을지라도 저는 여전히 발생합니다. 제가 아직 docker 개념이 없어서 그러는 걸수도 있는데...저같은 경우에도 docker+ssh server 가 필요한가요?ssh server 로 젠킨스가 파일을 업로드하려면 필요할것 같기도 한데요. (어차피 docker 라는게 가상의 서버,PC 를 한대 더 두는 개념이니까, 저는 리눅스의 젠킨스에서 가상의 ssh-server 로 통신하는걸 가정하는거니까요)만약 그렇다면 리눅스용 ssh-server docker image 를 찾아서 설치해야 하는 건지요...? 여기서 더 진도가 못나가고 있어 답답하네요.... 강의는 개인적으로 너무 잘 듣고 있습니다 ^^(주먹구구로 젠킨스를 운영해왔기에 이참에 체계적으로 개념을 쌓으려고 합니다)
-
미해결Jenkins를 이용한 CI/CD Pipeline 구축
ssh-keygen 하는 이유
강의를 보면 젠킨스 마스터 서버에서 slave 서버로 ssh 접속하기 위해 ssh keygen 과 copy-id 를 해서 비밀번호 없이 ssh 접속을 할 수 있도록 설정했습니다. 근데 젠킨스 웹페이지에서 slave 노드 정보를 추가할 때 계정과 패스워드를 또 추가하는 이유가 무엇인가요?? 어차피 없어도 이미 ssh 정보가 있어서 들어갈 수 있지 않나요 ? bash 끼리 통신하는거랑 어플리케이션에서 통신하는 거랑은 별도의 계정 정보가 필요한 걸까요?? 아니면 그냥 젠킨스 페이지에서만 설정하면 되는데 굳이 copy-id 를 하는 이유가 궁금합니다.
-
미해결Jenkins를 이용한 CI/CD Pipeline 구축
deployment 롤링 업데이트
deployment 를 삭제하고 다시 apply 해야 하는 이유가 뭘까요?? 그렇게 되면 중간에 삭제되고 다시 생성되기 이전에 중단이 발생하지 않나요??디플로이먼트는 변경 안해도 이미지가 바뀌면 apply 쳤을때 기본 전략으로 롤링 업데이트로 다른 리플리카 셋으로 생성되는걸로 들은적이 있는 것 같아서요!
-
미해결Jenkins를 이용한 CI/CD Pipeline 구축
섹션 2 - 실습3) Tomcat 서버에 배포하기 강의 중 궁금한점이 있습니다.
pdf 자료주신 것 처럼$ docker pull tomcat:latest$ docker run -d --name tomcat -p 8080:8080 tomcat:9.0으로 tomcat 을 설치하면 도커 컨테이너에 tomcat을 설치하게 되는것이고실제 제 desktop 에는 없는 게 되는게 아닌가요??강의중 visual code 를 통해 들어가셨던 tomcat-user.xml 파일에 어떻게 접근하는지 모르겠습니다.부록파트에 tomcat 설치, 설정파트를 따라가면 된다고 하셨는데 제공해주신 pdf 에는 없어서 질문드립니다..--- 수정 드립니다.---섹션 8부분에 tomcat 설치 부분이 있었네요! 찾았습니다.다른 질문이 생겼는데 도커 컨테이너는 VM 이라고 생각하고 있어서 컨테이너에 tomcat 서버를 설치한다는 것은 제 윈도우에 깔린 tomcat 과는 별개의 서버가 되는것이 아닌가요???만약 제가 이해한게 맞다면 별개의 서버인데 어떻게 윈도우에 설치한 톰캣설정이 컨테이너에 있는 다른 톰캣 설정과 같아질 수 있는 건가요??제가 잘못이해 하고 있다면 (윈도우 톰캣과 컨테이너 톰캣이 같다면) 굳이 컨테이너에 톰캣을 올리는 이유는 뭔가요?? 그냥 윈도우에서 실행한 톰캣서버에 배포하면 되는게 아닌지 궁금합니다!
-
미해결구성 관리 자동화 도구 - 앤서블(Ansible)
윈도우서버 2012 vagrant 에러
질문 답변을 제공하지만, 강의 비용에는 Q&A는 포함되어 있지 않습니다. 다만 실습이 안되거나, 잘못된 내용의 경우는 알려주시면 가능한 빠르게 조치하겠습니다![질문 전 답변]1. 강의 내용과 관련된 질문인가요? 예 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? 예 3. 질문 잘하기 법을 읽어보셨나요? 예 (https://www.inflearn.com/blogs/1719)4. 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요.[질문 하기]cfg.vm.box = "opentable/win-2012r2-standard-amd64-nocm"으로 작업시 되지를 않아서..vagrant 에서 2016으로 수정해서 작업했는데..config.vm.box = "mwrock/Windows2016" 위와 같이 에러가 나옵니다.혹시 윈도우서버는 vagrant cloude에서 어떤 걸로 작업했는지 알수 있을까요?
-
미해결Jenkins를 이용한 CI/CD Pipeline 구축
ssh 접속 오류
ssh 접속하려고 하니 아래와 같은 오류가 뜨는데 원인을 알 수 있을까요??..호스트서버의 os를 새로 설치한 후 기존 접속 인증 받은 ip로 접속하게되면 뜨는 오류라는데 어떻게 조치해야할지를 잘 모르겠습니다 ㅜ
-
미해결Jenkins를 이용한 CI/CD Pipeline 구축
maven install automatically을 체크해도 maven 이 자동으로 설치가 되지 않습니다.
강사님 안녕하세요강의수강중에 maven 플러그인 설치후 설정 부분에서 install automatically 체크를 하면 maven 이 설치 되는 것으로 말씀해 주셨는데 apply 후 저장을 누르고 cmd 에서 컨테이너에 들어가 mvn --version 을 입력하면 여전히 command not found 가 나옵니다. 추가적인 조치 사항이 있나요??? (설정 후 빌드도 해봤습니다.)
-
미해결구성 관리 자동화 도구 - 앤서블(Ansible)
vagrant 버전 혹시 몇버전으로 하시는지 알수 있을까요?
질문 답변을 제공하지만, 강의 비용에는 Q&A는 포함되어 있지 않습니다. 다만 실습이 안되거나, 잘못된 내용의 경우는 알려주시면 가능한 빠르게 조치하겠습니다![질문 전 답변]1. 강의 내용과 관련된 질문인가요? 예2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? 아니요3. 질문 잘하기 법을 읽어보셨나요? 예 (https://www.inflearn.com/blogs/1719)4. 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요.[질문 하기]안녕하세요vagrant 2.3.7 버전으로 작업시 다음과 같이 에러가 나옵니다.vagrant 삭제후 하위 버전으로 작업시에는 Hyper-V 를 설치하라고 나오고..혹시 vagrant 몇버전으로 작업 했는지 알수 있을까요?vagrant plugin uninstall vagrant-vbguest 해서 삭제후vagrant plugin install vagrant-vbguest --plugin-version 0.21 0.21 버전 설치 후vagrant reload위와 같이 에러가 나옵니다.
-
미해결Jenkins를 이용한 CI/CD Pipeline 구축
도커 root계정 최초 접근시 패스워드 입력
root 계정 처음 접속할 때 대문자 P로시작하는 패스워드 입력하라고 하시는데 Password 이렇게 아무리 입력해도 접속이 안되네요 ㅜㅜ 혹시 제가 어디를 놓친 걸까요 ??
-
미해결Jenkins를 이용한 CI/CD Pipeline 구축
maven 프로젝트 빌드 오류
현재 maven 프로젝트를 하는데 오류가 나고 있습니다. 질문. jdk11 버전의 폴더 권한이 root로 되어있는데jenkins_home의 사용자는 jenkins 로 되어있습니다.이게 문제가 될수도 있을까요? 오류로그[Second-Project] $ /opt/java/openjdk/bin/java -cp /var/jenkins_home/plugins/maven-plugin/WEB-INF/lib/maven35-agent-1.14.jar:/var/jenkins_home/tools/hudson.tasks.Maven_MavenInstallation/maven3.23/boot/plexus-classworlds-2.6.0.jar:/var/jenkins_home/tools/hudson.tasks.Maven_MavenInstallation/maven3.23/conf/logging jenkins.maven3.agent.Maven35Main /var/jenkins_home/tools/hudson.tasks.Maven_MavenInstallation/maven3.23 /var/jenkins_home/war/WEB-INF/lib/remoting-3107.v665000b_51092.jar /var/jenkins_home/plugins/maven-plugin/WEB-INF/lib/maven35-interceptor-1.14.jar /var/jenkins_home/plugins/maven-plugin/WEB-INF/lib/maven3-interceptor-commons-1.14.jar 34003 <===[JENKINS REMOTING CAPACITY]===>channel started Aug 21, 2023 5:24:10 AM hudson.remoting.UserRequest perform WARNING: LinkageError while performing UserRequest:hudson.maven.Maven3Builder@2153b8c4 java.lang.UnsatisfiedLinkError: /opt/java/openjdk/lib/libawt_xawt.so: libXext.so.6: cannot open shared object file: No such file or directory at java.base/java.lang.ClassLoader$NativeLibrary.load0(Native Method) at java.base/java.lang.ClassLoader$NativeLibrary.load(ClassLoader.java:2445) at java.base/java.lang.ClassLoader$NativeLibrary.loadLibrary(ClassLoader.java:2501) ..생략...2.run(Request.java:377) at hudson.remoting.InterceptingExecutorService.lambda$wrap$0(InterceptingExecutorService.java:78) at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) at java.base/java.lang.Thread.run(Thread.java:829) ERROR: Failed to parse POMs java.io.IOException: Remote call on Channel to Maven [/opt/java/openjdk/bin/java, -cp, /var/jenkins_home/plugins/maven-plugin/WEB-INF/lib/maven35-agent-1.14.jar:/var/jenkins_home/tools/hudson.tasks.Maven_MavenInstallation/maven3.23/boot/plexus-classworlds-2.6.0.jar:/var/jenkins_home/tools/hudson.tasks.Maven_MavenInstallation/maven3.23/conf/logging, jenkins.maven3.agent.Maven35Main, /var/jenkins_home/tools/hudson.tasks.Maven_MavenInstallation/maven3.23, /var/jenkins_home/war/WEB-INF/lib/remoting-3107.v665000b_51092.jar, /var/jenkins_home/plugins/maven-plugin/WEB-INF/lib/maven35-interceptor-1.14.jar, /var/jenkins_home/plugins/maven-plugin/WEB-INF/lib/maven3-interceptor-commons-1.14.jar, 34003] failed at hudson.remoting.Channel.call(Channel.java:1004) at hudson.maven.ProcessCache$MavenProcess.call(ProcessCache.java:162) at hudson.maven.MavenModuleSetBuild$MavenModuleSetBuildExecution.doRun(MavenModuleSetBuild.java:877) at hudson.model.AbstractBuild$AbstractBuildExecution.run(AbstractBuild.java:526) at hudson.model.Run.execute(Run.java:1900) at hudson.maven.MavenModuleSetBuild.run(MavenModuleSetBuild.java:543) at hudson.model.ResourceController.execute(ResourceController.java:101) at hudson.model.Executor.run(Executor.java:442) Caused by: java.lang.UnsatisfiedLinkError: /opt/java/openjdk/lib/libawt_xawt.so: libXext.so.6: cannot open shared object file: No such file or directory at java.base/java.lang.ClassLoader$NativeLibrary.load0(Native Method) at java.base/java.lang.ClassLoader$NativeLibrary.load(ClassLoader.java:2445) at java.base/java.lang.ClassLoader$NativeLibrary.loadLibrary(ClassLoader.java:2501) at java.base/java.lang.ClassLoader.loadLibrary0(ClassLoader.java:2700) ...생략 .run(Executor.java:442) channel stopped Finished: FAILURE
-
미해결Jenkins를 이용한 CI/CD Pipeline 구축
gradle 적용
제가 하는 프로젝트가 spring, gradle, jar, aws, gitlab환경에서 하는데 강의는 메이븐을 사용해서 제가 gradle로 바꿔야하는데 강의를 처음에 메이븐으로 들으면서 나중에 aws에 적용할때 gradle로 바꾸면서 실습을 해봐야 하나요?gradle로 적용하기 위한 로드맵이나 강의를 따라가면서 어느 방식으로 해야겠다는 답변 주시면 감사하겠습니다.