<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0">
  <channel>
    <title>everyday-spring</title>
    <link>https://subin0522.tistory.com/</link>
    <description>-</description>
    <language>ko</language>
    <pubDate>Sun, 12 Jul 2026 11:47:45 +0900</pubDate>
    <generator>TISTORY</generator>
    <ttl>100</ttl>
    <managingEditor>everyday-spring</managingEditor>
    <item>
      <title>문자열 자르기</title>
      <link>https://subin0522.tistory.com/636</link>
      <description>&lt;!DOCTYPE html&gt;
&lt;html lang=&quot;en&quot;&gt;
&lt;head&gt;
    &lt;meta charset=&quot;UTF-8&quot;&gt;
    &lt;meta name=&quot;viewport&quot; content=&quot;width=device-width, initial-scale=1.0&quot;&gt;
    &lt;title&gt;Split and Format&lt;/title&gt;
    &lt;style&gt;
        .result-container {
            display: flex;
            align-items: center;
            gap: 10px;
        }
    &lt;/style&gt;
&lt;/head&gt;
&lt;body&gt;

    &lt;label for=&quot;chunk-size&quot;&gt;SIZE:&lt;/label&gt;&lt;br&gt;
    &lt;input type=&quot;number&quot; id=&quot;chunk-size&quot; /&gt;&lt;br&gt;&lt;br&gt;

    &lt;label for=&quot;file-input&quot;&gt;TXT 파일 업로드:&lt;/label&gt;&lt;br&gt;
    &lt;input type=&quot;file&quot; id=&quot;file-input&quot; accept=&quot;.txt&quot; onchange=&quot;loadFile()&quot; /&gt;&lt;br&gt;&lt;br&gt;

    &lt;label for=&quot;input-data&quot;&gt;DATA:&lt;/label&gt;&lt;br&gt;
    &lt;textarea id=&quot;input-data&quot; rows=&quot;5&quot; cols=&quot;40&quot;&gt;&lt;/textarea&gt;&lt;br&gt;&lt;br&gt;

    &lt;button onclick=&quot;splitAndFormat()&quot;&gt;실행&lt;/button&gt;
    &lt;button onclick=&quot;copyResult()&quot;&gt;COPY&lt;/button&gt;

    &lt;div class=&quot;result-container&quot;&gt;
        &lt;pre id=&quot;result&quot;&gt;&lt;/pre&gt;
    &lt;/div&gt;

    &lt;script&gt;
        function loadFile() {
            const fileInput = document.getElementById('file-input');
            const file = fileInput.files[0];

            if (file) {
                const reader = new FileReader();
                reader.onload = function (e) {
                    document.getElementById('input-data').value = e.target.result;
                };
                reader.readAsText(file);
            }
        }

        function splitAndFormat() {
            const data = document.getElementById('input-data').value;
            const chunkSize = parseInt(document.getElementById('chunk-size').value);

            if (isNaN(chunkSize) || chunkSize &lt;= 0) {
                alert('0보다 큰 숫자를 입력하세요');
                return;
            }

            const chunks = [];
            for (let i = 0; i &lt; data.length; i += chunkSize) {
                chunks.push(data.substring(i, i + chunkSize));
            }

            document.getElementById('result').textContent = chunks.join('\n');
        }

        function copyResult() {
            const resultElement = document.getElementById('result');
            const range = document.createRange();
            range.selectNodeContents(resultElement);
            const selection = window.getSelection();
            selection.removeAllRanges();
            selection.addRange(range);

            try {
                document.execCommand('copy');
            } catch (err) {
                console.error('복사 실패:', err);
            }

            selection.removeAllRanges();
        }
    &lt;/script&gt;
&lt;/body&gt;
&lt;/html&gt;</description>
      <author>everyday-spring</author>
      <guid isPermaLink="true">https://subin0522.tistory.com/636</guid>
      <comments>https://subin0522.tistory.com/636#entry636comment</comments>
      <pubDate>Fri, 17 Jan 2025 14:02:07 +0900</pubDate>
    </item>
    <item>
      <title>EC2 ubuntu Jenkins CI/CD 트러블슈팅 | 무한로딩, 먹통 | Docker not found | not in a git directory</title>
      <link>https://subin0522.tistory.com/634</link>
      <description>&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;div data-ke-type=&quot;moreLess&quot; data-text-more=&quot;더보기&quot; data-text-less=&quot;닫기&quot;&gt;&lt;a class=&quot;btn-toggle-moreless&quot;&gt;더보기&lt;/a&gt;
&lt;div class=&quot;moreless-content&quot;&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://everyday-spring.com/628&quot;&gt;https://everyday-spring.com/628&lt;/a&gt;&lt;/p&gt;
&lt;figure id=&quot;og_1730683386416&quot; contenteditable=&quot;false&quot; data-ke-type=&quot;opengraph&quot; data-ke-align=&quot;alignCenter&quot; data-og-type=&quot;article&quot; data-og-title=&quot;Window PC에 Docker, jenkins 설치, GitHub 연동하기 (1) | 난 대학시절 삽질을 전공했단 사실&quot; data-og-description=&quot;시작에 앞서....Docker를... AWS EC2에 설치 했어야 하는데별 의심없이 개인 pc에 설치했다...잘못된 방향으로 핸들이 고장난 에잇톤트럭마냥 달려서 하루를 낭비했다이것은.. 그 기록....&amp;nbsp;&amp;nbsp;Docker 설치h&quot; data-og-host=&quot;everyday-spring.com&quot; data-og-source-url=&quot;https://everyday-spring.com/628&quot; data-og-url=&quot;https://everyday-spring.com/628&quot; data-og-image=&quot;https://scrap.kakaocdn.net/dn/by10zK/hyXs5hTVz6/MQmwWxbSjyakUOgktAFFtk/img.jpg?width=800&amp;amp;height=806&amp;amp;face=0_0_800_806,https://scrap.kakaocdn.net/dn/bXqrLC/hyXsZWiSBM/ygp2EbPYBYbNnFBLJLyr61/img.jpg?width=800&amp;amp;height=806&amp;amp;face=0_0_800_806,https://scrap.kakaocdn.net/dn/lUWlP/hyXsYb05r3/XMIocTaG7VzC6YF6kQ47MK/img.png?width=3000&amp;amp;height=1256&amp;amp;face=0_0_3000_1256&quot;&gt;&lt;a href=&quot;https://everyday-spring.com/628&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://everyday-spring.com/628&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://scrap.kakaocdn.net/dn/by10zK/hyXs5hTVz6/MQmwWxbSjyakUOgktAFFtk/img.jpg?width=800&amp;amp;height=806&amp;amp;face=0_0_800_806,https://scrap.kakaocdn.net/dn/bXqrLC/hyXsZWiSBM/ygp2EbPYBYbNnFBLJLyr61/img.jpg?width=800&amp;amp;height=806&amp;amp;face=0_0_800_806,https://scrap.kakaocdn.net/dn/lUWlP/hyXsYb05r3/XMIocTaG7VzC6YF6kQ47MK/img.png?width=3000&amp;amp;height=1256&amp;amp;face=0_0_3000_1256');&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;og-text&quot;&gt;
&lt;p class=&quot;og-title&quot; data-ke-size=&quot;size16&quot;&gt;Window PC에 Docker, jenkins 설치, GitHub 연동하기 (1) | 난 대학시절 삽질을 전공했단 사실&lt;/p&gt;
&lt;p class=&quot;og-desc&quot; data-ke-size=&quot;size16&quot;&gt;시작에 앞서....Docker를... AWS EC2에 설치 했어야 하는데별 의심없이 개인 pc에 설치했다...잘못된 방향으로 핸들이 고장난 에잇톤트럭마냥 달려서 하루를 낭비했다이것은.. 그 기록....&amp;nbsp;&amp;nbsp;Docker 설치h&lt;/p&gt;
&lt;p class=&quot;og-host&quot; data-ke-size=&quot;size16&quot;&gt;everyday-spring.com&lt;/p&gt;
&lt;/div&gt;
&lt;/a&gt;&lt;/figure&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://everyday-spring.com/629&quot;&gt;https://everyday-spring.com/629&lt;/a&gt;&lt;/p&gt;
&lt;figure id=&quot;og_1730683397918&quot; contenteditable=&quot;false&quot; data-ke-type=&quot;opengraph&quot; data-ke-align=&quot;alignCenter&quot; data-og-type=&quot;article&quot; data-og-title=&quot;Window PC에 Docker, jenkins 설치, GitHub 연동하기 (2) | 난 삽질로 유학까지 다녀왔단 사실&quot; data-og-description=&quot;https://everyday-spring.com/628&amp;nbsp;Window PC에 Docker, jenkins 설치, GitHub 연동하기 (1) | 난 대학시절 삽질을 전공했단 사실시작에 앞서....Docker를... AWS EC2에 설치 했어야 하는데별 의심없이 개인 pc에 설치했다..&quot; data-og-host=&quot;everyday-spring.com&quot; data-og-source-url=&quot;https://everyday-spring.com/629&quot; data-og-url=&quot;https://everyday-spring.com/629&quot; data-og-image=&quot;https://scrap.kakaocdn.net/dn/U5qR2/hyXsSiAbHr/kjHI2NajxoxPQK3X4sk1K1/img.png?width=800&amp;amp;height=73&amp;amp;face=0_0_800_73,https://scrap.kakaocdn.net/dn/p9jdS/hyXsVTUyqe/3pjdCkI2ylxQxPeOcYJzk0/img.png?width=800&amp;amp;height=73&amp;amp;face=0_0_800_73,https://scrap.kakaocdn.net/dn/FdR7p/hyXs1mhq4p/RReoBFshcwUKqLM1S1le7k/img.png?width=3540&amp;amp;height=1267&amp;amp;face=0_0_3540_1267&quot;&gt;&lt;a href=&quot;https://everyday-spring.com/629&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://everyday-spring.com/629&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://scrap.kakaocdn.net/dn/U5qR2/hyXsSiAbHr/kjHI2NajxoxPQK3X4sk1K1/img.png?width=800&amp;amp;height=73&amp;amp;face=0_0_800_73,https://scrap.kakaocdn.net/dn/p9jdS/hyXsVTUyqe/3pjdCkI2ylxQxPeOcYJzk0/img.png?width=800&amp;amp;height=73&amp;amp;face=0_0_800_73,https://scrap.kakaocdn.net/dn/FdR7p/hyXs1mhq4p/RReoBFshcwUKqLM1S1le7k/img.png?width=3540&amp;amp;height=1267&amp;amp;face=0_0_3540_1267');&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;og-text&quot;&gt;
&lt;p class=&quot;og-title&quot; data-ke-size=&quot;size16&quot;&gt;Window PC에 Docker, jenkins 설치, GitHub 연동하기 (2) | 난 삽질로 유학까지 다녀왔단 사실&lt;/p&gt;
&lt;p class=&quot;og-desc&quot; data-ke-size=&quot;size16&quot;&gt;https://everyday-spring.com/628&amp;nbsp;Window PC에 Docker, jenkins 설치, GitHub 연동하기 (1) | 난 대학시절 삽질을 전공했단 사실시작에 앞서....Docker를... AWS EC2에 설치 했어야 하는데별 의심없이 개인 pc에 설치했다..&lt;/p&gt;
&lt;p class=&quot;og-host&quot; data-ke-size=&quot;size16&quot;&gt;everyday-spring.com&lt;/p&gt;
&lt;/div&gt;
&lt;/a&gt;&lt;/figure&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://everyday-spring.com/630&quot;&gt;https://everyday-spring.com/630&lt;/a&gt;&lt;/p&gt;
&lt;figure id=&quot;og_1730683399469&quot; contenteditable=&quot;false&quot; data-ke-type=&quot;opengraph&quot; data-ke-align=&quot;alignCenter&quot; data-og-type=&quot;article&quot; data-og-title=&quot;AWS EC2에 Docker Jenkins 설치, Github Webhook 연동 (1) | 최종_최최종_찐막_찐찐막&quot; data-og-description=&quot;https://everyday-spring.com/628&amp;nbsp;Window PC에 Docker, jenkins 설치, GitHub 연동하기 (1) | 난 대학시절 삽질을 전공했단 사실시작에 앞서....Docker를... AWS EC2에 설치 했어야 하는데별 의심없이 개인 pc에 설치했다..&quot; data-og-host=&quot;everyday-spring.com&quot; data-og-source-url=&quot;https://everyday-spring.com/630&quot; data-og-url=&quot;https://everyday-spring.com/630&quot; data-og-image=&quot;https://scrap.kakaocdn.net/dn/cY1KmP/hyXsRKJGlH/IViDkQENIatuHJDjGflS71/img.jpg?width=400&amp;amp;height=400&amp;amp;face=156_68_263_185,https://scrap.kakaocdn.net/dn/bQfwo4/hyXs3Yq2nS/QpHVGrVOPlVIqnPAML1Kkk/img.jpg?width=400&amp;amp;height=400&amp;amp;face=156_68_263_185,https://scrap.kakaocdn.net/dn/cn67Cu/hyXsU8vxgR/fmaqITMf7Kv4fgpvopPVY1/img.png?width=1142&amp;amp;height=1661&amp;amp;face=0_0_1142_1661&quot;&gt;&lt;a href=&quot;https://everyday-spring.com/630&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://everyday-spring.com/630&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://scrap.kakaocdn.net/dn/cY1KmP/hyXsRKJGlH/IViDkQENIatuHJDjGflS71/img.jpg?width=400&amp;amp;height=400&amp;amp;face=156_68_263_185,https://scrap.kakaocdn.net/dn/bQfwo4/hyXs3Yq2nS/QpHVGrVOPlVIqnPAML1Kkk/img.jpg?width=400&amp;amp;height=400&amp;amp;face=156_68_263_185,https://scrap.kakaocdn.net/dn/cn67Cu/hyXsU8vxgR/fmaqITMf7Kv4fgpvopPVY1/img.png?width=1142&amp;amp;height=1661&amp;amp;face=0_0_1142_1661');&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;og-text&quot;&gt;
&lt;p class=&quot;og-title&quot; data-ke-size=&quot;size16&quot;&gt;AWS EC2에 Docker Jenkins 설치, Github Webhook 연동 (1) | 최종_최최종_찐막_찐찐막&lt;/p&gt;
&lt;p class=&quot;og-desc&quot; data-ke-size=&quot;size16&quot;&gt;https://everyday-spring.com/628&amp;nbsp;Window PC에 Docker, jenkins 설치, GitHub 연동하기 (1) | 난 대학시절 삽질을 전공했단 사실시작에 앞서....Docker를... AWS EC2에 설치 했어야 하는데별 의심없이 개인 pc에 설치했다..&lt;/p&gt;
&lt;p class=&quot;og-host&quot; data-ke-size=&quot;size16&quot;&gt;everyday-spring.com&lt;/p&gt;
&lt;/div&gt;
&lt;/a&gt;&lt;/figure&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://everyday-spring.com/631&quot;&gt;https://everyday-spring.com/631&lt;/a&gt;&lt;/p&gt;
&lt;figure id=&quot;og_1730683401170&quot; contenteditable=&quot;false&quot; data-ke-type=&quot;opengraph&quot; data-ke-align=&quot;alignCenter&quot; data-og-type=&quot;article&quot; data-og-title=&quot;AWS EC2에 Docker Jenkins 설치, Github Webhook 연동 (2) | 윈도우 PuTTY EC2 연동하기 | EC2 메모리 스왑&quot; data-og-description=&quot;https://everyday-spring.com/630&amp;nbsp;AWS EC2에 Docker Jenkins 설치, Github Webhook 연동 (1) | 최종_최최종_찐막_찐찐막https://everyday-spring.com/628&amp;nbsp;Window PC에 Docker, jenkins 설치, GitHub 연동하기 (1) | 난 대학시절 삽질을 전&quot; data-og-host=&quot;everyday-spring.com&quot; data-og-source-url=&quot;https://everyday-spring.com/631&quot; data-og-url=&quot;https://everyday-spring.com/631&quot; data-og-image=&quot;https://scrap.kakaocdn.net/dn/IVJTf/hyXsSW9cIR/k84OumfYbFEyoiylju8JS1/img.png?width=210&amp;amp;height=210&amp;amp;face=0_0_210_210,https://scrap.kakaocdn.net/dn/cz2xsP/hyXs4wwSXN/CO4S6r2MzmxrigulJsvv31/img.png?width=210&amp;amp;height=210&amp;amp;face=0_0_210_210,https://scrap.kakaocdn.net/dn/TWbIe/hyXsT2QZc0/1Kdrt2V0Ak77rPS98F2490/img.jpg?width=682&amp;amp;height=680&amp;amp;face=0_0_682_680&quot;&gt;&lt;a href=&quot;https://everyday-spring.com/631&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://everyday-spring.com/631&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://scrap.kakaocdn.net/dn/IVJTf/hyXsSW9cIR/k84OumfYbFEyoiylju8JS1/img.png?width=210&amp;amp;height=210&amp;amp;face=0_0_210_210,https://scrap.kakaocdn.net/dn/cz2xsP/hyXs4wwSXN/CO4S6r2MzmxrigulJsvv31/img.png?width=210&amp;amp;height=210&amp;amp;face=0_0_210_210,https://scrap.kakaocdn.net/dn/TWbIe/hyXsT2QZc0/1Kdrt2V0Ak77rPS98F2490/img.jpg?width=682&amp;amp;height=680&amp;amp;face=0_0_682_680');&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;og-text&quot;&gt;
&lt;p class=&quot;og-title&quot; data-ke-size=&quot;size16&quot;&gt;AWS EC2에 Docker Jenkins 설치, Github Webhook 연동 (2) | 윈도우 PuTTY EC2 연동하기 | EC2 메모리 스왑&lt;/p&gt;
&lt;p class=&quot;og-desc&quot; data-ke-size=&quot;size16&quot;&gt;https://everyday-spring.com/630&amp;nbsp;AWS EC2에 Docker Jenkins 설치, Github Webhook 연동 (1) | 최종_최최종_찐막_찐찐막https://everyday-spring.com/628&amp;nbsp;Window PC에 Docker, jenkins 설치, GitHub 연동하기 (1) | 난 대학시절 삽질을 전&lt;/p&gt;
&lt;p class=&quot;og-host&quot; data-ke-size=&quot;size16&quot;&gt;everyday-spring.com&lt;/p&gt;
&lt;/div&gt;
&lt;/a&gt;&lt;/figure&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://everyday-spring.com/632&quot;&gt;https://everyday-spring.com/632&lt;/a&gt;&lt;/p&gt;
&lt;figure id=&quot;og_1730683403143&quot; contenteditable=&quot;false&quot; data-ke-type=&quot;opengraph&quot; data-ke-align=&quot;alignCenter&quot; data-og-type=&quot;article&quot; data-og-title=&quot;AWS EC2에 Docker Jenkins 설치, Github Webhook 연동 (3) | Docker in Docker&quot; data-og-description=&quot;https://everyday-spring.com/630&amp;nbsp;AWS EC2에 Docker Jenkins 설치, Github Webhook 연동 (1) | 최종_최최종_찐막_찐찐막https://everyday-spring.com/628&amp;nbsp;Window PC에 Docker, jenkins 설치, GitHub 연동하기 (1) | 난 대학시절 삽질을 전&quot; data-og-host=&quot;everyday-spring.com&quot; data-og-source-url=&quot;https://everyday-spring.com/632&quot; data-og-url=&quot;https://everyday-spring.com/632&quot; data-og-image=&quot;https://scrap.kakaocdn.net/dn/c7nSR8/hyXs44lwmt/rCjPLYuHspmotz8Fiv7fzk/img.jpg?width=259&amp;amp;height=194&amp;amp;face=63_45_118_105,https://scrap.kakaocdn.net/dn/jNhCY/hyXsWFhvLM/8gKDNptvU5yavhRIMikoQ1/img.jpg?width=259&amp;amp;height=194&amp;amp;face=63_45_118_105,https://scrap.kakaocdn.net/dn/ReSZw/hyXsT2QY90/bOaQMHzW3wTEzOofKWaUU1/img.png?width=718&amp;amp;height=288&amp;amp;face=0_0_718_288&quot;&gt;&lt;a href=&quot;https://everyday-spring.com/632&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://everyday-spring.com/632&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://scrap.kakaocdn.net/dn/c7nSR8/hyXs44lwmt/rCjPLYuHspmotz8Fiv7fzk/img.jpg?width=259&amp;amp;height=194&amp;amp;face=63_45_118_105,https://scrap.kakaocdn.net/dn/jNhCY/hyXsWFhvLM/8gKDNptvU5yavhRIMikoQ1/img.jpg?width=259&amp;amp;height=194&amp;amp;face=63_45_118_105,https://scrap.kakaocdn.net/dn/ReSZw/hyXsT2QY90/bOaQMHzW3wTEzOofKWaUU1/img.png?width=718&amp;amp;height=288&amp;amp;face=0_0_718_288');&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;og-text&quot;&gt;
&lt;p class=&quot;og-title&quot; data-ke-size=&quot;size16&quot;&gt;AWS EC2에 Docker Jenkins 설치, Github Webhook 연동 (3) | Docker in Docker&lt;/p&gt;
&lt;p class=&quot;og-desc&quot; data-ke-size=&quot;size16&quot;&gt;https://everyday-spring.com/630&amp;nbsp;AWS EC2에 Docker Jenkins 설치, Github Webhook 연동 (1) | 최종_최최종_찐막_찐찐막https://everyday-spring.com/628&amp;nbsp;Window PC에 Docker, jenkins 설치, GitHub 연동하기 (1) | 난 대학시절 삽질을 전&lt;/p&gt;
&lt;p class=&quot;og-host&quot; data-ke-size=&quot;size16&quot;&gt;everyday-spring.com&lt;/p&gt;
&lt;/div&gt;
&lt;/a&gt;&lt;/figure&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://everyday-spring.com/633&quot;&gt;https://everyday-spring.com/633&lt;/a&gt;&lt;/p&gt;
&lt;figure id=&quot;og_1730683404841&quot; contenteditable=&quot;false&quot; data-ke-type=&quot;opengraph&quot; data-ke-align=&quot;alignCenter&quot; data-og-type=&quot;article&quot; data-og-title=&quot;AWS EC2에 Docker Jenkins 설치, Github Webhook 연동 (4) | CI/CD 최종 | Jenkins Pipeline Docker 배포까지 총정리&quot; data-og-description=&quot;https://everyday-spring.com/630&amp;nbsp;AWS EC2에 Docker Jenkins 설치, Github Webhook 연동 (1) | 최종_최최종_찐막_찐찐막https://everyday-spring.com/628&amp;nbsp;Window PC에 Docker, jenkins 설치, GitHub 연동하기 (1) | 난 대학시절 삽질을 전&quot; data-og-host=&quot;everyday-spring.com&quot; data-og-source-url=&quot;https://everyday-spring.com/633&quot; data-og-url=&quot;https://everyday-spring.com/633&quot; data-og-image=&quot;https://scrap.kakaocdn.net/dn/bH1xSD/hyXsQE2Lgi/QkmxWK9pVgjg0TlQxHwbWK/img.png?width=800&amp;amp;height=362&amp;amp;face=0_0_800_362,https://scrap.kakaocdn.net/dn/dQmmy5/hyXsQZmVqe/gmZT5mTHufb3pmSLkqySlk/img.png?width=800&amp;amp;height=362&amp;amp;face=0_0_800_362,https://scrap.kakaocdn.net/dn/cybeVd/hyXsV0Fq0w/TCx7WmxrgG6uxFalLkm0Mk/img.png?width=1406&amp;amp;height=1430&amp;amp;face=0_0_1406_1430&quot;&gt;&lt;a href=&quot;https://everyday-spring.com/633&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://everyday-spring.com/633&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://scrap.kakaocdn.net/dn/bH1xSD/hyXsQE2Lgi/QkmxWK9pVgjg0TlQxHwbWK/img.png?width=800&amp;amp;height=362&amp;amp;face=0_0_800_362,https://scrap.kakaocdn.net/dn/dQmmy5/hyXsQZmVqe/gmZT5mTHufb3pmSLkqySlk/img.png?width=800&amp;amp;height=362&amp;amp;face=0_0_800_362,https://scrap.kakaocdn.net/dn/cybeVd/hyXsV0Fq0w/TCx7WmxrgG6uxFalLkm0Mk/img.png?width=1406&amp;amp;height=1430&amp;amp;face=0_0_1406_1430');&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;og-text&quot;&gt;
&lt;p class=&quot;og-title&quot; data-ke-size=&quot;size16&quot;&gt;AWS EC2에 Docker Jenkins 설치, Github Webhook 연동 (4) | CI/CD 최종 | Jenkins Pipeline Docker 배포까지 총정리&lt;/p&gt;
&lt;p class=&quot;og-desc&quot; data-ke-size=&quot;size16&quot;&gt;https://everyday-spring.com/630&amp;nbsp;AWS EC2에 Docker Jenkins 설치, Github Webhook 연동 (1) | 최종_최최종_찐막_찐찐막https://everyday-spring.com/628&amp;nbsp;Window PC에 Docker, jenkins 설치, GitHub 연동하기 (1) | 난 대학시절 삽질을 전&lt;/p&gt;
&lt;p class=&quot;og-host&quot; data-ke-size=&quot;size16&quot;&gt;everyday-spring.com&lt;/p&gt;
&lt;/div&gt;
&lt;/a&gt;&lt;/figure&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;지난 글에서는 윈도우, ubuntu 환경에서 Jenkins CI/CD 튜토리얼을 작성해봤다&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이번 글에서는 3일간 환경을 구성하며 겪었던 다양한.. 문제들과... 해결방법을 작성해보겠다&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;다운로드 (4).jpg&quot; data-origin-width=&quot;225&quot; data-origin-height=&quot;225&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bi2OAg/btsKtK7gfTy/MCEq96fhfSB5CxSPJqnFK1/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bi2OAg/btsKtK7gfTy/MCEq96fhfSB5CxSPJqnFK1/img.jpg&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bi2OAg/btsKtK7gfTy/MCEq96fhfSB5CxSPJqnFK1/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fbi2OAg%2FbtsKtK7gfTy%2FMCEq96fhfSB5CxSPJqnFK1%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;225&quot; height=&quot;225&quot; data-filename=&quot;다운로드 (4).jpg&quot; data-origin-width=&quot;225&quot; data-origin-height=&quot;225&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;text-align: center;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;s&gt;젠킨스 미친 거 또 안되네&lt;/s&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;로컬 환경에 Jenkins 설치&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이것은.. 개인 PC를 서버로 사용할 수 없기 때문에&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;EC2에 설치했다 큰 트러블은 아니었음&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;&lt;b&gt;Jenkins Spring Boot build 무한로딩&lt;/b&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;젠킨스에서 빌드를 하게되면 중간에 로딩이 길어지면서 서버자체가 먹통되는 문제가 발생했다&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;Console Output을 살펴보면 GitHub에서 대상 branch를 clone해오는 것 까지는 작동 했으나&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;application을 build해서 jar 파일을 만들때 무한로딩에 걸리는 현상&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;로딩에 걸려버리면 Jenkins 페이지도 접속이 안되고&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;터미널로 서버에 연결조차 되지 않았다&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;30분이상 기다려도 무한 로딩상태여서 결국 EC2 Instance 자체를 중지하고 재시작 해야했다&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;계속해서 시도를 해봤지만 build 과정에서 계속 먹통이 됐고&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;Instance를 중지하는 것도 길게는 10분정도 시간이 걸렸다&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;로컬에서 환경구성을 해봤기 때문에 검색을 잘안해보고 설치했던게 패착..&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;문제는 &lt;b&gt;&lt;span style=&quot;color: #ee2323;&quot;&gt;리소스 부족으로 인한 빌드실패&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;기본 프리티어 설정인 t2.micro의 스펙은 1v CPU, 1 GiB Memory 인데&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;찾아보니 최소 2v CPU, 2~4 GiB Memory가 필요하다고 한다...&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;될리가 있나...&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;결국 &lt;b&gt;&lt;span style=&quot;color: #006dd7;&quot;&gt;Instance를 t3.small&lt;/span&gt;&lt;/b&gt;로 새로 만들었다&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;&lt;b&gt;Spring Boot Spotless Plugin build resource&lt;/b&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;&lt;span style=&quot;color: #ee2323;&quot;&gt;EC2 사양을 올렸는데도 build 과정에서 먹통&lt;/span&gt;&lt;/b&gt;이 되는 문제가 발생했다&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;build 과정에서 리소스를 많이 잡아먹는&lt;span style=&quot;color: #ee2323;&quot;&gt;&lt;b&gt; Spotless 플러그인&lt;/b&gt;&lt;/span&gt;이 문제 원인&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;Spotless는 자동 정렬 플러그인으로&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;사용하지 않는 import 정리나 자동 정렬&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;파일 끝 개행등의 기능을 제공한다&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;하지만 컴파일 시마다 동작하면서 전체 파일을 점검하기 때문에&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;많은 리소스를 잡아먹을 수밖에 없다&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;팀원들과 협업을 하면서 어느정도 &lt;span style=&quot;background-color: #ffffff; color: #4d5156; text-align: left;&quot;&gt;일관된 코드 스타일을 유지하기 위해 사용했는데&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;background-color: #ffffff; color: #4d5156; text-align: left;&quot;&gt;배포 branch에는 필요 없는 기능이어서&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;background-color: #ffffff; color: #4d5156; text-align: left;&quot;&gt;&lt;span style=&quot;color: #006dd7;&quot;&gt;&lt;b&gt;리소스를 많이 잡아먹는 Spotless Plugin을 삭제&lt;/b&gt;&lt;/span&gt;해 해결했다&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;&lt;b&gt;&lt;span style=&quot;color: #4d5156;&quot;&gt;&lt;span style=&quot;background-color: #ffffff;&quot;&gt;Docker not found&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;blob&quot; data-origin-width=&quot;784&quot; data-origin-height=&quot;704&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/C3nN3/btsKtW7yPFE/Pd4ug7it3mPGWEmNb4fEB1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/C3nN3/btsKtW7yPFE/Pd4ug7it3mPGWEmNb4fEB1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/C3nN3/btsKtW7yPFE/Pd4ug7it3mPGWEmNb4fEB1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FC3nN3%2FbtsKtW7yPFE%2FPd4ug7it3mPGWEmNb4fEB1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;400&quot; height=&quot;359&quot; data-filename=&quot;blob&quot; data-origin-width=&quot;784&quot; data-origin-height=&quot;704&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;Stage 'Build Docker' 단계에서&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #ee2323;&quot;&gt;&lt;b&gt;Docker 명령어를 찾지 못해 발생하는 문제&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;Docker위에 Jenkins가 설치된 구조이지만&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;Jenkins 컨테이너는 독립되어 있기 때문에&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #006dd7;&quot;&gt;&lt;b&gt;Docker in Docker 구조로 Jenkins 내에 Docker를 또 설치&lt;/b&gt;&lt;/span&gt;해줘야한다&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;추가적으로 Jenkins 컨테이너를 실행할 때&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;소켓 옵션을 줘서 정상 동작할 수 있었다&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;자세한 방법은 아래 글 참조&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://everyday-spring.com/632&quot; target=&quot;_blank&quot; rel=&quot;noopener&amp;nbsp;noreferrer&quot;&gt;https://everyday-spring.com/632&lt;/a&gt;&lt;/p&gt;
&lt;figure id=&quot;og_1730687083667&quot; contenteditable=&quot;false&quot; data-ke-type=&quot;opengraph&quot; data-ke-align=&quot;alignCenter&quot; data-og-type=&quot;article&quot; data-og-title=&quot;AWS EC2에 Docker Jenkins 설치, Github Webhook 연동 (3) | Docker in Docker&quot; data-og-description=&quot;https://everyday-spring.com/630&amp;nbsp;AWS EC2에 Docker Jenkins 설치, Github Webhook 연동 (1) | 최종_최최종_찐막_찐찐막https://everyday-spring.com/628&amp;nbsp;Window PC에 Docker, jenkins 설치, GitHub 연동하기 (1) | 난 대학시절 삽질을 전&quot; data-og-host=&quot;everyday-spring.com&quot; data-og-source-url=&quot;https://everyday-spring.com/632&quot; data-og-url=&quot;https://everyday-spring.com/632&quot; data-og-image=&quot;https://scrap.kakaocdn.net/dn/c7nSR8/hyXs44lwmt/rCjPLYuHspmotz8Fiv7fzk/img.jpg?width=259&amp;amp;height=194&amp;amp;face=63_45_118_105,https://scrap.kakaocdn.net/dn/jNhCY/hyXsWFhvLM/8gKDNptvU5yavhRIMikoQ1/img.jpg?width=259&amp;amp;height=194&amp;amp;face=63_45_118_105,https://scrap.kakaocdn.net/dn/ReSZw/hyXsT2QY90/bOaQMHzW3wTEzOofKWaUU1/img.png?width=718&amp;amp;height=288&amp;amp;face=0_0_718_288&quot;&gt;&lt;a href=&quot;https://everyday-spring.com/632&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://everyday-spring.com/632&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://scrap.kakaocdn.net/dn/c7nSR8/hyXs44lwmt/rCjPLYuHspmotz8Fiv7fzk/img.jpg?width=259&amp;amp;height=194&amp;amp;face=63_45_118_105,https://scrap.kakaocdn.net/dn/jNhCY/hyXsWFhvLM/8gKDNptvU5yavhRIMikoQ1/img.jpg?width=259&amp;amp;height=194&amp;amp;face=63_45_118_105,https://scrap.kakaocdn.net/dn/ReSZw/hyXsT2QY90/bOaQMHzW3wTEzOofKWaUU1/img.png?width=718&amp;amp;height=288&amp;amp;face=0_0_718_288');&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;og-text&quot;&gt;
&lt;p class=&quot;og-title&quot; data-ke-size=&quot;size16&quot;&gt;AWS EC2에 Docker Jenkins 설치, Github Webhook 연동 (3) | Docker in Docker&lt;/p&gt;
&lt;p class=&quot;og-desc&quot; data-ke-size=&quot;size16&quot;&gt;https://everyday-spring.com/630&amp;nbsp;AWS EC2에 Docker Jenkins 설치, Github Webhook 연동 (1) | 최종_최최종_찐막_찐찐막https://everyday-spring.com/628&amp;nbsp;Window PC에 Docker, jenkins 설치, GitHub 연동하기 (1) | 난 대학시절 삽질을 전&lt;/p&gt;
&lt;p class=&quot;og-host&quot; data-ke-size=&quot;size16&quot;&gt;everyday-spring.com&lt;/p&gt;
&lt;/div&gt;
&lt;/a&gt;&lt;/figure&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;&lt;b&gt;그런데 또 무한로딩이 걸림 미쳐버리겠네&lt;/b&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이때쯤 부터 그냥 영혼이 반 나가서&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;차라리 개발하고 싶어졌다&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;저 환경세팅 말고 코드 작성하고 싶어요...&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #ee2323;&quot;&gt;&lt;b&gt;무한로딩은 결국 리소스가 부족해서 발생&lt;/b&gt;&lt;/span&gt;함이 학습되어서&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #006dd7;&quot;&gt;&lt;b&gt;추가적으로 메모리 스왑&lt;/b&gt;&lt;/span&gt;을 해서 해결했다&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;자세한 방법은 아래 글 참조&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://everyday-spring.com/631&quot; target=&quot;_blank&quot; rel=&quot;noopener&amp;nbsp;noreferrer&quot;&gt;https://everyday-spring.com/631&lt;/a&gt;&lt;/p&gt;
&lt;figure id=&quot;og_1730687355148&quot; contenteditable=&quot;false&quot; data-ke-type=&quot;opengraph&quot; data-ke-align=&quot;alignCenter&quot; data-og-type=&quot;article&quot; data-og-title=&quot;AWS EC2에 Docker Jenkins 설치, Github Webhook 연동 (2) | 윈도우 PuTTY EC2 연동하기 | EC2 메모리 스왑&quot; data-og-description=&quot;https://everyday-spring.com/630&amp;nbsp;AWS EC2에 Docker Jenkins 설치, Github Webhook 연동 (1) | 최종_최최종_찐막_찐찐막https://everyday-spring.com/628&amp;nbsp;Window PC에 Docker, jenkins 설치, GitHub 연동하기 (1) | 난 대학시절 삽질을 전&quot; data-og-host=&quot;everyday-spring.com&quot; data-og-source-url=&quot;https://everyday-spring.com/631&quot; data-og-url=&quot;https://everyday-spring.com/631&quot; data-og-image=&quot;https://scrap.kakaocdn.net/dn/IVJTf/hyXsSW9cIR/k84OumfYbFEyoiylju8JS1/img.png?width=210&amp;amp;height=210&amp;amp;face=0_0_210_210,https://scrap.kakaocdn.net/dn/cz2xsP/hyXs4wwSXN/CO4S6r2MzmxrigulJsvv31/img.png?width=210&amp;amp;height=210&amp;amp;face=0_0_210_210,https://scrap.kakaocdn.net/dn/TWbIe/hyXsT2QZc0/1Kdrt2V0Ak77rPS98F2490/img.jpg?width=682&amp;amp;height=680&amp;amp;face=0_0_682_680&quot;&gt;&lt;a href=&quot;https://everyday-spring.com/631&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://everyday-spring.com/631&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://scrap.kakaocdn.net/dn/IVJTf/hyXsSW9cIR/k84OumfYbFEyoiylju8JS1/img.png?width=210&amp;amp;height=210&amp;amp;face=0_0_210_210,https://scrap.kakaocdn.net/dn/cz2xsP/hyXs4wwSXN/CO4S6r2MzmxrigulJsvv31/img.png?width=210&amp;amp;height=210&amp;amp;face=0_0_210_210,https://scrap.kakaocdn.net/dn/TWbIe/hyXsT2QZc0/1Kdrt2V0Ak77rPS98F2490/img.jpg?width=682&amp;amp;height=680&amp;amp;face=0_0_682_680');&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;og-text&quot;&gt;
&lt;p class=&quot;og-title&quot; data-ke-size=&quot;size16&quot;&gt;AWS EC2에 Docker Jenkins 설치, Github Webhook 연동 (2) | 윈도우 PuTTY EC2 연동하기 | EC2 메모리 스왑&lt;/p&gt;
&lt;p class=&quot;og-desc&quot; data-ke-size=&quot;size16&quot;&gt;https://everyday-spring.com/630&amp;nbsp;AWS EC2에 Docker Jenkins 설치, Github Webhook 연동 (1) | 최종_최최종_찐막_찐찐막https://everyday-spring.com/628&amp;nbsp;Window PC에 Docker, jenkins 설치, GitHub 연동하기 (1) | 난 대학시절 삽질을 전&lt;/p&gt;
&lt;p class=&quot;og-host&quot; data-ke-size=&quot;size16&quot;&gt;everyday-spring.com&lt;/p&gt;
&lt;/div&gt;
&lt;/a&gt;&lt;/figure&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;&lt;b&gt; ERROR: Error fetching remote repo 'origin' hudson.plugins.git.GitException: Failed to fetch from&lt;/b&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;갑자기 되던것도 안됨 이슈 발생 ...&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;설정을 이것 저것 바꿔서 그런가&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #ee2323;&quot;&gt;&lt;b&gt;Git directory가 아니라면서 Jenkins가 나를 억까함&lt;/b&gt;&lt;/span&gt;...&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;챗지피티의 설명은&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;blockquote data-ke-style=&quot;style1&quot;&gt;&lt;span style=&quot;font-family: 'Noto Serif KR';&quot;&gt; 이 오류는 Jenkins가 GitHub 저장소에서 코드를 가져오지 못할 때 발생하는 오류입니다. 특히 git config remote.origin.url 명령이 &quot;not in a git directory&quot; 오류로 인해 실패했습니다. &lt;br /&gt;&lt;/span&gt;&lt;/blockquote&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그렇다고 합니다...&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;화면 캡처 2024-11-04 120424.jpg&quot; data-origin-width=&quot;2098&quot; data-origin-height=&quot;427&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/lkLg6/btsKuREjLiU/WHUng21zzvi98ok1Sc5yCk/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/lkLg6/btsKuREjLiU/WHUng21zzvi98ok1Sc5yCk/img.jpg&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/lkLg6/btsKuREjLiU/WHUng21zzvi98ok1Sc5yCk/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FlkLg6%2FbtsKuREjLiU%2FWHUng21zzvi98ok1Sc5yCk%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;2098&quot; height=&quot;427&quot; data-filename=&quot;화면 캡처 2024-11-04 120424.jpg&quot; data-origin-width=&quot;2098&quot; data-origin-height=&quot;427&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;뭔가 파일이 꼬인 상황이라서&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #006dd7;&quot;&gt;&lt;b&gt;jenkis workspace의 파일을 삭제&lt;/b&gt;&lt;/span&gt;해서 해결했다&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;&lt;b&gt;Jenkins CI/CD 환경변수&lt;/b&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;코드에는 보안을 위해 민감한 정보는 직접 적지 않고 모두 환경변수로 처리한다&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;배포 서버에서 Jar파일을 실행할 때도 이런 환경변수들이 필요하다&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #ee2323;&quot;&gt;&lt;b&gt;필요한 환경변수가 주입되지 않으면 application이 실행되지 않는다&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #006dd7;&quot;&gt;&lt;b&gt;docker 컨테이너를 실행할 때 옵션으로 환경변수를 입력해 해결&lt;/b&gt;&lt;/span&gt;했다&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;자세한 방법은 아래 글 참조&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;http://everyday-spring.com/633&quot;&gt;http://everyday-spring.com/633&lt;/a&gt;&lt;/p&gt;
&lt;figure id=&quot;og_1730689788257&quot; contenteditable=&quot;false&quot; data-ke-type=&quot;opengraph&quot; data-ke-align=&quot;alignCenter&quot; data-og-type=&quot;article&quot; data-og-title=&quot;AWS EC2에 Docker Jenkins 설치, Github Webhook 연동 (4) | CI/CD 최종 | Jenkins Pipeline Docker 배포까지 총정리&quot; data-og-description=&quot;https://everyday-spring.com/630&amp;nbsp;AWS EC2에 Docker Jenkins 설치, Github Webhook 연동 (1) | 최종_최최종_찐막_찐찐막https://everyday-spring.com/628&amp;nbsp;Window PC에 Docker, jenkins 설치, GitHub 연동하기 (1) | 난 대학시절 삽질을 전&quot; data-og-host=&quot;everyday-spring.com&quot; data-og-source-url=&quot;http://everyday-spring.com/633&quot; data-og-url=&quot;https://everyday-spring.com/633&quot; data-og-image=&quot;https://scrap.kakaocdn.net/dn/vaydQ/hyXsSiCjBy/USFVhaZbCr9A5ybk7HiQ61/img.png?width=800&amp;amp;height=362&amp;amp;face=0_0_800_362,https://scrap.kakaocdn.net/dn/eVLdT/hyXs4J6ELB/tL4KKgjW7DXb9cQ9tcOxJ1/img.png?width=800&amp;amp;height=362&amp;amp;face=0_0_800_362&quot;&gt;&lt;a href=&quot;http://everyday-spring.com/633&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;http://everyday-spring.com/633&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://scrap.kakaocdn.net/dn/vaydQ/hyXsSiCjBy/USFVhaZbCr9A5ybk7HiQ61/img.png?width=800&amp;amp;height=362&amp;amp;face=0_0_800_362,https://scrap.kakaocdn.net/dn/eVLdT/hyXs4J6ELB/tL4KKgjW7DXb9cQ9tcOxJ1/img.png?width=800&amp;amp;height=362&amp;amp;face=0_0_800_362');&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;og-text&quot;&gt;
&lt;p class=&quot;og-title&quot; data-ke-size=&quot;size16&quot;&gt;AWS EC2에 Docker Jenkins 설치, Github Webhook 연동 (4) | CI/CD 최종 | Jenkins Pipeline Docker 배포까지 총정리&lt;/p&gt;
&lt;p class=&quot;og-desc&quot; data-ke-size=&quot;size16&quot;&gt;https://everyday-spring.com/630&amp;nbsp;AWS EC2에 Docker Jenkins 설치, Github Webhook 연동 (1) | 최종_최최종_찐막_찐찐막https://everyday-spring.com/628&amp;nbsp;Window PC에 Docker, jenkins 설치, GitHub 연동하기 (1) | 난 대학시절 삽질을 전&lt;/p&gt;
&lt;p class=&quot;og-host&quot; data-ke-size=&quot;size16&quot;&gt;everyday-spring.com&lt;/p&gt;
&lt;/div&gt;
&lt;/a&gt;&lt;/figure&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;</description>
      <category>TIL</category>
      <author>everyday-spring</author>
      <guid isPermaLink="true">https://subin0522.tistory.com/634</guid>
      <comments>https://subin0522.tistory.com/634#entry634comment</comments>
      <pubDate>Mon, 4 Nov 2024 12:12:00 +0900</pubDate>
    </item>
    <item>
      <title>AWS EC2에 Docker Jenkins 설치, Github Webhook 연동 (4) | CI/CD 최종 | Jenkins Pipeline Docker 배포까지 총정리</title>
      <link>https://subin0522.tistory.com/633</link>
      <description>&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://everyday-spring.com/630&quot;&gt;https://everyday-spring.com/630&lt;/a&gt;&lt;/p&gt;
&lt;figure id=&quot;og_1730543692695&quot; contenteditable=&quot;false&quot; data-ke-type=&quot;opengraph&quot; data-ke-align=&quot;alignCenter&quot; data-og-type=&quot;article&quot; data-og-title=&quot;AWS EC2에 Docker Jenkins 설치, Github Webhook 연동 (1) | 최종_최최종_찐막_찐찐막&quot; data-og-description=&quot;https://everyday-spring.com/628&amp;nbsp;Window PC에 Docker, jenkins 설치, GitHub 연동하기 (1) | 난 대학시절 삽질을 전공했단 사실시작에 앞서....Docker를... AWS EC2에 설치 했어야 하는데별 의심없이 개인 pc에 설치했다..&quot; data-og-host=&quot;everyday-spring.com&quot; data-og-source-url=&quot;https://everyday-spring.com/630&quot; data-og-url=&quot;https://everyday-spring.com/630&quot; data-og-image=&quot;https://scrap.kakaocdn.net/dn/cS9CWh/hyXsVeT97d/gHX5fkkO9gk46Uk6R1k7y0/img.jpg?width=400&amp;amp;height=400&amp;amp;face=156_68_263_185,https://scrap.kakaocdn.net/dn/beIRjy/hyXs2LShzI/5ibEGH3rg7NK8DenQ1uu3k/img.jpg?width=400&amp;amp;height=400&amp;amp;face=156_68_263_185,https://scrap.kakaocdn.net/dn/bDj7qp/hyXpoC6i6B/0uBfWHEg8raY1XRwWrFBb0/img.png?width=1142&amp;amp;height=1661&amp;amp;face=0_0_1142_1661&quot;&gt;&lt;a href=&quot;https://everyday-spring.com/630&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://everyday-spring.com/630&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://scrap.kakaocdn.net/dn/cS9CWh/hyXsVeT97d/gHX5fkkO9gk46Uk6R1k7y0/img.jpg?width=400&amp;amp;height=400&amp;amp;face=156_68_263_185,https://scrap.kakaocdn.net/dn/beIRjy/hyXs2LShzI/5ibEGH3rg7NK8DenQ1uu3k/img.jpg?width=400&amp;amp;height=400&amp;amp;face=156_68_263_185,https://scrap.kakaocdn.net/dn/bDj7qp/hyXpoC6i6B/0uBfWHEg8raY1XRwWrFBb0/img.png?width=1142&amp;amp;height=1661&amp;amp;face=0_0_1142_1661');&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;og-text&quot;&gt;
&lt;p class=&quot;og-title&quot; data-ke-size=&quot;size16&quot;&gt;AWS EC2에 Docker Jenkins 설치, Github Webhook 연동 (1) | 최종_최최종_찐막_찐찐막&lt;/p&gt;
&lt;p class=&quot;og-desc&quot; data-ke-size=&quot;size16&quot;&gt;https://everyday-spring.com/628&amp;nbsp;Window PC에 Docker, jenkins 설치, GitHub 연동하기 (1) | 난 대학시절 삽질을 전공했단 사실시작에 앞서....Docker를... AWS EC2에 설치 했어야 하는데별 의심없이 개인 pc에 설치했다..&lt;/p&gt;
&lt;p class=&quot;og-host&quot; data-ke-size=&quot;size16&quot;&gt;everyday-spring.com&lt;/p&gt;
&lt;/div&gt;
&lt;/a&gt;&lt;/figure&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://everyday-spring.com/631&quot;&gt;https://everyday-spring.com/631&lt;/a&gt;&lt;/p&gt;
&lt;figure id=&quot;og_1730543696559&quot; contenteditable=&quot;false&quot; data-ke-type=&quot;opengraph&quot; data-ke-align=&quot;alignCenter&quot; data-og-type=&quot;article&quot; data-og-title=&quot;AWS EC2에 Docker Jenkins 설치, Github Webhook 연동 (2) | 윈도우 PuTTY EC2 연동하기 | EC2 메모리 스왑&quot; data-og-description=&quot;https://everyday-spring.com/630&amp;nbsp;AWS EC2에 Docker Jenkins 설치, Github Webhook 연동 (1) | 최종_최최종_찐막_찐찐막https://everyday-spring.com/628&amp;nbsp;Window PC에 Docker, jenkins 설치, GitHub 연동하기 (1) | 난 대학시절 삽질을 전&quot; data-og-host=&quot;everyday-spring.com&quot; data-og-source-url=&quot;https://everyday-spring.com/631&quot; data-og-url=&quot;https://everyday-spring.com/631&quot; data-og-image=&quot;https://scrap.kakaocdn.net/dn/MlVLR/hyXsYvWy2S/2VuohYehsGZpQrVYqEYWhK/img.png?width=210&amp;amp;height=210&amp;amp;face=0_0_210_210,https://scrap.kakaocdn.net/dn/bAdIaU/hyXs5oiB3T/AvxkMFWfST9kZRPOqBIR0K/img.png?width=210&amp;amp;height=210&amp;amp;face=0_0_210_210,https://scrap.kakaocdn.net/dn/bkT2PO/hyXpsFtgoD/KKyd5QzlPfIDnBG8w0Meak/img.jpg?width=682&amp;amp;height=680&amp;amp;face=0_0_682_680&quot;&gt;&lt;a href=&quot;https://everyday-spring.com/631&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://everyday-spring.com/631&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://scrap.kakaocdn.net/dn/MlVLR/hyXsYvWy2S/2VuohYehsGZpQrVYqEYWhK/img.png?width=210&amp;amp;height=210&amp;amp;face=0_0_210_210,https://scrap.kakaocdn.net/dn/bAdIaU/hyXs5oiB3T/AvxkMFWfST9kZRPOqBIR0K/img.png?width=210&amp;amp;height=210&amp;amp;face=0_0_210_210,https://scrap.kakaocdn.net/dn/bkT2PO/hyXpsFtgoD/KKyd5QzlPfIDnBG8w0Meak/img.jpg?width=682&amp;amp;height=680&amp;amp;face=0_0_682_680');&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;og-text&quot;&gt;
&lt;p class=&quot;og-title&quot; data-ke-size=&quot;size16&quot;&gt;AWS EC2에 Docker Jenkins 설치, Github Webhook 연동 (2) | 윈도우 PuTTY EC2 연동하기 | EC2 메모리 스왑&lt;/p&gt;
&lt;p class=&quot;og-desc&quot; data-ke-size=&quot;size16&quot;&gt;https://everyday-spring.com/630&amp;nbsp;AWS EC2에 Docker Jenkins 설치, Github Webhook 연동 (1) | 최종_최최종_찐막_찐찐막https://everyday-spring.com/628&amp;nbsp;Window PC에 Docker, jenkins 설치, GitHub 연동하기 (1) | 난 대학시절 삽질을 전&lt;/p&gt;
&lt;p class=&quot;og-host&quot; data-ke-size=&quot;size16&quot;&gt;everyday-spring.com&lt;/p&gt;
&lt;/div&gt;
&lt;/a&gt;&lt;/figure&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://subin0522.tistory.com/632&quot;&gt;https://subin0522.tistory.com/632&lt;/a&gt;&lt;/p&gt;
&lt;figure id=&quot;og_1730543704971&quot; contenteditable=&quot;false&quot; data-ke-type=&quot;opengraph&quot; data-ke-align=&quot;alignCenter&quot; data-og-type=&quot;article&quot; data-og-title=&quot;AWS EC2에 Docker Jenkins 설치, Github Webhook 연동 (3) | Docker in Docker&quot; data-og-description=&quot;https://everyday-spring.com/630&amp;nbsp;AWS EC2에 Docker Jenkins 설치, Github Webhook 연동 (1) | 최종_최최종_찐막_찐찐막https://everyday-spring.com/628&amp;nbsp;Window PC에 Docker, jenkins 설치, GitHub 연동하기 (1) | 난 대학시절 삽질을 전&quot; data-og-host=&quot;everyday-spring.com&quot; data-og-source-url=&quot;https://subin0522.tistory.com/632&quot; data-og-url=&quot;https://everyday-spring.com/632&quot; data-og-image=&quot;https://scrap.kakaocdn.net/dn/iX7yV/hyXsYiqwZR/9lfuOXLjhl2kr0cevgqXqK/img.jpg?width=259&amp;amp;height=194&amp;amp;face=63_45_118_105,https://scrap.kakaocdn.net/dn/yHukC/hyXprlYBY1/Y03qFkEfud7TNee7hjlWxK/img.jpg?width=259&amp;amp;height=194&amp;amp;face=63_45_118_105,https://scrap.kakaocdn.net/dn/AoObQ/hyXpAp0BlS/gKD5zYnHDuVWlbRZK8dk7K/img.png?width=718&amp;amp;height=288&amp;amp;face=0_0_718_288&quot;&gt;&lt;a href=&quot;https://subin0522.tistory.com/632&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://subin0522.tistory.com/632&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://scrap.kakaocdn.net/dn/iX7yV/hyXsYiqwZR/9lfuOXLjhl2kr0cevgqXqK/img.jpg?width=259&amp;amp;height=194&amp;amp;face=63_45_118_105,https://scrap.kakaocdn.net/dn/yHukC/hyXprlYBY1/Y03qFkEfud7TNee7hjlWxK/img.jpg?width=259&amp;amp;height=194&amp;amp;face=63_45_118_105,https://scrap.kakaocdn.net/dn/AoObQ/hyXpAp0BlS/gKD5zYnHDuVWlbRZK8dk7K/img.png?width=718&amp;amp;height=288&amp;amp;face=0_0_718_288');&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;og-text&quot;&gt;
&lt;p class=&quot;og-title&quot; data-ke-size=&quot;size16&quot;&gt;AWS EC2에 Docker Jenkins 설치, Github Webhook 연동 (3) | Docker in Docker&lt;/p&gt;
&lt;p class=&quot;og-desc&quot; data-ke-size=&quot;size16&quot;&gt;https://everyday-spring.com/630&amp;nbsp;AWS EC2에 Docker Jenkins 설치, Github Webhook 연동 (1) | 최종_최최종_찐막_찐찐막https://everyday-spring.com/628&amp;nbsp;Window PC에 Docker, jenkins 설치, GitHub 연동하기 (1) | 난 대학시절 삽질을 전&lt;/p&gt;
&lt;p class=&quot;og-host&quot; data-ke-size=&quot;size16&quot;&gt;everyday-spring.com&lt;/p&gt;
&lt;/div&gt;
&lt;/a&gt;&lt;/figure&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;찐찐 마지막... 이제 진짜 배포 해볼게요&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;Jenkins Setting&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이제 웹에서 EC2 ubuntu에 설치한 Jenkins에 접근할 수 있습니다&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;주소창에 hostname:port를 입력하면 되는데&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;- hostname -&amp;gt; Instance의 public IP&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;- port -&amp;gt; Jenkins 컨테이너 실행할 때 지정한 포트번호 (기본 8080)&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1086&quot; data-origin-height=&quot;492&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/E3O4G/btsKuP6VIZ0/rfDVgVmgNrncGKCQ8fQs7K/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/E3O4G/btsKuP6VIZ0/rfDVgVmgNrncGKCQ8fQs7K/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/E3O4G/btsKuP6VIZ0/rfDVgVmgNrncGKCQ8fQs7K/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FE3O4G%2FbtsKuP6VIZ0%2FrfDVgVmgNrncGKCQ8fQs7K%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1086&quot; height=&quot;492&quot; data-origin-width=&quot;1086&quot; data-origin-height=&quot;492&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이 페이지가 나오면! 잘 들어간것&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://everyday-spring.com/628&quot; target=&quot;_blank&quot; rel=&quot;noopener&amp;nbsp;noreferrer&quot;&gt;https://everyday-spring.com/628&lt;/a&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;위 글을 참고해서 초기 Jenkins 초기 설정을 한다&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;저 Administrator password를 모르겠다면&lt;br /&gt;&lt;b&gt;sudo cat /var/jenkins_home/secrets/initialAdminPassword&lt;/b&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;를 입력해 확인할 수 있다&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;Jenkins Plugin 설치&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;사람에게는 망각이라는 기능이 있다&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;3일동안 CI/CD 세팅만하느라 플러그인을 이것 저것 깔았는데&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;결론적으로 내가 새로 설치한거 다 까먹었다는 뜻&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;20181023012041_mokhoksy.jpg&quot; data-origin-width=&quot;589&quot; data-origin-height=&quot;584&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/cJNyPp/btsKuz4kksl/Cjsb4e4jSw6e8XOWpHKoMk/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/cJNyPp/btsKuz4kksl/Cjsb4e4jSw6e8XOWpHKoMk/img.jpg&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/cJNyPp/btsKuz4kksl/Cjsb4e4jSw6e8XOWpHKoMk/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FcJNyPp%2FbtsKuz4kksl%2FCjsb4e4jSw6e8XOWpHKoMk%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;300&quot; height=&quot;297&quot; data-filename=&quot;20181023012041_mokhoksy.jpg&quot; data-origin-width=&quot;589&quot; data-origin-height=&quot;584&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;Docker&amp;nbsp;Pipeline &lt;br /&gt;Docker&amp;nbsp;plugin &lt;br /&gt;GitHub&amp;nbsp;Branch&amp;nbsp;Source&amp;nbsp;Plugin &lt;br /&gt;Gradle&amp;nbsp;Plugin &lt;br /&gt;Pipeline &lt;br /&gt;Pipeline&amp;nbsp;Graph&amp;nbsp;View&amp;nbsp;Plugin &lt;br /&gt;Pipeline:&amp;nbsp;GitHub&amp;nbsp;Groovy&amp;nbsp;Libraries &lt;br /&gt;&lt;b&gt;Publish&amp;nbsp;Over&amp;nbsp;SSH&lt;/b&gt; &lt;br /&gt;SSH&amp;nbsp;Agent&amp;nbsp;Plugin &lt;br /&gt;SSH&amp;nbsp;server &lt;br /&gt;Workspace&amp;nbsp;Cleanup&amp;nbsp;Plugin&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;우선 여기 스킵하시고..&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;안된다면 이 중 설치되어 있지 않은... 플러그인을 설치해보시기 바랍니다...&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;화면 캡처 2024-11-02 195244.jpg&quot; data-origin-width=&quot;2598&quot; data-origin-height=&quot;968&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bkfBMl/btsKt80tnAT/gsraiik3AfkQNmc4qKadhK/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bkfBMl/btsKt80tnAT/gsraiik3AfkQNmc4qKadhK/img.jpg&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bkfBMl/btsKt80tnAT/gsraiik3AfkQNmc4qKadhK/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbkfBMl%2FbtsKt80tnAT%2Fgsraiik3AfkQNmc4qKadhK%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;2598&quot; height=&quot;968&quot; data-filename=&quot;화면 캡처 2024-11-02 195244.jpg&quot; data-origin-width=&quot;2598&quot; data-origin-height=&quot;968&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;화면 캡처 2024-11-02 195300.jpg&quot; data-origin-width=&quot;2802&quot; data-origin-height=&quot;1308&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/cHWrlF/btsKtWzdoJd/QyDydw27Nrqqk8Ly97GVIk/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/cHWrlF/btsKtWzdoJd/QyDydw27Nrqqk8Ly97GVIk/img.jpg&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/cHWrlF/btsKtWzdoJd/QyDydw27Nrqqk8Ly97GVIk/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FcHWrlF%2FbtsKtWzdoJd%2FQyDydw27Nrqqk8Ly97GVIk%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;2802&quot; height=&quot;1308&quot; data-filename=&quot;화면 캡처 2024-11-02 195300.jpg&quot; data-origin-width=&quot;2802&quot; data-origin-height=&quot;1308&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;플러그인은 Jenkins 관리 - Plugins - Available plugins 에서 설치가 가능하다&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;Jenkins Credentials 등록&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;CI/CD를 위해 세가지 Credentials을 등록한다&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;등록을 위해 필요한 정보들&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;Github&lt;br /&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;Github 계정 이름, token&amp;nbsp;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&amp;nbsp;dockerhub
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;dockerhub에 가입된 계정 ID, Password&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;aws
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;instance .pem 파일&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;934&quot; data-origin-height=&quot;378&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/sbsuS/btsKvDLF2r2/gPUAs7cL0FrIc202XkihZ1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/sbsuS/btsKvDLF2r2/gPUAs7cL0FrIc202XkihZ1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/sbsuS/btsKvDLF2r2/gPUAs7cL0FrIc202XkihZ1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FsbsuS%2FbtsKvDLF2r2%2FgPUAs7cL0FrIc202XkihZ1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;500&quot; height=&quot;202&quot; data-origin-width=&quot;934&quot; data-origin-height=&quot;378&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;Jenkins 관리 - credentials 화면에서 (global) 클릭&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;우측 상단에 파란색 + Add Credentials 버튼을 클릭해서 추가할 수 있다&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;화면 캡처 2024-11-02 200056.jpg&quot; data-origin-width=&quot;1554&quot; data-origin-height=&quot;1432&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/epJqHY/btsKuacYec6/86fMKbGACy8FaKNdvfj7wK/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/epJqHY/btsKuacYec6/86fMKbGACy8FaKNdvfj7wK/img.jpg&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/epJqHY/btsKuacYec6/86fMKbGACy8FaKNdvfj7wK/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FepJqHY%2FbtsKuacYec6%2F86fMKbGACy8FaKNdvfj7wK%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;500&quot; height=&quot;461&quot; data-filename=&quot;화면 캡처 2024-11-02 200056.jpg&quot; data-origin-width=&quot;1554&quot; data-origin-height=&quot;1432&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;Username&lt;/b&gt; - GitHub 계정명&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt; Password&lt;/b&gt; - GitHub에서 발급받은 token&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;letter-spacing: 0px;&quot;&gt;&lt;b&gt;ID&lt;/b&gt; - Jenkins 내부에서 사용할 이름&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;letter-spacing: 0px;&quot;&gt;세가지 항목을 입력하고 생성해준다&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;나는 ID를 github로 지정했다&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1406&quot; data-origin-height=&quot;1430&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/pqDt2/btsKuzJ0xdw/I3cHKKa3yzpO9d3JpHKpQ0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/pqDt2/btsKuzJ0xdw/I3cHKKa3yzpO9d3JpHKpQ0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/pqDt2/btsKuzJ0xdw/I3cHKKa3yzpO9d3JpHKpQ0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FpqDt2%2FbtsKuzJ0xdw%2FI3cHKKa3yzpO9d3JpHKpQ0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;500&quot; height=&quot;509&quot; data-origin-width=&quot;1406&quot; data-origin-height=&quot;1430&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;Username&lt;/b&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;- dockerhub 로그인 ID&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;Password&lt;/b&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;- dockerhub 로그인 Password&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;&lt;b&gt;ID&lt;/b&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;- Jenkins 내부에서 사용할 이름&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;세가지 항목을 입력하고 생성&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;화면 캡처 2024-11-02 200622.jpg&quot; data-origin-width=&quot;1278&quot; data-origin-height=&quot;1574&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bj1orL/btsKuAvp4SB/sG33KJVlnOaJtBtajnqi60/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bj1orL/btsKuAvp4SB/sG33KJVlnOaJtBtajnqi60/img.jpg&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bj1orL/btsKuAvp4SB/sG33KJVlnOaJtBtajnqi60/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fbj1orL%2FbtsKuAvp4SB%2FsG33KJVlnOaJtBtajnqi60%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;700&quot; height=&quot;862&quot; data-filename=&quot;화면 캡처 2024-11-02 200622.jpg&quot; data-origin-width=&quot;1278&quot; data-origin-height=&quot;1574&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;Kind를 SSH Username with private key로 변경&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;ID&lt;/b&gt; - Jenkins 내부에서 사용할 이름&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;Username&lt;/b&gt; - 서버에 로그인 할 수 있는 계정명 (EC2 ubuntu 기본세팅이면 ubuntu입력하면 된다)&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;Private Key&lt;/b&gt; - EC2 .pem 파일을 메모장으로 열어 전체 복사 붙여넣기&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;세가지 항목을 입력하고 생성&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이렇게 세개의 Credentials을 생성했다&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;Jenkins Pipeline CI/CD&lt;/h2&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;다운로드 (3).jpg&quot; data-origin-width=&quot;1280&quot; data-origin-height=&quot;595&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bfZyrm/btsKuxZLl6L/fixEKVKv0rCqZs0tUylLo1/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bfZyrm/btsKuxZLl6L/fixEKVKv0rCqZs0tUylLo1/img.jpg&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bfZyrm/btsKuxZLl6L/fixEKVKv0rCqZs0tUylLo1/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbfZyrm%2FbtsKuxZLl6L%2FfixEKVKv0rCqZs0tUylLo1%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1280&quot; height=&quot;595&quot; data-filename=&quot;다운로드 (3).jpg&quot; data-origin-width=&quot;1280&quot; data-origin-height=&quot;595&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #222222; text-align: start;&quot;&gt;새로운 아이템을&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;color: #222222; text-align: start;&quot;&gt;등록한다&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;다운로드 (1).jpg&quot; data-origin-width=&quot;1280&quot; data-origin-height=&quot;1299&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/luvYi/btsKueTW2IS/0uKohZJhQaEh9TvmoLFfpK/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/luvYi/btsKueTW2IS/0uKohZJhQaEh9TvmoLFfpK/img.jpg&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/luvYi/btsKueTW2IS/0uKohZJhQaEh9TvmoLFfpK/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FluvYi%2FbtsKueTW2IS%2F0uKohZJhQaEh9TvmoLFfpK%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;500&quot; height=&quot;507&quot; data-filename=&quot;다운로드 (1).jpg&quot; data-origin-width=&quot;1280&quot; data-origin-height=&quot;1299&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #222222; text-align: start;&quot;&gt;이름을 설정하고 pipeline을 선택&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;다운로드 (2).jpg&quot; data-origin-width=&quot;1280&quot; data-origin-height=&quot;1798&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/dF7HoS/btsKuTBslzk/2DCkdhtFVoCu2tHxcKmSu1/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/dF7HoS/btsKuTBslzk/2DCkdhtFVoCu2tHxcKmSu1/img.jpg&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/dF7HoS/btsKuTBslzk/2DCkdhtFVoCu2tHxcKmSu1/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FdF7HoS%2FbtsKuTBslzk%2F2DCkdhtFVoCu2tHxcKmSu1%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;400&quot; height=&quot;562&quot; data-filename=&quot;다운로드 (2).jpg&quot; data-origin-width=&quot;1280&quot; data-origin-height=&quot;1798&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;color: #222222; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;GitHub project (대상 repository 주소 입력)&lt;/p&gt;
&lt;p style=&quot;color: #222222; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;GitHub hook trigger for GITScm polling&lt;/p&gt;
&lt;p style=&quot;color: #222222; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;두 항목 체크&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;다운로드.png&quot; data-origin-width=&quot;1280&quot; data-origin-height=&quot;883&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/rXrF9/btsKtJ70cSY/pSMCHvEQ48aUVNAtOgRz71/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/rXrF9/btsKtJ70cSY/pSMCHvEQ48aUVNAtOgRz71/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/rXrF9/btsKtJ70cSY/pSMCHvEQ48aUVNAtOgRz71/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FrXrF9%2FbtsKtJ70cSY%2FpSMCHvEQ48aUVNAtOgRz71%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;500&quot; height=&quot;345&quot; data-filename=&quot;다운로드.png&quot; data-origin-width=&quot;1280&quot; data-origin-height=&quot;883&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;Pipeline을 작성한다!&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;pre id=&quot;code_1730546063138&quot; class=&quot;java&quot; data-ke-language=&quot;java&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;pipeline {
    agent any

    environment {
        DOCKER_IMAGE = 'user05/application' // 배포할 이미지 이름 지정
	    GIT = 'github' // credentialsId
	    CREDENTIALS_ID = 'aws' // credentialsId
        SERVER_IP = '12.34.567.890' // ec2 public IP

    }
    
    stages {
        stage('Clone Repository') {
            steps {
                git branch: 'main', // 배포할 branch명
                credentialsId: GIT,
                url: 'https://github.com/github_id/github_repository.git' // github repository 링크
            }
        }
        
        stage('Build') {
            steps {
                sh 'chmod +x gradlew'
                sh './gradlew clean build'
            }
        }
        
        stage('Bulid Docker') {
            steps {
                echo 'Bulid Docker'
                script {
                    dockerImage = docker.build(&quot;user05/application:latest&quot;)
                }
            }
            post {
                success {
                    echo 'Successfully Docker Build'
                }
                failure {
                    error 'This pipeline stops here...'
                }
            }
        }
        
        stage('Push Docker') {
            steps {
                echo 'Push Docker'
                script {
                    docker.withRegistry('', 'dockerhub-credentials') { // credentialsId
                        dockerImage.push('latest')
                    }
                }
            }
        }
        stage('Deploy to EC2') {
            steps {
                sshagent([CREDENTIALS_ID]) {
                    sh &quot;&quot;&quot;
                        ssh -o StrictHostKeyChecking=no ubuntu@${SERVER_IP} '
                        docker pull ${DOCKER_IMAGE}:latest &amp;amp;&amp;amp;
                        docker stop applicationName || true &amp;amp;&amp;amp; // 기존 컨테이너 중지
                        docker rm applicationName || true &amp;amp;&amp;amp; // 기존 컨테이너 삭제
                        docker run -d --name applicationName -p 9090:9090 \ // 새로운 컨테이너 배포
                        -e PROD_MASTER_JDBC_URL=환경변수를 입력해줌 \
                        -e PROD_MASTER_USERNAME=환경변수를 입력해줌 \
                        ${DOCKER_IMAGE}:latest '
                    &quot;&quot;&quot;
                }
            }
        }
	}
}&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;주석 및 한글로 작성한 부분을 필요에 맞게 수정한다&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1248&quot; data-origin-height=&quot;180&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/btzsIf/btsKtFET9jR/NlcHtt8PZICWdbmyDmKJj1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/btzsIf/btsKtFET9jR/NlcHtt8PZICWdbmyDmKJj1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/btzsIf/btsKtFET9jR/NlcHtt8PZICWdbmyDmKJj1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbtzsIf%2FbtsKtFET9jR%2FNlcHtt8PZICWdbmyDmKJj1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1248&quot; height=&quot;180&quot; data-origin-width=&quot;1248&quot; data-origin-height=&quot;180&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;EC2 public IP와 지정한 port에서 애플리케이션 서버가 정상 동작함을 확인했다!&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;해당 예시로 보면 12.34.567.890:9090&lt;/p&gt;</description>
      <category>TIL</category>
      <author>everyday-spring</author>
      <guid isPermaLink="true">https://subin0522.tistory.com/633</guid>
      <comments>https://subin0522.tistory.com/633#entry633comment</comments>
      <pubDate>Sun, 3 Nov 2024 16:00:51 +0900</pubDate>
    </item>
    <item>
      <title>AWS EC2에 Docker Jenkins 설치, Github Webhook 연동 (3) | Docker in Docker</title>
      <link>https://subin0522.tistory.com/632</link>
      <description>&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://everyday-spring.com/630&quot; target=&quot;_blank&quot; rel=&quot;noopener&amp;nbsp;noreferrer&quot;&gt;https://everyday-spring.com/630&lt;/a&gt;&lt;/p&gt;
&lt;figure id=&quot;og_1730538436128&quot; contenteditable=&quot;false&quot; data-ke-type=&quot;opengraph&quot; data-ke-align=&quot;alignCenter&quot; data-og-type=&quot;article&quot; data-og-title=&quot;AWS EC2에 Docker Jenkins 설치, Github Webhook 연동 (1) | 최종_최최종_찐막_찐찐막&quot; data-og-description=&quot;https://everyday-spring.com/628&amp;nbsp;Window PC에 Docker, jenkins 설치, GitHub 연동하기 (1) | 난 대학시절 삽질을 전공했단 사실시작에 앞서....Docker를... AWS EC2에 설치 했어야 하는데별 의심없이 개인 pc에 설치했다..&quot; data-og-host=&quot;everyday-spring.com&quot; data-og-source-url=&quot;https://everyday-spring.com/630&quot; data-og-url=&quot;https://everyday-spring.com/630&quot; data-og-image=&quot;https://scrap.kakaocdn.net/dn/cS9CWh/hyXsVeT97d/gHX5fkkO9gk46Uk6R1k7y0/img.jpg?width=400&amp;amp;height=400&amp;amp;face=156_68_263_185,https://scrap.kakaocdn.net/dn/beIRjy/hyXs2LShzI/5ibEGH3rg7NK8DenQ1uu3k/img.jpg?width=400&amp;amp;height=400&amp;amp;face=156_68_263_185,https://scrap.kakaocdn.net/dn/bDj7qp/hyXpoC6i6B/0uBfWHEg8raY1XRwWrFBb0/img.png?width=1142&amp;amp;height=1661&amp;amp;face=0_0_1142_1661&quot;&gt;&lt;a href=&quot;https://everyday-spring.com/630&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://everyday-spring.com/630&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://scrap.kakaocdn.net/dn/cS9CWh/hyXsVeT97d/gHX5fkkO9gk46Uk6R1k7y0/img.jpg?width=400&amp;amp;height=400&amp;amp;face=156_68_263_185,https://scrap.kakaocdn.net/dn/beIRjy/hyXs2LShzI/5ibEGH3rg7NK8DenQ1uu3k/img.jpg?width=400&amp;amp;height=400&amp;amp;face=156_68_263_185,https://scrap.kakaocdn.net/dn/bDj7qp/hyXpoC6i6B/0uBfWHEg8raY1XRwWrFBb0/img.png?width=1142&amp;amp;height=1661&amp;amp;face=0_0_1142_1661');&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;og-text&quot;&gt;
&lt;p class=&quot;og-title&quot; data-ke-size=&quot;size16&quot;&gt;AWS EC2에 Docker Jenkins 설치, Github Webhook 연동 (1) | 최종_최최종_찐막_찐찐막&lt;/p&gt;
&lt;p class=&quot;og-desc&quot; data-ke-size=&quot;size16&quot;&gt;https://everyday-spring.com/628&amp;nbsp;Window PC에 Docker, jenkins 설치, GitHub 연동하기 (1) | 난 대학시절 삽질을 전공했단 사실시작에 앞서....Docker를... AWS EC2에 설치 했어야 하는데별 의심없이 개인 pc에 설치했다..&lt;/p&gt;
&lt;p class=&quot;og-host&quot; data-ke-size=&quot;size16&quot;&gt;everyday-spring.com&lt;/p&gt;
&lt;/div&gt;
&lt;/a&gt;&lt;/figure&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://everyday-spring.com/631&quot; target=&quot;_blank&quot; rel=&quot;noopener&amp;nbsp;noreferrer&quot;&gt;https://everyday-spring.com/631&lt;/a&gt;&lt;/p&gt;
&lt;figure id=&quot;og_1730538498223&quot; contenteditable=&quot;false&quot; data-ke-type=&quot;opengraph&quot; data-ke-align=&quot;alignCenter&quot; data-og-type=&quot;article&quot; data-og-title=&quot;AWS EC2에 Docker Jenkins 설치, Github Webhook 연동 (2) | 윈도우 PuTTY EC2 연동하기 | EC2 메모리 스왑&quot; data-og-description=&quot;https://everyday-spring.com/630&amp;nbsp;AWS EC2에 Docker Jenkins 설치, Github Webhook 연동 (1) | 최종_최최종_찐막_찐찐막https://everyday-spring.com/628&amp;nbsp;Window PC에 Docker, jenkins 설치, GitHub 연동하기 (1) | 난 대학시절 삽질을 전&quot; data-og-host=&quot;everyday-spring.com&quot; data-og-source-url=&quot;https://everyday-spring.com/631&quot; data-og-url=&quot;https://everyday-spring.com/631&quot; data-og-image=&quot;https://scrap.kakaocdn.net/dn/MlVLR/hyXsYvWy2S/2VuohYehsGZpQrVYqEYWhK/img.png?width=210&amp;amp;height=210&amp;amp;face=0_0_210_210,https://scrap.kakaocdn.net/dn/bAdIaU/hyXs5oiB3T/AvxkMFWfST9kZRPOqBIR0K/img.png?width=210&amp;amp;height=210&amp;amp;face=0_0_210_210,https://scrap.kakaocdn.net/dn/bkT2PO/hyXpsFtgoD/KKyd5QzlPfIDnBG8w0Meak/img.jpg?width=682&amp;amp;height=680&amp;amp;face=0_0_682_680&quot;&gt;&lt;a href=&quot;https://everyday-spring.com/631&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://everyday-spring.com/631&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://scrap.kakaocdn.net/dn/MlVLR/hyXsYvWy2S/2VuohYehsGZpQrVYqEYWhK/img.png?width=210&amp;amp;height=210&amp;amp;face=0_0_210_210,https://scrap.kakaocdn.net/dn/bAdIaU/hyXs5oiB3T/AvxkMFWfST9kZRPOqBIR0K/img.png?width=210&amp;amp;height=210&amp;amp;face=0_0_210_210,https://scrap.kakaocdn.net/dn/bkT2PO/hyXpsFtgoD/KKyd5QzlPfIDnBG8w0Meak/img.jpg?width=682&amp;amp;height=680&amp;amp;face=0_0_682_680');&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;og-text&quot;&gt;
&lt;p class=&quot;og-title&quot; data-ke-size=&quot;size16&quot;&gt;AWS EC2에 Docker Jenkins 설치, Github Webhook 연동 (2) | 윈도우 PuTTY EC2 연동하기 | EC2 메모리 스왑&lt;/p&gt;
&lt;p class=&quot;og-desc&quot; data-ke-size=&quot;size16&quot;&gt;https://everyday-spring.com/630&amp;nbsp;AWS EC2에 Docker Jenkins 설치, Github Webhook 연동 (1) | 최종_최최종_찐막_찐찐막https://everyday-spring.com/628&amp;nbsp;Window PC에 Docker, jenkins 설치, GitHub 연동하기 (1) | 난 대학시절 삽질을 전&lt;/p&gt;
&lt;p class=&quot;og-host&quot; data-ke-size=&quot;size16&quot;&gt;everyday-spring.com&lt;/p&gt;
&lt;/div&gt;
&lt;/a&gt;&lt;/figure&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;지난 글에서 EC2 ubuntu Instance에 Docker, Jenkins를 설치할 준비를 모두 마쳤다&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;Docker 설치 가보자고!&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;EC2 ubuntu Instance Docker 설치&lt;/h2&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;화면 캡처 2024-11-02 172736.jpg&quot; data-origin-width=&quot;1234&quot; data-origin-height=&quot;1338&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/8QKea/btsKuxrVfSS/1LonsvRfxR1aQVOkRkSL30/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/8QKea/btsKuxrVfSS/1LonsvRfxR1aQVOkRkSL30/img.jpg&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/8QKea/btsKuxrVfSS/1LonsvRfxR1aQVOkRkSL30/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2F8QKea%2FbtsKuxrVfSS%2F1LonsvRfxR1aQVOkRkSL30%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;400&quot; height=&quot;434&quot; data-filename=&quot;화면 캡처 2024-11-02 172736.jpg&quot; data-origin-width=&quot;1234&quot; data-origin-height=&quot;1338&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;앞서 접속을 완료한 PuTTY에서 진행하면 된다&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;pre id=&quot;code_1730539220822&quot; class=&quot;java&quot; data-ke-language=&quot;java&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;sudo apt-get update&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;Ubuntu의 패키지 리스트를 최신 상태로 업데이트&lt;/p&gt;
&lt;pre id=&quot;code_1730539235552&quot; class=&quot;java&quot; data-ke-language=&quot;java&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;sudo apt-get install apt-transport-https ca-certificates curl software-properties-common&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;Ubuntu의 패키지 리스트를 최신 상태로 업데이트한다.&lt;/p&gt;
&lt;pre id=&quot;code_1730539243631&quot; class=&quot;java&quot; data-ke-language=&quot;java&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;Docker 저장소의 공식 GPG 키를 시스템에 추가&lt;/p&gt;
&lt;pre id=&quot;code_1730539252099&quot; class=&quot;java&quot; data-ke-language=&quot;java&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;sudo add-apt-repository &quot;deb [arch=amd64] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable&quot;&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;Docker의 공식 저장소를 시스템의 apt 소스 리스트에 추가&lt;/p&gt;
&lt;pre id=&quot;code_1730539259906&quot; class=&quot;java&quot; data-ke-language=&quot;java&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;sudo apt-get update&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;새로운 저장소를 추가한 후 패키지 인덱스를 다시 업데이트&lt;/p&gt;
&lt;pre id=&quot;code_1730539268980&quot; class=&quot;java&quot; data-ke-language=&quot;java&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;sudo apt-get install docker-ce docker-ce-cli containerd.io&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;Docker CE(커뮤니티 에디션)와 CLI 도구를 설치&lt;/p&gt;
&lt;pre id=&quot;code_1730539275738&quot; class=&quot;java&quot; data-ke-language=&quot;java&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;sudo systemctl start docker&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;Docker 서비스 실&lt;/p&gt;
&lt;pre id=&quot;code_1730539288233&quot; class=&quot;java&quot; data-ke-language=&quot;java&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;sudo systemctl enable docker&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;시스템 부팅 시 Docker가 자동으로 시작되도록 설정&lt;/p&gt;
&lt;pre id=&quot;code_1730539300503&quot; class=&quot;java&quot; data-ke-language=&quot;java&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;sudo usermod -aG docker ${USER}&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;sudo 없이 Docker 명령을 실행할 수 있도록 현재 사용자를 docker 그룹에 추가&lt;/p&gt;
&lt;pre id=&quot;code_1730539324023&quot; class=&quot;java&quot; data-ke-language=&quot;java&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;docker --version&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;설치된 Docker의 버전 출력&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;Docker not found가 아닌 버전에 대한 정보가 뜬다면 Docker 설치 완료!!&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;Docker Jenkins 설치, Jenkins Container 실행&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://hub.docker.com/r/jenkins/jenkins&quot; target=&quot;_blank&quot; rel=&quot;noopener&amp;nbsp;noreferrer&quot;&gt;https://hub.docker.com/r/jenkins/jenkins&lt;/a&gt;&lt;/p&gt;
&lt;figure id=&quot;og_1730540265908&quot; contenteditable=&quot;false&quot; data-ke-type=&quot;opengraph&quot; data-ke-align=&quot;alignCenter&quot; data-og-type=&quot;website&quot; data-og-title=&quot;https://hub.docker.com/r/jenkins/jenkins&quot; data-og-description=&quot;&quot; data-og-host=&quot;hub.docker.com&quot; data-og-source-url=&quot;https://hub.docker.com/r/jenkins/jenkins&quot; data-og-url=&quot;https://hub.docker.com/r/jenkins/jenkins&quot; data-og-image=&quot;https://scrap.kakaocdn.net/dn/cudAFn/hyXpxGNx9f/fS2vMUhVFSamTejSZVI240/img.png?width=3372&amp;amp;height=1896&amp;amp;face=0_0_3372_1896&quot;&gt;&lt;a href=&quot;https://hub.docker.com/r/jenkins/jenkins&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://hub.docker.com/r/jenkins/jenkins&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://scrap.kakaocdn.net/dn/cudAFn/hyXpxGNx9f/fS2vMUhVFSamTejSZVI240/img.png?width=3372&amp;amp;height=1896&amp;amp;face=0_0_3372_1896');&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;og-text&quot;&gt;
&lt;p class=&quot;og-title&quot; data-ke-size=&quot;size16&quot;&gt;https://hub.docker.com/r/jenkins/jenkins&lt;/p&gt;
&lt;p class=&quot;og-desc&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p class=&quot;og-host&quot; data-ke-size=&quot;size16&quot;&gt;hub.docker.com&lt;/p&gt;
&lt;/div&gt;
&lt;/a&gt;&lt;/figure&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;dockerhub에서 젠킨스 이미지를 받아오는 명령어를 확인할 수 있다&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;세팅이 되어있는 이미지 정보를 가져와서 컨테이너로 실행시킨다! 의 개념&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;pre id=&quot;code_1730540347129&quot; class=&quot;java&quot; data-ke-language=&quot;java&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;docker pull jenkins/jenkins&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;젠킨스 컨테이너 실행을 위한 이미지를 받아온다&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;잠깐 구조를 살펴보자면&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;EC2에 Docker(1)를 설치했고&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;Docker(1)에서 Jenkins 컨테이너를 실행시키고&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;실행된 Jenkins에서 Docker(1)에 애플리케이션을 배포함&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;-&amp;gt; 이 배포 과정에서 Docker 명령어를 사용하기 위해서 Jenkins에도 Docker(2)를 설치해준다!&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;+ Jenkins에서 Docker(1)에 접근하기 위해 Jenkins 컨테이너를 실행 시킬 때 소켓을 열어준다!&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;Docker(1) - Jenkins - Docker(2) 이런 구조고&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이를 Docker in Docker 라고 함!&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;images (1).jpg&quot; data-origin-width=&quot;259&quot; data-origin-height=&quot;194&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/KSYOi/btsKtrsWjIq/llj2qHUPiEgwzwD7DjOCp0/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/KSYOi/btsKtrsWjIq/llj2qHUPiEgwzwD7DjOCp0/img.jpg&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/KSYOi/btsKtrsWjIq/llj2qHUPiEgwzwD7DjOCp0/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FKSYOi%2FbtsKtrsWjIq%2Fllj2qHUPiEgwzwD7DjOCp0%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;259&quot; height=&quot;194&quot; data-filename=&quot;images (1).jpg&quot; data-origin-width=&quot;259&quot; data-origin-height=&quot;194&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;어쨌든 받아온 젠킨스 이미지를 실행시켜 보자 하하&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://github.com/jenkinsci/docker/blob/master/README.md&quot; target=&quot;_blank&quot; rel=&quot;noopener&amp;nbsp;noreferrer&quot;&gt;https://github.com/jenkinsci/docker/blob/master/README.md&lt;/a&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;공식사이트에 나와있는 명령어에 필요한 옵션을 몇개 추가한다&lt;/p&gt;
&lt;pre id=&quot;code_1730541031492&quot; class=&quot;java&quot; data-ke-language=&quot;java&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;docker run \
--name jenkins \
-p 8080:8080 \
-p 50000:50000 \
--restart=on-failure \
-v jenkins_home:/var/jenkins_home \
-v /var/run/docker.sock:/var/run/docker.sock \
-u root \
jenkins/jenkins:lts-jdk17&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;젠킨스 컨테이너 실행 명령어&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;--name
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;컨테이너 이름 지정&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;-p
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;포트설정&lt;/li&gt;
&lt;li&gt;애플리케이션이 동일하게 8080을 사용한다면 수정해줘야함&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;--restart=on-failure
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;컨테이너가 비정상 종료된 경우 자동으로 다시 시작하도록 설정&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;-v jenkins_home:/var/jenkins_home
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;/var/jenkins_home 경로에 Jenkins의 모든 데이터를 볼륨으로 저장, 이 볼륨으로 컨테이너 재실행 가능&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;-v /var/run/docker.sock:/var/run/docker.sock
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;Docker-in-Docker 방식으로 컨테이너 내부에서 다른 Docker 작업을 실행하기 위해 소켓 설정&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;pre id=&quot;code_1730541780816&quot; class=&quot;java&quot; data-ke-language=&quot;java&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;docker ps -a&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;명령어를 입력해 docker에서 실행중인 컨테이너를 확인할 수 있다&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;edited_화면 캡처 2024-11-02 190716.jpg&quot; data-origin-width=&quot;718&quot; data-origin-height=&quot;288&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/TSMXn/btsKtkAKPMd/bkaWWuZKkT1hNp1SGTPGUK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/TSMXn/btsKtkAKPMd/bkaWWuZKkT1hNp1SGTPGUK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/TSMXn/btsKtkAKPMd/bkaWWuZKkT1hNp1SGTPGUK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FTSMXn%2FbtsKtkAKPMd%2FbkaWWuZKkT1hNp1SGTPGUK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;718&quot; height=&quot;288&quot; data-filename=&quot;edited_화면 캡처 2024-11-02 190716.jpg&quot; data-origin-width=&quot;718&quot; data-origin-height=&quot;288&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;정상 실행 되었다!&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;Jenkins에 Docker 설치, Docker in Docker&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;우선 jenkins bash에 접속한다&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;pre id=&quot;code_1730542249343&quot; class=&quot;java&quot; data-ke-language=&quot;java&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;docker exec -it jenkins /bin/bash&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;jenkins 자리에는 지정한 컨테이너 이름이나&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;위 사진에 CONTANER_ID에 있는 값을 넣어주면 된다&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;edited_화면 캡처 2024-11-02 191454.jpg&quot; data-origin-width=&quot;834&quot; data-origin-height=&quot;120&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/lYVQi/btsKtV1hbKU/CXfGYZl9yIMuopwqbA2w90/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/lYVQi/btsKtV1hbKU/CXfGYZl9yIMuopwqbA2w90/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/lYVQi/btsKtV1hbKU/CXfGYZl9yIMuopwqbA2w90/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FlYVQi%2FbtsKtV1hbKU%2FCXfGYZl9yIMuopwqbA2w90%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;834&quot; height=&quot;120&quot; data-filename=&quot;edited_화면 캡처 2024-11-02 191454.jpg&quot; data-origin-width=&quot;834&quot; data-origin-height=&quot;120&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;jenkins 컨테이너의 root 계정 bash로 잘 접속되었다&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;pre id=&quot;code_1730543146381&quot; class=&quot;java&quot; data-ke-language=&quot;java&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;apt-get remove docker docker-engine docker.io containerd runc&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;기존에 설치된 Docker 및 관련 패키지들을 제거&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;설치된게 없다면 그냥 에러가 납니다 상관없으니 패스&lt;/p&gt;
&lt;pre id=&quot;code_1730543156501&quot; class=&quot;java&quot; data-ke-language=&quot;java&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;apt-get update&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;패키지 목록을 업데이트&lt;/p&gt;
&lt;pre id=&quot;code_1730543164593&quot; class=&quot;java&quot; data-ke-language=&quot;java&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;apt-get install ca-certificates curl gnupg lsb-release&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;Docker 저장소 추가를 위해 필요한 필수 패키지 설치&lt;/p&gt;
&lt;pre id=&quot;code_1730543171829&quot; class=&quot;java&quot; data-ke-language=&quot;java&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;mkdir -p /etc/apt/keyrings&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;Docker의 GPG 키를 저장할 디렉토리를 생성&lt;/p&gt;
&lt;pre id=&quot;code_1730543178304&quot; class=&quot;java&quot; data-ke-language=&quot;java&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;curl -fsSL https://download.docker.com/linux/debian/gpg -o /tmp/docker.gpg&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;Docker의 공식 GPG 키를 /tmp/docker.gpg에 다운로드&lt;/p&gt;
&lt;pre id=&quot;code_1730543187693&quot; class=&quot;java&quot; data-ke-language=&quot;java&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg /tmp/docker.gpg/etc/apt/keyrings/docker.gpg&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;/tmp/docker.gpg 파일을 /etc/apt/keyrings/docker.gpg로 변환하여 저장&lt;/p&gt;
&lt;pre id=&quot;code_1730543200892&quot; class=&quot;java&quot; data-ke-language=&quot;java&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;echo &quot;deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/debian $(lsb_release -cs) stable&quot; | tee /etc/apt/sources.list.d/docker.list &amp;gt; /dev/null&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;Docker의 공식 저장소를 apt 소스 목록에 추가&lt;/p&gt;
&lt;pre id=&quot;code_1730543212389&quot; class=&quot;java&quot; data-ke-language=&quot;java&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;apt-get update&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;새로 추가한 Docker 저장소의 패키지 정보를 업데이트&lt;/p&gt;
&lt;pre id=&quot;code_1730543221313&quot; class=&quot;java&quot; data-ke-language=&quot;java&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;apt-get install docker-ce docker-ce-cli containerd.io docker-compose-plugin&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;Docker 엔진과 관련된 필수 패키지들 설치&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이렇게하면 !! Docker in Docker 설치까지 완료!&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이제 Jenkins에 접근하여 프로젝트를 배포해봅시다!!&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;참고 자료&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://moon1z10.github.io/development/AWS-Ubuntu-Docker-Installation/&quot; target=&quot;_blank&quot; rel=&quot;noopener&amp;nbsp;noreferrer&quot;&gt;https://moon1z10.github.io/development/AWS-Ubuntu-Docker-Installation/&lt;/a&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://programmingiraffe.tistory.com/116&quot; target=&quot;_blank&quot; rel=&quot;noopener&amp;nbsp;noreferrer&quot;&gt;https://programmingiraffe.tistory.com/116&lt;/a&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;감사합니다&lt;/p&gt;</description>
      <category>TIL</category>
      <author>everyday-spring</author>
      <guid isPermaLink="true">https://subin0522.tistory.com/632</guid>
      <comments>https://subin0522.tistory.com/632#entry632comment</comments>
      <pubDate>Sat, 2 Nov 2024 19:31:54 +0900</pubDate>
    </item>
    <item>
      <title>AWS EC2에 Docker Jenkins 설치, Github Webhook 연동 (2) | 윈도우 PuTTY EC2 연동하기 | EC2 메모리 스왑</title>
      <link>https://subin0522.tistory.com/631</link>
      <description>&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://everyday-spring.com/630&quot; target=&quot;_blank&quot; rel=&quot;noopener&amp;nbsp;noreferrer&quot;&gt;https://everyday-spring.com/630&lt;/a&gt;&lt;/p&gt;
&lt;figure id=&quot;og_1730534169945&quot; contenteditable=&quot;false&quot; data-ke-type=&quot;opengraph&quot; data-ke-align=&quot;alignCenter&quot; data-og-type=&quot;article&quot; data-og-title=&quot;AWS EC2에 Docker Jenkins 설치, Github Webhook 연동 (1) | 최종_최최종_찐막_찐찐막&quot; data-og-description=&quot;https://everyday-spring.com/628&amp;nbsp;Window PC에 Docker, jenkins 설치, GitHub 연동하기 (1) | 난 대학시절 삽질을 전공했단 사실시작에 앞서....Docker를... AWS EC2에 설치 했어야 하는데별 의심없이 개인 pc에 설치했다..&quot; data-og-host=&quot;everyday-spring.com&quot; data-og-source-url=&quot;https://everyday-spring.com/630&quot; data-og-url=&quot;https://everyday-spring.com/630&quot; data-og-image=&quot;https://scrap.kakaocdn.net/dn/cS9CWh/hyXsVeT97d/gHX5fkkO9gk46Uk6R1k7y0/img.jpg?width=400&amp;amp;height=400&amp;amp;face=156_68_263_185,https://scrap.kakaocdn.net/dn/beIRjy/hyXs2LShzI/5ibEGH3rg7NK8DenQ1uu3k/img.jpg?width=400&amp;amp;height=400&amp;amp;face=156_68_263_185,https://scrap.kakaocdn.net/dn/bDj7qp/hyXpoC6i6B/0uBfWHEg8raY1XRwWrFBb0/img.png?width=1142&amp;amp;height=1661&amp;amp;face=0_0_1142_1661&quot;&gt;&lt;a href=&quot;https://everyday-spring.com/630&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://everyday-spring.com/630&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://scrap.kakaocdn.net/dn/cS9CWh/hyXsVeT97d/gHX5fkkO9gk46Uk6R1k7y0/img.jpg?width=400&amp;amp;height=400&amp;amp;face=156_68_263_185,https://scrap.kakaocdn.net/dn/beIRjy/hyXs2LShzI/5ibEGH3rg7NK8DenQ1uu3k/img.jpg?width=400&amp;amp;height=400&amp;amp;face=156_68_263_185,https://scrap.kakaocdn.net/dn/bDj7qp/hyXpoC6i6B/0uBfWHEg8raY1XRwWrFBb0/img.png?width=1142&amp;amp;height=1661&amp;amp;face=0_0_1142_1661');&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;og-text&quot;&gt;
&lt;p class=&quot;og-title&quot; data-ke-size=&quot;size16&quot;&gt;AWS EC2에 Docker Jenkins 설치, Github Webhook 연동 (1) | 최종_최최종_찐막_찐찐막&lt;/p&gt;
&lt;p class=&quot;og-desc&quot; data-ke-size=&quot;size16&quot;&gt;https://everyday-spring.com/628&amp;nbsp;Window PC에 Docker, jenkins 설치, GitHub 연동하기 (1) | 난 대학시절 삽질을 전공했단 사실시작에 앞서....Docker를... AWS EC2에 설치 했어야 하는데별 의심없이 개인 pc에 설치했다..&lt;/p&gt;
&lt;p class=&quot;og-host&quot; data-ke-size=&quot;size16&quot;&gt;everyday-spring.com&lt;/p&gt;
&lt;/div&gt;
&lt;/a&gt;&lt;/figure&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;지난글에서 CI/CD를 위한 AWS EC2 Intance 생성 및 설정을 완료했다&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이제 Docker와 Jenkins를 설치해보자&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;Window Putty 설치&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;윈도우 터미널을 이용하는 방법도 있다&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://wookim789.tistory.com/34&quot; target=&quot;_blank&quot; rel=&quot;noopener&amp;nbsp;noreferrer&quot;&gt;https://wookim789.tistory.com/34&lt;/a&gt;&lt;/p&gt;
&lt;figure id=&quot;og_1730534355476&quot; contenteditable=&quot;false&quot; data-ke-type=&quot;opengraph&quot; data-ke-align=&quot;alignCenter&quot; data-og-type=&quot;article&quot; data-og-title=&quot;윈도우 터미널을 이용해 EC2 접속하기 (5)&quot; data-og-description=&quot;자 지난 글에서 EC2 인스턴스를 띄워 보았다. 이제 내 로컬환경(내 pc)에서 aws의 ec2에 접속해보겠다. 방법은 여러가지이다. 이전에 설명한 SSH 방식으로 접근할 것인데, mac이라면 터미널에서 ssh 명&quot; data-og-host=&quot;wookim789.tistory.com&quot; data-og-source-url=&quot;https://wookim789.tistory.com/34&quot; data-og-url=&quot;https://wookim789.tistory.com/34&quot; data-og-image=&quot;https://scrap.kakaocdn.net/dn/z2Jqj/hyXpwA5aKT/XzB2SZvUDnx1IAHf82V7J1/img.png?width=783&amp;amp;height=682&amp;amp;face=0_0_783_682,https://scrap.kakaocdn.net/dn/Pc84i/hyXpqHFo5S/E7jJqRwvB1QlNwUKTJOc70/img.png?width=783&amp;amp;height=682&amp;amp;face=0_0_783_682,https://scrap.kakaocdn.net/dn/yHavL/hyXpuJ16zl/gDL27Kv1w7MLTlntMERguK/img.png?width=1271&amp;amp;height=937&amp;amp;face=0_0_1271_937&quot;&gt;&lt;a href=&quot;https://wookim789.tistory.com/34&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://wookim789.tistory.com/34&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://scrap.kakaocdn.net/dn/z2Jqj/hyXpwA5aKT/XzB2SZvUDnx1IAHf82V7J1/img.png?width=783&amp;amp;height=682&amp;amp;face=0_0_783_682,https://scrap.kakaocdn.net/dn/Pc84i/hyXpqHFo5S/E7jJqRwvB1QlNwUKTJOc70/img.png?width=783&amp;amp;height=682&amp;amp;face=0_0_783_682,https://scrap.kakaocdn.net/dn/yHavL/hyXpuJ16zl/gDL27Kv1w7MLTlntMERguK/img.png?width=1271&amp;amp;height=937&amp;amp;face=0_0_1271_937');&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;og-text&quot;&gt;
&lt;p class=&quot;og-title&quot; data-ke-size=&quot;size16&quot;&gt;윈도우 터미널을 이용해 EC2 접속하기 (5)&lt;/p&gt;
&lt;p class=&quot;og-desc&quot; data-ke-size=&quot;size16&quot;&gt;자 지난 글에서 EC2 인스턴스를 띄워 보았다. 이제 내 로컬환경(내 pc)에서 aws의 ec2에 접속해보겠다. 방법은 여러가지이다. 이전에 설명한 SSH 방식으로 접근할 것인데, mac이라면 터미널에서 ssh 명&lt;/p&gt;
&lt;p class=&quot;og-host&quot; data-ke-size=&quot;size16&quot;&gt;wookim789.tistory.com&lt;/p&gt;
&lt;/div&gt;
&lt;/a&gt;&lt;/figure&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;근데 블로그를 보면 알다시피..&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;김상중 아저씨가 울고있다..&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;나는 Putty를 사용했다 (편하게할래.. 쉽게할래.. 꼼수부릴래..)&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;먼저 Putty를 설치하자&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://www.chiark.greenend.org.uk/~sgtatham/putty/latest.html&quot; target=&quot;_blank&quot; rel=&quot;noopener&amp;nbsp;noreferrer&quot;&gt;https://www.chiark.greenend.org.uk/~sgtatham/putty/latest.html&lt;/a&gt;&lt;/p&gt;
&lt;figure id=&quot;og_1730534466680&quot; contenteditable=&quot;false&quot; data-ke-type=&quot;opengraph&quot; data-ke-align=&quot;alignCenter&quot; data-og-type=&quot;website&quot; data-og-title=&quot;Download PuTTY: latest release (0.81)&quot; data-og-description=&quot;This page contains download links for the latest released version of PuTTY. Currently this is 0.81, released on 2024-04-15. When new releases come out, this page will update to contain the latest, so this is a good page to bookmark or link to. Alternativel&quot; data-og-host=&quot;www.chiark.greenend.org.uk&quot; data-og-source-url=&quot;https://www.chiark.greenend.org.uk/~sgtatham/putty/latest.html&quot; data-og-url=&quot;https://www.chiark.greenend.org.uk/~sgtatham/putty/latest.html&quot; data-og-image=&quot;&quot;&gt;&lt;a href=&quot;https://www.chiark.greenend.org.uk/~sgtatham/putty/latest.html&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://www.chiark.greenend.org.uk/~sgtatham/putty/latest.html&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url();&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;og-text&quot;&gt;
&lt;p class=&quot;og-title&quot; data-ke-size=&quot;size16&quot;&gt;Download PuTTY: latest release (0.81)&lt;/p&gt;
&lt;p class=&quot;og-desc&quot; data-ke-size=&quot;size16&quot;&gt;This page contains download links for the latest released version of PuTTY. Currently this is 0.81, released on 2024-04-15. When new releases come out, this page will update to contain the latest, so this is a good page to bookmark or link to. Alternativel&lt;/p&gt;
&lt;p class=&quot;og-host&quot; data-ke-size=&quot;size16&quot;&gt;www.chiark.greenend.org.uk&lt;/p&gt;
&lt;/div&gt;
&lt;/a&gt;&lt;/figure&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;화면 캡처 2024-11-02 170142.jpg&quot; data-origin-width=&quot;1866&quot; data-origin-height=&quot;1069&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/cdmrRS/btsKtgkSRC5/vT9De1rdGYhwBK4bLttQo0/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/cdmrRS/btsKtgkSRC5/vT9De1rdGYhwBK4bLttQo0/img.jpg&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/cdmrRS/btsKtgkSRC5/vT9De1rdGYhwBK4bLttQo0/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FcdmrRS%2FbtsKtgkSRC5%2FvT9De1rdGYhwBK4bLttQo0%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1866&quot; height=&quot;1069&quot; data-filename=&quot;화면 캡처 2024-11-02 170142.jpg&quot; data-origin-width=&quot;1866&quot; data-origin-height=&quot;1069&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;292&quot; data-origin-height=&quot;336&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/0iSnk/btsKve6nyua/YlkCGPGkgnuft2HQbelHP1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/0iSnk/btsKve6nyua/YlkCGPGkgnuft2HQbelHP1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/0iSnk/btsKve6nyua/YlkCGPGkgnuft2HQbelHP1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2F0iSnk%2FbtsKve6nyua%2FYlkCGPGkgnuft2HQbelHP1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;250&quot; height=&quot;288&quot; data-origin-width=&quot;292&quot; data-origin-height=&quot;336&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;제일 상단의 링크를 클릭해 파일을 다운로드하고 기본설치 해준다&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;PuTTYgen 설정&lt;/h2&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;화면 캡처 2024-11-02 170739.jpg&quot; data-origin-width=&quot;1537&quot; data-origin-height=&quot;1452&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/vf94i/btsKtB3lcQ3/y6xZMNV843OA9EYmFgU5kk/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/vf94i/btsKtB3lcQ3/y6xZMNV843OA9EYmFgU5kk/img.jpg&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/vf94i/btsKtB3lcQ3/y6xZMNV843OA9EYmFgU5kk/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fvf94i%2FbtsKtB3lcQ3%2Fy6xZMNV843OA9EYmFgU5kk%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1537&quot; height=&quot;1452&quot; data-filename=&quot;화면 캡처 2024-11-02 170739.jpg&quot; data-origin-width=&quot;1537&quot; data-origin-height=&quot;1452&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;window 검색에 &lt;b&gt;puttygen&lt;/b&gt;을 검색하면 설치된 앱이 보인다&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;클릭해서 실행&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;스크린샷 2024-11-02 170904.png&quot; data-origin-width=&quot;894&quot; data-origin-height=&quot;675&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/nK72D/btsKuxyC9rk/rhBn4mTXuYtx44AXCwQS6K/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/nK72D/btsKuxyC9rk/rhBn4mTXuYtx44AXCwQS6K/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/nK72D/btsKuxyC9rk/rhBn4mTXuYtx44AXCwQS6K/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FnK72D%2FbtsKuxyC9rk%2FrhBn4mTXuYtx44AXCwQS6K%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;400&quot; height=&quot;302&quot; data-filename=&quot;스크린샷 2024-11-02 170904.png&quot; data-origin-width=&quot;894&quot; data-origin-height=&quot;675&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;Load&lt;/b&gt;를 클릭해 EC2 Instance를 생성할 때 발급받은 .pem을 불러온다&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;.pem 파일이 뭔지 모르면 제일 상단의 링크를 확인&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;edited_화면 캡처 2024-11-02 170938.jpg&quot; data-origin-width=&quot;1580&quot; data-origin-height=&quot;1022&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/cbzSSA/btsKuTOWxiY/7kCOVfF94JfCfRMNNMAWFk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/cbzSSA/btsKuTOWxiY/7kCOVfF94JfCfRMNNMAWFk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/cbzSSA/btsKuTOWxiY/7kCOVfF94JfCfRMNNMAWFk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FcbzSSA%2FbtsKuTOWxiY%2F7kCOVfF94JfCfRMNNMAWFk%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;500&quot; height=&quot;323&quot; data-filename=&quot;edited_화면 캡처 2024-11-02 170938.jpg&quot; data-origin-width=&quot;1580&quot; data-origin-height=&quot;1022&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;정확한 경로에 들어가도 파일이 안보인다면&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;당황하지말고 오른쪽 아래 파일 필터를 All Files로 변경해주자&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이제 보이게된 .pem 파일을 클릭하여 &lt;b&gt;열기&lt;/b&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;화면 캡처 2024-11-02 171018.jpg&quot; data-origin-width=&quot;510&quot; data-origin-height=&quot;310&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/CGE6E/btsKtrT1bc9/DlRwtUSzsYgzKw1ZxRDhSK/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/CGE6E/btsKtrT1bc9/DlRwtUSzsYgzKw1ZxRDhSK/img.jpg&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/CGE6E/btsKtrT1bc9/DlRwtUSzsYgzKw1ZxRDhSK/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FCGE6E%2FbtsKtrT1bc9%2FDlRwtUSzsYgzKw1ZxRDhSK%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;300&quot; height=&quot;182&quot; data-filename=&quot;화면 캡처 2024-11-02 171018.jpg&quot; data-origin-width=&quot;510&quot; data-origin-height=&quot;310&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;확인&lt;/b&gt;을 누르면&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;화면 캡처 2024-11-02 171059.jpg&quot; data-origin-width=&quot;901&quot; data-origin-height=&quot;674&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/ckK0R2/btsKvfqFG9a/yPTbe2Zb7uGwQmbtnbcRAK/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/ckK0R2/btsKvfqFG9a/yPTbe2Zb7uGwQmbtnbcRAK/img.jpg&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/ckK0R2/btsKvfqFG9a/yPTbe2Zb7uGwQmbtnbcRAK/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FckK0R2%2FbtsKvfqFG9a%2FyPTbe2Zb7uGwQmbtnbcRAK%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;500&quot; height=&quot;374&quot; data-filename=&quot;화면 캡처 2024-11-02 171059.jpg&quot; data-origin-width=&quot;901&quot; data-origin-height=&quot;674&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;.pem 파일이 잘 Load 됐다&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이제 &lt;b&gt;Save private key&lt;/b&gt; 버튼을 눌러 원하는 곳에 저장하자&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;여기서 저장되는 ppk 파일을 사용해서 Putty로 EC2에 접근할 수 있다&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;화면 캡처 2024-11-02 171112.jpg&quot; data-origin-width=&quot;446&quot; data-origin-height=&quot;244&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/SODNU/btsKtNbo0kZ/7j4LzWFF0NsE4ZsIlxtUTk/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/SODNU/btsKtNbo0kZ/7j4LzWFF0NsE4ZsIlxtUTk/img.jpg&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/SODNU/btsKtNbo0kZ/7j4LzWFF0NsE4ZsIlxtUTk/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FSODNU%2FbtsKtNbo0kZ%2F7j4LzWFF0NsE4ZsIlxtUTk%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;200&quot; height=&quot;109&quot; data-filename=&quot;화면 캡처 2024-11-02 171112.jpg&quot; data-origin-width=&quot;446&quot; data-origin-height=&quot;244&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;예&lt;/b&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이제 PuTTYgen에서 필요한 설정은 끝!&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;EC2 PuTTY 연결&lt;/h2&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;화면 캡처 2024-11-02 171953.jpg&quot; data-origin-width=&quot;1390&quot; data-origin-height=&quot;1310&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/BBose/btsKtMXPxO1/PLhF6lZ4Ysujuh4kVDpyzK/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/BBose/btsKtMXPxO1/PLhF6lZ4Ysujuh4kVDpyzK/img.jpg&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/BBose/btsKtMXPxO1/PLhF6lZ4Ysujuh4kVDpyzK/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FBBose%2FbtsKtMXPxO1%2FPLhF6lZ4Ysujuh4kVDpyzK%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;500&quot; height=&quot;471&quot; data-filename=&quot;화면 캡처 2024-11-02 171953.jpg&quot; data-origin-width=&quot;1390&quot; data-origin-height=&quot;1310&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;PuTTY를 검색해서 설치된 앱을 열어준다&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;연결을 위해서는 세가지 설정을 해준다&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;- ppk 파일 등록&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;- 터미널 글씨 크기 설정 (선택)&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;- IP 정보 입력&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;화면 캡처 2024-11-02 172228.jpg&quot; data-origin-width=&quot;682&quot; data-origin-height=&quot;680&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/pQRbj/btsKuvVjCaj/8GJbeBiVvhkCnSFXScxB1K/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/pQRbj/btsKuvVjCaj/8GJbeBiVvhkCnSFXScxB1K/img.jpg&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/pQRbj/btsKuvVjCaj/8GJbeBiVvhkCnSFXScxB1K/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FpQRbj%2FbtsKuvVjCaj%2F8GJbeBiVvhkCnSFXScxB1K%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;500&quot; height=&quot;499&quot; data-filename=&quot;화면 캡처 2024-11-02 172228.jpg&quot; data-origin-width=&quot;682&quot; data-origin-height=&quot;680&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;PuTTY에서 생성한 .ppk파일을 등록해준다&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;Connection - SSH - Auth - Credentials&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;Private key file for authentication:&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;화면 캡처 2024-11-02 172256.jpg&quot; data-origin-width=&quot;678&quot; data-origin-height=&quot;676&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/q89Ni/btsKvfc9E0z/UTYQ4BtUsx2j36PJ4azQ61/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/q89Ni/btsKvfc9E0z/UTYQ4BtUsx2j36PJ4azQ61/img.jpg&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/q89Ni/btsKvfc9E0z/UTYQ4BtUsx2j36PJ4azQ61/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fq89Ni%2FbtsKvfc9E0z%2FUTYQ4BtUsx2j36PJ4azQ61%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;500&quot; height=&quot;499&quot; data-filename=&quot;화면 캡처 2024-11-02 172256.jpg&quot; data-origin-width=&quot;678&quot; data-origin-height=&quot;676&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;PuTTY 글씨 크기 설정 (선택)&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;Window - Appearance 에서 글씨 크기를 변경할 수 있다&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;(나중에 연결된 터미널에서 우클릭 Change Sttings 에서도 변경할 수 있다)&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;화면 캡처 2024-11-02 172432.jpg&quot; data-origin-width=&quot;682&quot; data-origin-height=&quot;682&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/LUoRY/btsKvaiFk7c/ppmSpgKIbuCr8kQqo808R0/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/LUoRY/btsKvaiFk7c/ppmSpgKIbuCr8kQqo808R0/img.jpg&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/LUoRY/btsKvaiFk7c/ppmSpgKIbuCr8kQqo808R0/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FLUoRY%2FbtsKvaiFk7c%2FppmSpgKIbuCr8kQqo808R0%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;500&quot; height=&quot;500&quot; data-filename=&quot;화면 캡처 2024-11-02 172432.jpg&quot; data-origin-width=&quot;682&quot; data-origin-height=&quot;682&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;Session 탭으로 돌아가&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;Host Name 에 EC2 Instance의 IP를 입력&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;Saved Sessions에 원하는 이름을 입력하고 Save를 눌러 저장해주면&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;하단 Default Settings 아래에 세션 연결 정보가 저장된다&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;아래에 추가된 session을 더블클릭하면 연결이 된다&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;(고정 IP가 아니라면 저장된 세션 연결 정보를 클릭해 Load 한 후&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;새로 생성된 public IP를 입력하고 다시 저장해준다)&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;화면 캡처 2024-11-02 172548.jpg&quot; data-origin-width=&quot;1175&quot; data-origin-height=&quot;700&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/caattd/btsKuzpFksf/GNBIMynBaociNqeB1DEbJ0/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/caattd/btsKuzpFksf/GNBIMynBaociNqeB1DEbJ0/img.jpg&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/caattd/btsKuzpFksf/GNBIMynBaociNqeB1DEbJ0/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fcaattd%2FbtsKuzpFksf%2FGNBIMynBaociNqeB1DEbJ0%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;400&quot; height=&quot;238&quot; data-filename=&quot;화면 캡처 2024-11-02 172548.jpg&quot; data-origin-width=&quot;1175&quot; data-origin-height=&quot;700&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;연결이 정상적으로 되었다면 사진처럼 login as 라고 뜬다&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;EC2 ubuntu 로 생성했다면 기본계정인 ubuntu를 입력한다&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;화면 캡처 2024-11-02 172736.jpg&quot; data-origin-width=&quot;1234&quot; data-origin-height=&quot;1338&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/eoF9rH/btsKtP1ab5M/eyoMNCSJU2YXTu4AAwkKI0/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/eoF9rH/btsKtP1ab5M/eyoMNCSJU2YXTu4AAwkKI0/img.jpg&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/eoF9rH/btsKtP1ab5M/eyoMNCSJU2YXTu4AAwkKI0/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FeoF9rH%2FbtsKtP1ab5M%2FeyoMNCSJU2YXTu4AAwkKI0%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;500&quot; height=&quot;542&quot; data-filename=&quot;화면 캡처 2024-11-02 172736.jpg&quot; data-origin-width=&quot;1234&quot; data-origin-height=&quot;1338&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;정상적으로 연결되었다&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;윈도우에서 PuTTY를 이용하여 EC2 접속성공!!&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;EC2 ubuntu 메모리 스왑&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;EC2 인스턴스1 - Jenkins Server&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;EC2 인스턴스2 - Application Server&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;사실은 이렇게 따로 구성하는게 더 좋은 방법일 것 같은데&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;1. Docker, Jenkins를 아예 처음 접해봐서 EC2에 바로 Jenkins를 설치 해도 된다는걸 몰랐음&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;2. EC2가 늘어날 경우 비용 부담이 증가함&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;등의 이유로 이 글 시리즈에서는 하나의 인스턴스에서 모두 해결하게 되었다&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그래서 추가적으로 메모리 스왑을 진행했다&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;위에서 접속한 EC2 ubuntu server에서 순서대로 입력하면 된다&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;pre id=&quot;code_1730537318814&quot; class=&quot;java&quot; data-ke-language=&quot;java&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;sudo dd if=/dev/zero of=/swapfile bs=1M count=2048&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;0으로 채워진 2GB 크기의 스왑 파일을 생성&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;(sudo는 관리자 권한으로 강제 실행의 느낌)&lt;/p&gt;
&lt;pre id=&quot;code_1730537327566&quot; class=&quot;java&quot; data-ke-language=&quot;java&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;sudo chmod 600 /swapfile&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;스왑 파일의 읽기 및 쓰기 권한을 소유자만 가지도록 설정&lt;/p&gt;
&lt;pre id=&quot;code_1730537337706&quot; class=&quot;java&quot; data-ke-language=&quot;java&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;sudo mkswap /swapfile&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;파일을 스왑 영역으로 초기화&lt;/p&gt;
&lt;pre id=&quot;code_1730537347613&quot; class=&quot;java&quot; data-ke-language=&quot;java&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;sudo mkswap /swapfile&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;생성한 스왑 파일을 활성화하여 즉시 사용 가능한 스왑 공간으로 추가&lt;/p&gt;
&lt;pre id=&quot;code_1730537363062&quot; class=&quot;java&quot; data-ke-language=&quot;java&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;sudo swapon -s&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;현재 활성화된 스왑 영역의 상태를 확인&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1366&quot; data-origin-height=&quot;62&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/NnZED/btsKvn9UJdr/3PoKXakPnTtpghE4EVqVxK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/NnZED/btsKvn9UJdr/3PoKXakPnTtpghE4EVqVxK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/NnZED/btsKvn9UJdr/3PoKXakPnTtpghE4EVqVxK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FNnZED%2FbtsKvn9UJdr%2F3PoKXakPnTtpghE4EVqVxK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1366&quot; height=&quot;62&quot; data-origin-width=&quot;1366&quot; data-origin-height=&quot;62&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;pre id=&quot;code_1730537371412&quot; class=&quot;java&quot; data-ke-language=&quot;java&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;sudo vi /etc/fstab&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;스왑 파일을 영구적으로 등록하기 위해 fstab 파일을 편집한다&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;(vi가 편집기 명령어)&lt;/p&gt;
&lt;pre id=&quot;code_1730537393115&quot; class=&quot;java&quot; data-ke-language=&quot;java&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;/swapfile swap swap defaults 0 0&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1264&quot; data-origin-height=&quot;254&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/cIedME/btsKvAnQbWE/ZKaokGx012VCjisyqVVTBk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/cIedME/btsKvAnQbWE/ZKaokGx012VCjisyqVVTBk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/cIedME/btsKvAnQbWE/ZKaokGx012VCjisyqVVTBk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FcIedME%2FbtsKvAnQbWE%2FZKaokGx012VCjisyqVVTBk%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1264&quot; height=&quot;254&quot; data-origin-width=&quot;1264&quot; data-origin-height=&quot;254&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;파일 하단에 입력해준다&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;vi를 처음접한 사람을 위한 간략한 설명...&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;화살표를 이용해 입력을 원하는 곳까지 이동&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;키보드에서 i를 누름 -&amp;gt; Insert모드로 변경됩니다 (하단에 insert라고 뜸)&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;위쪽의 넣어야 하는 문구를 복사했다면 터미널 화면상에서 우클릭을 합니다 (붙여넣기가 자동으로 됨)&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;키보드의 ESC 버튼을 누름 -&amp;gt; Insert모드 종료&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;:wq 입력하고 엔터 -&amp;gt; 화면 가장 하단에 입력됨, 수정된 내용을 write 하고 quit 종료하겠다는 의미&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;잘못수정했다면 :q!를 입력하고 엔터 -&amp;gt; 수정내용을 저장하지 않고 강제로 종료 하겠다는 의미&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;여기까지 Docker, Jenkins를 위한 사전 준비가 찐찐 끝입니다&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;다음글에서 Docker와 Jenkins 설치까지 진행해보도록 합시다!&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;e27878b2d7c30103f76bfb73833ffaab9f17e489affba0627eb1eb39695f93dd.png&quot; data-origin-width=&quot;210&quot; data-origin-height=&quot;210&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/wFPpf/btsKuyYDStb/M3GCxiYhkYvtpjfwBrNi3K/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/wFPpf/btsKuyYDStb/M3GCxiYhkYvtpjfwBrNi3K/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/wFPpf/btsKuyYDStb/M3GCxiYhkYvtpjfwBrNi3K/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FwFPpf%2FbtsKuyYDStb%2FM3GCxiYhkYvtpjfwBrNi3K%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;210&quot; height=&quot;210&quot; data-filename=&quot;e27878b2d7c30103f76bfb73833ffaab9f17e489affba0627eb1eb39695f93dd.png&quot; data-origin-width=&quot;210&quot; data-origin-height=&quot;210&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;참고블로그&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://velog.io/@rkdalstn7221/EC2-메모리-부족-현상을-스왑-파일을-사용해서-해결해보기&quot; target=&quot;_blank&quot; rel=&quot;noopener&amp;nbsp;noreferrer&quot;&gt;https://velog.io/@rkdalstn7221/EC2-메모리-부족-현상을-스왑-파일을-사용해서-해결해보기&lt;/a&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://velog.io/@heejung/AWS-EC2에-PuTTY로-접속하기&quot; target=&quot;_blank&quot; rel=&quot;noopener&amp;nbsp;noreferrer&quot;&gt;https://velog.io/@heejung/AWS-EC2에-PuTTY로-접속하기&lt;/a&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;감사합니다&lt;/p&gt;</description>
      <category>TIL</category>
      <author>everyday-spring</author>
      <guid isPermaLink="true">https://subin0522.tistory.com/631</guid>
      <comments>https://subin0522.tistory.com/631#entry631comment</comments>
      <pubDate>Sat, 2 Nov 2024 18:01:02 +0900</pubDate>
    </item>
    <item>
      <title>AWS EC2에 Docker Jenkins 설치, Github Webhook 연동 (1) | 최종_최최종_찐막_찐찐막</title>
      <link>https://subin0522.tistory.com/630</link>
      <description>&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://everyday-spring.com/628&quot; target=&quot;_blank&quot; rel=&quot;noopener&amp;nbsp;noreferrer&quot;&gt;https://everyday-spring.com/628&lt;/a&gt;&lt;/p&gt;
&lt;figure id=&quot;og_1730225445534&quot; contenteditable=&quot;false&quot; data-ke-type=&quot;opengraph&quot; data-ke-align=&quot;alignCenter&quot; data-og-type=&quot;article&quot; data-og-title=&quot;Window PC에 Docker, jenkins 설치, GitHub 연동하기 (1) | 난 대학시절 삽질을 전공했단 사실&quot; data-og-description=&quot;시작에 앞서....Docker를... AWS EC2에 설치 했어야 하는데별 의심없이 개인 pc에 설치했다...잘못된 방향으로 핸들이 고장난 에잇톤트럭마냥 달려서 하루를 낭비했다이것은.. 그 기록....&amp;nbsp;&amp;nbsp;Docker 설치h&quot; data-og-host=&quot;everyday-spring.com&quot; data-og-source-url=&quot;https://everyday-spring.com/628&quot; data-og-url=&quot;https://everyday-spring.com/628&quot; data-og-image=&quot;https://scrap.kakaocdn.net/dn/cMbbze/hyXpD7i4XQ/RuMoQnqPGC4kk9LKJDzN31/img.jpg?width=800&amp;amp;height=806&amp;amp;face=0_0_800_806,https://scrap.kakaocdn.net/dn/cWuY9Z/hyXpyx8bie/xrA2MLHAm9zOxBkQoFVUOk/img.jpg?width=800&amp;amp;height=806&amp;amp;face=0_0_800_806,https://scrap.kakaocdn.net/dn/cmpkh8/hyXpoI4ar4/pIOLcNjb1ixZhgp9z2yCx1/img.png?width=3000&amp;amp;height=1256&amp;amp;face=0_0_3000_1256&quot;&gt;&lt;a href=&quot;https://everyday-spring.com/628&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://everyday-spring.com/628&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://scrap.kakaocdn.net/dn/cMbbze/hyXpD7i4XQ/RuMoQnqPGC4kk9LKJDzN31/img.jpg?width=800&amp;amp;height=806&amp;amp;face=0_0_800_806,https://scrap.kakaocdn.net/dn/cWuY9Z/hyXpyx8bie/xrA2MLHAm9zOxBkQoFVUOk/img.jpg?width=800&amp;amp;height=806&amp;amp;face=0_0_800_806,https://scrap.kakaocdn.net/dn/cmpkh8/hyXpoI4ar4/pIOLcNjb1ixZhgp9z2yCx1/img.png?width=3000&amp;amp;height=1256&amp;amp;face=0_0_3000_1256');&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;og-text&quot;&gt;
&lt;p class=&quot;og-title&quot; data-ke-size=&quot;size16&quot;&gt;Window PC에 Docker, jenkins 설치, GitHub 연동하기 (1) | 난 대학시절 삽질을 전공했단 사실&lt;/p&gt;
&lt;p class=&quot;og-desc&quot; data-ke-size=&quot;size16&quot;&gt;시작에 앞서....Docker를... AWS EC2에 설치 했어야 하는데별 의심없이 개인 pc에 설치했다...잘못된 방향으로 핸들이 고장난 에잇톤트럭마냥 달려서 하루를 낭비했다이것은.. 그 기록....&amp;nbsp;&amp;nbsp;Docker 설치h&lt;/p&gt;
&lt;p class=&quot;og-host&quot; data-ke-size=&quot;size16&quot;&gt;everyday-spring.com&lt;/p&gt;
&lt;/div&gt;
&lt;/a&gt;&lt;/figure&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://everyday-spring.com/629&quot; target=&quot;_blank&quot; rel=&quot;noopener&amp;nbsp;noreferrer&quot;&gt;https://everyday-spring.com/629&lt;/a&gt;&lt;/p&gt;
&lt;figure id=&quot;og_1730225452162&quot; contenteditable=&quot;false&quot; data-ke-type=&quot;opengraph&quot; data-ke-align=&quot;alignCenter&quot; data-og-type=&quot;article&quot; data-og-title=&quot;Window PC에 Docker, jenkins 설치, GitHub 연동하기 (2) | 난 삽질로 유학까지 다녀왔단 사실&quot; data-og-description=&quot;https://everyday-spring.com/628&amp;nbsp;Window PC에 Docker, jenkins 설치, GitHub 연동하기 (1) | 난 대학시절 삽질을 전공했단 사실시작에 앞서....Docker를... AWS EC2에 설치 했어야 하는데별 의심없이 개인 pc에 설치했다..&quot; data-og-host=&quot;everyday-spring.com&quot; data-og-source-url=&quot;https://everyday-spring.com/629&quot; data-og-url=&quot;https://everyday-spring.com/629&quot; data-og-image=&quot;https://scrap.kakaocdn.net/dn/E3LKV/hyXpputeJh/JD5lR9FFdg4sd8ysUxVgpK/img.png?width=800&amp;amp;height=73&amp;amp;face=0_0_800_73,https://scrap.kakaocdn.net/dn/dqN3wG/hyXppBdF4M/XLJDlPmks4qTKuEnuYpd31/img.png?width=800&amp;amp;height=73&amp;amp;face=0_0_800_73,https://scrap.kakaocdn.net/dn/beZhNh/hyXpsxVkTV/UaEtGkf0KGEi0nzglSECs0/img.png?width=3540&amp;amp;height=1267&amp;amp;face=0_0_3540_1267&quot;&gt;&lt;a href=&quot;https://everyday-spring.com/629&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://everyday-spring.com/629&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://scrap.kakaocdn.net/dn/E3LKV/hyXpputeJh/JD5lR9FFdg4sd8ysUxVgpK/img.png?width=800&amp;amp;height=73&amp;amp;face=0_0_800_73,https://scrap.kakaocdn.net/dn/dqN3wG/hyXppBdF4M/XLJDlPmks4qTKuEnuYpd31/img.png?width=800&amp;amp;height=73&amp;amp;face=0_0_800_73,https://scrap.kakaocdn.net/dn/beZhNh/hyXpsxVkTV/UaEtGkf0KGEi0nzglSECs0/img.png?width=3540&amp;amp;height=1267&amp;amp;face=0_0_3540_1267');&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;og-text&quot;&gt;
&lt;p class=&quot;og-title&quot; data-ke-size=&quot;size16&quot;&gt;Window PC에 Docker, jenkins 설치, GitHub 연동하기 (2) | 난 삽질로 유학까지 다녀왔단 사실&lt;/p&gt;
&lt;p class=&quot;og-desc&quot; data-ke-size=&quot;size16&quot;&gt;https://everyday-spring.com/628&amp;nbsp;Window PC에 Docker, jenkins 설치, GitHub 연동하기 (1) | 난 대학시절 삽질을 전공했단 사실시작에 앞서....Docker를... AWS EC2에 설치 했어야 하는데별 의심없이 개인 pc에 설치했다..&lt;/p&gt;
&lt;p class=&quot;og-host&quot; data-ke-size=&quot;size16&quot;&gt;everyday-spring.com&lt;/p&gt;
&lt;/div&gt;
&lt;/a&gt;&lt;/figure&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;지난 글에서 로컬 윈도우 pc에 Docker와 Jenkins를 설치하여 테스트를 해보았다&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이제 EC2에서 다시 시작해보자&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;다운로드.jpg&quot; data-origin-width=&quot;400&quot; data-origin-height=&quot;400&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/LKfYt/btsKpl5IFdC/wLk4s9tQNVOPG6WNtoTjI1/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/LKfYt/btsKpl5IFdC/wLk4s9tQNVOPG6WNtoTjI1/img.jpg&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/LKfYt/btsKpl5IFdC/wLk4s9tQNVOPG6WNtoTjI1/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FLKfYt%2FbtsKpl5IFdC%2FwLk4s9tQNVOPG6WNtoTjI1%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;400&quot; height=&quot;400&quot; data-filename=&quot;다운로드.jpg&quot; data-origin-width=&quot;400&quot; data-origin-height=&quot;400&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;&amp;nbsp;&lt;/h2&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;AWS EC2 Instance 생성&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;화면 캡처 2024-10-30 033114.jpg&quot; data-origin-width=&quot;1456&quot; data-origin-height=&quot;1128&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/pyeR8/btsKuIGPSty/570aLvot1Ol9GweDczEZok/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/pyeR8/btsKuIGPSty/570aLvot1Ol9GweDczEZok/img.jpg&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/pyeR8/btsKuIGPSty/570aLvot1Ol9GweDczEZok/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FpyeR8%2FbtsKuIGPSty%2F570aLvot1Ol9GweDczEZok%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;500&quot; height=&quot;387&quot; data-filename=&quot;화면 캡처 2024-10-30 033114.jpg&quot; data-origin-width=&quot;1456&quot; data-origin-height=&quot;1128&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;EC2 권한이 있는 IAM 계정으로 로그인한다&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;화면 캡처 2024-10-30 033213.jpg&quot; data-origin-width=&quot;1722&quot; data-origin-height=&quot;1120&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/pjERx/btsKucItXWE/NukWR3pARKmib7X6qIMi2k/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/pjERx/btsKucItXWE/NukWR3pARKmib7X6qIMi2k/img.jpg&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/pjERx/btsKucItXWE/NukWR3pARKmib7X6qIMi2k/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FpjERx%2FbtsKucItXWE%2FNukWR3pARKmib7X6qIMi2k%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;500&quot; height=&quot;325&quot; data-filename=&quot;화면 캡처 2024-10-30 033213.jpg&quot; data-origin-width=&quot;1722&quot; data-origin-height=&quot;1120&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;EC2 서비스를 검색해서 들어간다&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;화면 캡처 2024-10-30 033325.jpg&quot; data-origin-width=&quot;1914&quot; data-origin-height=&quot;1269&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/cf8Tdj/btsKuU1kRm3/482m3ujL1ZPZ8w35klcecK/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/cf8Tdj/btsKuU1kRm3/482m3ujL1ZPZ8w35klcecK/img.jpg&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/cf8Tdj/btsKuU1kRm3/482m3ujL1ZPZ8w35klcecK/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fcf8Tdj%2FbtsKuU1kRm3%2F482m3ujL1ZPZ8w35klcecK%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;500&quot; height=&quot;332&quot; data-filename=&quot;화면 캡처 2024-10-30 033325.jpg&quot; data-origin-width=&quot;1914&quot; data-origin-height=&quot;1269&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;EC2 메인보드&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;지역을 서울로 설정하고 왼쪽 네비게이션의 Instances로 이동한다&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;서울 리전을 사용해야 더 빠른 연결과 비용절감을 할 수 있다&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;화면 캡처 2024-10-30 033616.jpg&quot; data-origin-width=&quot;1902&quot; data-origin-height=&quot;700&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/b4viwQ/btsKtVGX0OI/PbRKemEwop23InKORWMXhk/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/b4viwQ/btsKtVGX0OI/PbRKemEwop23InKORWMXhk/img.jpg&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/b4viwQ/btsKtVGX0OI/PbRKemEwop23InKORWMXhk/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fb4viwQ%2FbtsKtVGX0OI%2FPbRKemEwop23InKORWMXhk%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1902&quot; height=&quot;700&quot; data-filename=&quot;화면 캡처 2024-10-30 033616.jpg&quot; data-origin-width=&quot;1902&quot; data-origin-height=&quot;700&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;Launch instances를 클릭해 새로운 인스턴스를 생성할 수 있다&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;스크린샷 2024-10-30 033626.png&quot; data-origin-width=&quot;1142&quot; data-origin-height=&quot;1661&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/JZ9gs/btsKtqOiPEV/RKkPMHiUvShTVWkzkH2aGk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/JZ9gs/btsKtqOiPEV/RKkPMHiUvShTVWkzkH2aGk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/JZ9gs/btsKtqOiPEV/RKkPMHiUvShTVWkzkH2aGk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FJZ9gs%2FbtsKtqOiPEV%2FRKkPMHiUvShTVWkzkH2aGk%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;500&quot; height=&quot;727&quot; data-filename=&quot;스크린샷 2024-10-30 033626.png&quot; data-origin-width=&quot;1142&quot; data-origin-height=&quot;1661&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;원하는 인스턴스 이름을 입력하고 OS를 선택해준다&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;정답은 없지만 나는 사용해본 ubuntu를 사용했다&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;(ubuntu가 많이 사용되어서 검색 레퍼런스도 많다)&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;화면 캡처 2024-10-30 033645.jpg&quot; data-origin-width=&quot;1122&quot; data-origin-height=&quot;442&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/QUUa3/btsKtNvFdDM/KCnGUwP01CkzMfyB7P5Me0/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/QUUa3/btsKtNvFdDM/KCnGUwP01CkzMfyB7P5Me0/img.jpg&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/QUUa3/btsKtNvFdDM/KCnGUwP01CkzMfyB7P5Me0/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FQUUa3%2FbtsKtNvFdDM%2FKCnGUwP01CkzMfyB7P5Me0%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1122&quot; height=&quot;442&quot; data-filename=&quot;화면 캡처 2024-10-30 033645.jpg&quot; data-origin-width=&quot;1122&quot; data-origin-height=&quot;442&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #ee2323;&quot;&gt;&lt;b&gt;중요합니다&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;프리티어 계정의 기본설정은 t2.micro 타입으로 지정되어있다&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;도커 젠킨스 설치에는 문제가 없으나&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;GitHub 프로젝트 빌드시에 리소스 부족으로 먹통이 될 수 있다!!!!&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;가격을 고려해 스팩업을 꼭 해주자&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;프로젝트에 따라 필요한 리소스가 다르기때문에 정답은 없지만&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;최소 2 vCPU 2 ~ 4 GiB Memory가 필요하다&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;ubuntu - t3.small type을 24시간 가동하였을때 천원정도 비용이 발생하는 수준&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;로컬에서 젠킨스를 테스트 해보고 별 생각없이 t2.micro로 진행했다가&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;처음부터 다시 설치했다&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;FsSgYsracAEdIWj.jpg&quot; data-origin-width=&quot;1200&quot; data-origin-height=&quot;668&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/IyPYF/btsKuwGv8gh/73oKWl52B4xqEJe13CGda0/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/IyPYF/btsKuwGv8gh/73oKWl52B4xqEJe13CGda0/img.jpg&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/IyPYF/btsKuwGv8gh/73oKWl52B4xqEJe13CGda0/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FIyPYF%2FbtsKuwGv8gh%2F73oKWl52B4xqEJe13CGda0%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;400&quot; height=&quot;223&quot; data-filename=&quot;FsSgYsracAEdIWj.jpg&quot; data-origin-width=&quot;1200&quot; data-origin-height=&quot;668&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;화면 캡처 2024-10-30 033653.jpg&quot; data-origin-width=&quot;1114&quot; data-origin-height=&quot;354&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/dwyBvg/btsKubQp568/6NSulbbCYlqeeK14ICbOb1/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/dwyBvg/btsKubQp568/6NSulbbCYlqeeK14ICbOb1/img.jpg&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/dwyBvg/btsKubQp568/6NSulbbCYlqeeK14ICbOb1/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FdwyBvg%2FbtsKubQp568%2F6NSulbbCYlqeeK14ICbOb1%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1114&quot; height=&quot;354&quot; data-filename=&quot;화면 캡처 2024-10-30 033653.jpg&quot; data-origin-width=&quot;1114&quot; data-origin-height=&quot;354&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;키페어를 생성해준다 (pem키를 잘 가지고 있다면 있던거 써도 된다)&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;여기서 생성한 키페어는 window환경에서 Putty로 연결할때 사용하고,&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;Jenkins에서 credential로 등록해서 배포시에 사용한다&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;화면 캡처 2024-10-30 033743.jpg&quot; data-origin-width=&quot;894&quot; data-origin-height=&quot;926&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/ceO0U8/btsKvfEdtlo/Kp9sFCiVuiSTqwyI07fUgK/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/ceO0U8/btsKvfEdtlo/Kp9sFCiVuiSTqwyI07fUgK/img.jpg&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/ceO0U8/btsKvfEdtlo/Kp9sFCiVuiSTqwyI07fUgK/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FceO0U8%2FbtsKvfEdtlo%2FKp9sFCiVuiSTqwyI07fUgK%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;894&quot; height=&quot;926&quot; data-filename=&quot;화면 캡처 2024-10-30 033743.jpg&quot; data-origin-width=&quot;894&quot; data-origin-height=&quot;926&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;원하는 이름 지정 후 key pair 생성&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;자동 저장되는 .pem 파일은 곧 사용하니 경로를 잘 확인해두자&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;화면 캡처 2024-10-30 033844.jpg&quot; data-origin-width=&quot;1110&quot; data-origin-height=&quot;1058&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/A07xR/btsKtmSRlcW/mNL6R5vshQ81ov2LCkkeh0/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/A07xR/btsKtmSRlcW/mNL6R5vshQ81ov2LCkkeh0/img.jpg&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/A07xR/btsKtmSRlcW/mNL6R5vshQ81ov2LCkkeh0/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FA07xR%2FbtsKtmSRlcW%2FmNL6R5vshQ81ov2LCkkeh0%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1110&quot; height=&quot;1058&quot; data-filename=&quot;화면 캡처 2024-10-30 033844.jpg&quot; data-origin-width=&quot;1110&quot; data-origin-height=&quot;1058&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;보안그룹은 원래 사용하던게 있다면 사용해도 된다&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;나는 깔끔하게 필요한 것만 사용하는게 편해서 새로 생성하는 편이다&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;화면 캡처 2024-10-30 033903.jpg&quot; data-origin-width=&quot;1114&quot; data-origin-height=&quot;736&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/Q9efu/btsKt7gaoKd/6yn95hSExlAUwbIOS6uhtK/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/Q9efu/btsKt7gaoKd/6yn95hSExlAUwbIOS6uhtK/img.jpg&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/Q9efu/btsKt7gaoKd/6yn95hSExlAUwbIOS6uhtK/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FQ9efu%2FbtsKt7gaoKd%2F6yn95hSExlAUwbIOS6uhtK%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1114&quot; height=&quot;736&quot; data-filename=&quot;화면 캡처 2024-10-30 033903.jpg&quot; data-origin-width=&quot;1114&quot; data-origin-height=&quot;736&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;스토리지 설정은 Free tier에서 사용가능한 30으로 변경한다&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;여기까지 하면 필요한 설정 완료&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;새로운 인스턴스를 생성해준다!&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;생성된 인스턴스는 자동으로 Runnig 상태로 실행된다&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;EC2 Instance 고정 IP 설정 (선택)&lt;/h2&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;화면 캡처 2024-10-30 033935.jpg&quot; data-origin-width=&quot;1609&quot; data-origin-height=&quot;1724&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/c2jwcw/btsKuvHK3co/Jp2f48p1QwIW8Ve9IMJKlK/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/c2jwcw/btsKuvHK3co/Jp2f48p1QwIW8Ve9IMJKlK/img.jpg&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/c2jwcw/btsKuvHK3co/Jp2f48p1QwIW8Ve9IMJKlK/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fc2jwcw%2FbtsKuvHK3co%2FJp2f48p1QwIW8Ve9IMJKlK%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;400&quot; height=&quot;429&quot; data-filename=&quot;화면 캡처 2024-10-30 033935.jpg&quot; data-origin-width=&quot;1609&quot; data-origin-height=&quot;1724&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;고정 IP가 선택인 이유는 돈이 나가니까!&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;근데 해두면 편하다...&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;네비게이션 메뉴에서 Elastic IPs를 클릭해 이동한다&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;화면 캡처 2024-10-30 034021.jpg&quot; data-origin-width=&quot;1860&quot; data-origin-height=&quot;522&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/yWnGY/btsKuUAiHf0/Ckw8lJOaw2wy8Uneg7U9K0/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/yWnGY/btsKuUAiHf0/Ckw8lJOaw2wy8Uneg7U9K0/img.jpg&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/yWnGY/btsKuUAiHf0/Ckw8lJOaw2wy8Uneg7U9K0/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FyWnGY%2FbtsKuUAiHf0%2FCkw8lJOaw2wy8Uneg7U9K0%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1860&quot; height=&quot;522&quot; data-filename=&quot;화면 캡처 2024-10-30 034021.jpg&quot; data-origin-width=&quot;1860&quot; data-origin-height=&quot;522&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;화면 캡처 2024-10-30 034049.jpg&quot; data-origin-width=&quot;1358&quot; data-origin-height=&quot;1530&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/vmqj8/btsKuvHK8aQ/Gcm3uuPtKurdbnskFYWxZK/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/vmqj8/btsKuvHK8aQ/Gcm3uuPtKurdbnskFYWxZK/img.jpg&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/vmqj8/btsKuvHK8aQ/Gcm3uuPtKurdbnskFYWxZK/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fvmqj8%2FbtsKuvHK8aQ%2FGcm3uuPtKurdbnskFYWxZK%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;500&quot; height=&quot;563&quot; data-filename=&quot;화면 캡처 2024-10-30 034049.jpg&quot; data-origin-width=&quot;1358&quot; data-origin-height=&quot;1530&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;별도의 설정없이 한화 이글스색 버튼을 순서대로 클릭만하면 IP가 생성된다&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;생성된 IP를 클릭하면 상세정보를 확인할 수 있다&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;화면 캡처 2024-10-30 034152.jpg&quot; data-origin-width=&quot;1742&quot; data-origin-height=&quot;1222&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/uscje/btsKucBGYVn/5Vh2tkHWxrwHhcCiqYKSDk/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/uscje/btsKucBGYVn/5Vh2tkHWxrwHhcCiqYKSDk/img.jpg&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/uscje/btsKucBGYVn/5Vh2tkHWxrwHhcCiqYKSDk/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fuscje%2FbtsKucBGYVn%2F5Vh2tkHWxrwHhcCiqYKSDk%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1742&quot; height=&quot;1222&quot; data-filename=&quot;화면 캡처 2024-10-30 034152.jpg&quot; data-origin-width=&quot;1742&quot; data-origin-height=&quot;1222&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;생성된 IP 상세 페이지에서 Associate Elastic IP address 클릭&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;화면 캡처 2024-10-30 034340.jpg&quot; data-origin-width=&quot;1342&quot; data-origin-height=&quot;1214&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/NB4eE/btsKuOz8TUR/Mxm3hFbEyMM062HmUudK7K/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/NB4eE/btsKuOz8TUR/Mxm3hFbEyMM062HmUudK7K/img.jpg&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/NB4eE/btsKuOz8TUR/Mxm3hFbEyMM062HmUudK7K/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FNB4eE%2FbtsKuOz8TUR%2FMxm3hFbEyMM062HmUudK7K%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;500&quot; height=&quot;452&quot; data-filename=&quot;화면 캡처 2024-10-30 034340.jpg&quot; data-origin-width=&quot;1342&quot; data-origin-height=&quot;1214&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;위에서 생성한 인스턴스를 선택하고&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;Associate를 클릭하면 선택한 인스턴스의 public IP가 변경된 것을 확인 할 수 있다&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;EC2 Instance port 설정&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;외부에서 접속할 수 있도록 필요한 포트들을 열어줘야한다&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;화면 캡처 2024-10-30 034530.jpg&quot; data-origin-width=&quot;1442&quot; data-origin-height=&quot;502&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/wkUoD/btsKudAF5l6/JkXkjVYVCxMAjBvNXKmAF0/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/wkUoD/btsKudAF5l6/JkXkjVYVCxMAjBvNXKmAF0/img.jpg&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/wkUoD/btsKudAF5l6/JkXkjVYVCxMAjBvNXKmAF0/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FwkUoD%2FbtsKudAF5l6%2FJkXkjVYVCxMAjBvNXKmAF0%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1442&quot; height=&quot;502&quot; data-filename=&quot;화면 캡처 2024-10-30 034530.jpg&quot; data-origin-width=&quot;1442&quot; data-origin-height=&quot;502&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;인스턴스 상세페이지로 이동해 하단의 Security메뉴를 클릭한다&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;빨간 밑줄부분에 있는 Security Groups을 클릭&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;화면 캡처 2024-10-30 034626.jpg&quot; data-origin-width=&quot;1464&quot; data-origin-height=&quot;1318&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/dsuwI1/btsKuN817kX/hKCTqdfQ7bqgdrPs1upw3K/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/dsuwI1/btsKuN817kX/hKCTqdfQ7bqgdrPs1upw3K/img.jpg&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/dsuwI1/btsKuN817kX/hKCTqdfQ7bqgdrPs1upw3K/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FdsuwI1%2FbtsKuN817kX%2FhKCTqdfQ7bqgdrPs1upw3K%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;500&quot; height=&quot;450&quot; data-filename=&quot;화면 캡처 2024-10-30 034626.jpg&quot; data-origin-width=&quot;1464&quot; data-origin-height=&quot;1318&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;Edit inbound rules 클릭&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;외부에서 EC2 내부로 들어오는 port에 대한 설정이다&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;edited_화면 캡처 2024-10-30 034717.jpg&quot; data-origin-width=&quot;1784&quot; data-origin-height=&quot;1408&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/dfPnFw/btsKuJeIBvs/f321mQBLWj7bb7xtx6Qe5k/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/dfPnFw/btsKuJeIBvs/f321mQBLWj7bb7xtx6Qe5k/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/dfPnFw/btsKuJeIBvs/f321mQBLWj7bb7xtx6Qe5k/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FdfPnFw%2FbtsKuJeIBvs%2Ff321mQBLWj7bb7xtx6Qe5k%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;500&quot; height=&quot;395&quot; data-filename=&quot;edited_화면 캡처 2024-10-30 034717.jpg&quot; data-origin-width=&quot;1784&quot; data-origin-height=&quot;1408&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;ssh로 접속하는 22 포트가 기본으로 설정되어있고&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;두가지를 추가해줬다&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;하나는 SpringBoot 프로젝트가 배포될 9090,&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;하나는 Jenkins 접속을 위한 8080,&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;(Spring Boot의 기본 포트와 Jenkins의 기본 포트 모두 8080로 동일하니 적절히 변경해서 사용해야 한다)&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;필요한 포트를 등록하고 저장해준다&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;여기까지 하면 외부에서 접속하기 위한 포트 설정까지 완료!!!&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;</description>
      <category>TIL</category>
      <author>everyday-spring</author>
      <guid isPermaLink="true">https://subin0522.tistory.com/630</guid>
      <comments>https://subin0522.tistory.com/630#entry630comment</comments>
      <pubDate>Sat, 2 Nov 2024 16:53:30 +0900</pubDate>
    </item>
    <item>
      <title>Window PC에 Docker, jenkins 설치, GitHub 연동하기 (2) | 난 삽질로 유학까지 다녀왔단 사실</title>
      <link>https://subin0522.tistory.com/629</link>
      <description>&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://everyday-spring.com/628&quot;&gt;https://everyday-spring.com/628&lt;/a&gt;&lt;/p&gt;
&lt;figure id=&quot;og_1730126847025&quot; contenteditable=&quot;false&quot; data-ke-type=&quot;opengraph&quot; data-ke-align=&quot;alignCenter&quot; data-og-type=&quot;article&quot; data-og-title=&quot;Window PC에 Docker, jenkins 설치, GitHub 연동하기 (1) | 난 대학시절 삽질을 전공했단 사실&quot; data-og-description=&quot;시작에 앞서....Docker를... AWS EC2에 설치 했어야 하는데별 의심없이 개인 pc에 설치했다...잘못된 방향으로 핸들이 고장난 에잇톤트럭마냥 달려서 하루를 낭비했다이것은.. 그 기록....&amp;nbsp;&amp;nbsp;Docker 설치h&quot; data-og-host=&quot;everyday-spring.com&quot; data-og-source-url=&quot;https://everyday-spring.com/628&quot; data-og-url=&quot;https://everyday-spring.com/628&quot; data-og-image=&quot;https://scrap.kakaocdn.net/dn/bigA93/hyXpyR3EEI/4IZK1ZLUipjcU1wV4VFsy0/img.jpg?width=800&amp;amp;height=806&amp;amp;face=0_0_800_806,https://scrap.kakaocdn.net/dn/yd82a/hyXpuvlRl8/EggCF0NpUkUFGXtcXlfNk1/img.jpg?width=800&amp;amp;height=806&amp;amp;face=0_0_800_806,https://scrap.kakaocdn.net/dn/cVUklV/hyXppt4GgL/RrYE9Ft8PvOq4oUSXMMfLk/img.png?width=1892&amp;amp;height=1072&amp;amp;face=0_0_1892_1072&quot;&gt;&lt;a href=&quot;https://everyday-spring.com/628&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://everyday-spring.com/628&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://scrap.kakaocdn.net/dn/bigA93/hyXpyR3EEI/4IZK1ZLUipjcU1wV4VFsy0/img.jpg?width=800&amp;amp;height=806&amp;amp;face=0_0_800_806,https://scrap.kakaocdn.net/dn/yd82a/hyXpuvlRl8/EggCF0NpUkUFGXtcXlfNk1/img.jpg?width=800&amp;amp;height=806&amp;amp;face=0_0_800_806,https://scrap.kakaocdn.net/dn/cVUklV/hyXppt4GgL/RrYE9Ft8PvOq4oUSXMMfLk/img.png?width=1892&amp;amp;height=1072&amp;amp;face=0_0_1892_1072');&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;og-text&quot;&gt;
&lt;p class=&quot;og-title&quot; data-ke-size=&quot;size16&quot;&gt;Window PC에 Docker, jenkins 설치, GitHub 연동하기 (1) | 난 대학시절 삽질을 전공했단 사실&lt;/p&gt;
&lt;p class=&quot;og-desc&quot; data-ke-size=&quot;size16&quot;&gt;시작에 앞서....Docker를... AWS EC2에 설치 했어야 하는데별 의심없이 개인 pc에 설치했다...잘못된 방향으로 핸들이 고장난 에잇톤트럭마냥 달려서 하루를 낭비했다이것은.. 그 기록....&amp;nbsp;&amp;nbsp;Docker 설치h&lt;/p&gt;
&lt;p class=&quot;og-host&quot; data-ke-size=&quot;size16&quot;&gt;everyday-spring.com&lt;/p&gt;
&lt;/div&gt;
&lt;/a&gt;&lt;/figure&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;지난 글에서는&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;Docker, Jenkins 설치, Github 토큰을 발급받았다&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;발급받은 토큰을 사용해 Git repository의 정보를 가져오고 빌드까지 해보자!!&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;Jenkins에 Github token 등록하기&lt;/h2&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;blob&quot; data-origin-width=&quot;1304&quot; data-origin-height=&quot;120&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/ciRIci/btsKnEseGp7/ri04aHvhEObO5KBBLSXJGK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/ciRIci/btsKnEseGp7/ri04aHvhEObO5KBBLSXJGK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/ciRIci/btsKnEseGp7/ri04aHvhEObO5KBBLSXJGK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FciRIci%2FbtsKnEseGp7%2Fri04aHvhEObO5KBBLSXJGK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1304&quot; height=&quot;120&quot; data-filename=&quot;blob&quot; data-origin-width=&quot;1304&quot; data-origin-height=&quot;120&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;웹에서 젠킨스에 접속한다&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;현재 로컬에 설치했기 때문에&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;localhost:8080에 접속한다&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;2462&quot; data-origin-height=&quot;1184&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/c85ezw/btsKnWlPABQ/YppzNc71Y4vwgRWq6RO88K/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/c85ezw/btsKnWlPABQ/YppzNc71Y4vwgRWq6RO88K/img.png&quot; data-alt=&quot;눈을 감고 있는 대머리 아저씨&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/c85ezw/btsKnWlPABQ/YppzNc71Y4vwgRWq6RO88K/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fc85ezw%2FbtsKnWlPABQ%2FYppzNc71Y4vwgRWq6RO88K%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;2462&quot; height=&quot;1184&quot; data-origin-width=&quot;2462&quot; data-origin-height=&quot;1184&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;눈을 감고 있는 대머리 아저씨&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;Jenkins 초기 설정시 입력한 계정 정보를 입력한다&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;2968&quot; data-origin-height=&quot;1456&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/YcA9a/btsKoQ6dEhb/wcHzkoHNmPLVCyVLqdDHHK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/YcA9a/btsKoQ6dEhb/wcHzkoHNmPLVCyVLqdDHHK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/YcA9a/btsKoQ6dEhb/wcHzkoHNmPLVCyVLqdDHHK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FYcA9a%2FbtsKoQ6dEhb%2FwcHzkoHNmPLVCyVLqdDHHK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;2968&quot; height=&quot;1456&quot; data-origin-width=&quot;2968&quot; data-origin-height=&quot;1456&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;Jenkins 관리 &amp;gt; Credentials&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;화면 캡처 2024-10-30 012910.jpg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;368&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/7HQXZ/btsKogxzqXd/mXcmR9lIBU1wkhsAvw73f1/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/7HQXZ/btsKogxzqXd/mXcmR9lIBU1wkhsAvw73f1/img.jpg&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/7HQXZ/btsKogxzqXd/mXcmR9lIBU1wkhsAvw73f1/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2F7HQXZ%2FbtsKogxzqXd%2FmXcmR9lIBU1wkhsAvw73f1%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;500&quot; height=&quot;180&quot; data-filename=&quot;화면 캡처 2024-10-30 012910.jpg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;368&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;(global) 클릭&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;2686&quot; data-origin-height=&quot;969&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/tAGkZ/btsKoKyosyN/7Y2ACKVW4PArWp7hpVARKK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/tAGkZ/btsKoKyosyN/7Y2ACKVW4PArWp7hpVARKK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/tAGkZ/btsKoKyosyN/7Y2ACKVW4PArWp7hpVARKK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FtAGkZ%2FbtsKoKyosyN%2F7Y2ACKVW4PArWp7hpVARKK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;2686&quot; height=&quot;969&quot; data-origin-width=&quot;2686&quot; data-origin-height=&quot;969&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;+ Add Credentials 클릭&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;3540&quot; data-origin-height=&quot;1267&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/cbRQow/btsKoiPIWIE/hMqGxtkHcm8JRBGZUytVnk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/cbRQow/btsKoiPIWIE/hMqGxtkHcm8JRBGZUytVnk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/cbRQow/btsKoiPIWIE/hMqGxtkHcm8JRBGZUytVnk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FcbRQow%2FbtsKoiPIWIE%2FhMqGxtkHcm8JRBGZUytVnk%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;3540&quot; height=&quot;1267&quot; data-origin-width=&quot;3540&quot; data-origin-height=&quot;1267&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;세칸을 필수로 채워준다&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;Password에 GitHub에서 발급받은 token을 입력한다&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;ID는 github로 만들었다 (아무거나 상관없음)&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;github Credential은 Git repository에 접근해서 checkout할 때 사용한다&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;Jenkins Pipeline GitHub Repository pull, build 하기&lt;/h2&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;화면 캡처 2024-10-30 013834.jpg&quot; data-origin-width=&quot;1978&quot; data-origin-height=&quot;921&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/xZQst/btsKnQlMHuL/SnnKp5fncO8EWS2PkXVZsk/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/xZQst/btsKnQlMHuL/SnnKp5fncO8EWS2PkXVZsk/img.jpg&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/xZQst/btsKnQlMHuL/SnnKp5fncO8EWS2PkXVZsk/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FxZQst%2FbtsKnQlMHuL%2FSnnKp5fncO8EWS2PkXVZsk%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;500&quot; height=&quot;233&quot; data-filename=&quot;화면 캡처 2024-10-30 013834.jpg&quot; data-origin-width=&quot;1978&quot; data-origin-height=&quot;921&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;새로운 아이템을 등록한다&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;화면 캡처 2024-10-30 013919.jpg&quot; data-origin-width=&quot;1476&quot; data-origin-height=&quot;1498&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/cLXeGl/btsKm8UhGhx/en0uEc0hRgksFX0FTs5qWK/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/cLXeGl/btsKm8UhGhx/en0uEc0hRgksFX0FTs5qWK/img.jpg&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/cLXeGl/btsKm8UhGhx/en0uEc0hRgksFX0FTs5qWK/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FcLXeGl%2FbtsKm8UhGhx%2Fen0uEc0hRgksFX0FTs5qWK%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;500&quot; height=&quot;507&quot; data-filename=&quot;화면 캡처 2024-10-30 013919.jpg&quot; data-origin-width=&quot;1476&quot; data-origin-height=&quot;1498&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이름을 설정하고 pipeline을 선택&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;화면 캡처 2024-10-30 014054.jpg&quot; data-origin-width=&quot;1285&quot; data-origin-height=&quot;1806&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bEjU7C/btsKnEMwqGQ/rpHHd4hIIpYp6s40jo5tyK/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bEjU7C/btsKnEMwqGQ/rpHHd4hIIpYp6s40jo5tyK/img.jpg&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bEjU7C/btsKnEMwqGQ/rpHHd4hIIpYp6s40jo5tyK/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbEjU7C%2FbtsKnEMwqGQ%2FrpHHd4hIIpYp6s40jo5tyK%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;500&quot; height=&quot;703&quot; data-filename=&quot;화면 캡처 2024-10-30 014054.jpg&quot; data-origin-width=&quot;1285&quot; data-origin-height=&quot;1806&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;GitHub project (대상 repository 주소 입력)&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;GitHub hook trigger for GITScm polling&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;두 항목 체크&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;edited_화면 캡처 2024-10-30 014202.jpg&quot; data-origin-width=&quot;2350&quot; data-origin-height=&quot;1622&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/cBybhV/btsKoq01wbl/isL8kxMWtg1bwaaarugVE0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/cBybhV/btsKoq01wbl/isL8kxMWtg1bwaaarugVE0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/cBybhV/btsKoq01wbl/isL8kxMWtg1bwaaarugVE0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FcBybhV%2FbtsKoq01wbl%2FisL8kxMWtg1bwaaarugVE0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;2350&quot; height=&quot;1622&quot; data-filename=&quot;edited_화면 캡처 2024-10-30 014202.jpg&quot; data-origin-width=&quot;2350&quot; data-origin-height=&quot;1622&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;pre id=&quot;code_1730221084411&quot; class=&quot;java&quot; data-ke-language=&quot;java&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;pipeline {
    agent any
    stages {
        stage('checkout') {
            steps {
                git branch: 'main',
                    credentialsId: 'github',
                    url: 'https://github.com/[GitHub Repository url].git'
            }
        }
        stage('build') {
            steps {
               sh ''' 
                echo 'start build' 
                chmod +x gradlew
                ./gradlew clean build -x test
                '''
            }
        }
    }
}&lt;/code&gt;&lt;/pre&gt;
&lt;div data-ke-type=&quot;moreLess&quot; data-text-more=&quot;더보기&quot; data-text-less=&quot;닫기&quot;&gt;&lt;a class=&quot;btn-toggle-moreless&quot;&gt;더보기&lt;/a&gt;
&lt;div class=&quot;moreless-content&quot;&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;pipeline&amp;nbsp;{ &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;agent&amp;nbsp;any &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;stages&amp;nbsp;{ &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;stage('checkout') { // 작업 이름, 자유롭게 입력&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;steps&amp;nbsp;{ &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;git branch: 'main', // 가져올 대상 Branch명&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;credentialsId: 'github', // Jenkins에 등록한 Github Credential ID&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;url:&amp;nbsp;'&lt;a href=&quot;https://github.com/[GitHub&quot; target=&quot;_blank&quot; rel=&quot;noopener&amp;nbsp;noreferrer&quot;&gt;https://github.com/[GitHub&lt;/a&gt; Repository url].git' // repository 주소&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;} &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;} &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;stage('build')&amp;nbsp;{ &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;steps&amp;nbsp;{ &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;sh&amp;nbsp;'''&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;echo 'start build' // 단순 출력문&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;chmod +x gradlew // 폴더에 대한 접근권한을 설정&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;./gradlew clean build -x test // 빌드!!&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;''' &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;} &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;} &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;} &lt;br /&gt;}&lt;/p&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;build 명령을 사용하면 테스트까지 진행되고&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;bootJar 명령을 하용하면 test를 제외하고 실행에 필요한 부분만 빌드된다&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;(프로젝트 문제로 test에서 오류가나서.. 임시로 제외했다...&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;화면 캡처 2024-10-30 014240.jpg&quot; data-origin-width=&quot;1670&quot; data-origin-height=&quot;1510&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/b4TS3V/btsKnRSB65B/0KkRojtAZoDCpDpo1tMoOK/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/b4TS3V/btsKnRSB65B/0KkRojtAZoDCpDpo1tMoOK/img.jpg&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/b4TS3V/btsKnRSB65B/0KkRojtAZoDCpDpo1tMoOK/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fb4TS3V%2FbtsKnRSB65B%2F0KkRojtAZoDCpDpo1tMoOK%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;400&quot; height=&quot;362&quot; data-filename=&quot;화면 캡처 2024-10-30 014240.jpg&quot; data-origin-width=&quot;1670&quot; data-origin-height=&quot;1510&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;파이프라인까지 작성했다면&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;빌드 Build History에 넘버링된 번호를 클릭하면 상세정보를 확인할 수 있다&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;(날씨로 실행상태가 나타난다 잘돌아가면 해가 쨍쨍하다... 흐린건.. 무수히 많이 쌓인 도전의 흔적..)&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;화면 캡처 2024-10-30 014537.jpg&quot; data-origin-width=&quot;3267&quot; data-origin-height=&quot;1765&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/yMcIc/btsKnFdBu8O/O5K9WIclmWvp8cSV14K8v0/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/yMcIc/btsKnFdBu8O/O5K9WIclmWvp8cSV14K8v0/img.jpg&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/yMcIc/btsKnFdBu8O/O5K9WIclmWvp8cSV14K8v0/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FyMcIc%2FbtsKnFdBu8O%2FO5K9WIclmWvp8cSV14K8v0%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;3267&quot; height=&quot;1765&quot; data-filename=&quot;화면 캡처 2024-10-30 014537.jpg&quot; data-origin-width=&quot;3267&quot; data-origin-height=&quot;1765&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;실행된 Stages에 대한 상세정보&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;Console Output에서 log를 확인할 수 있다&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;화면 캡처 2024-10-30 014615.jpg&quot; data-origin-width=&quot;1276&quot; data-origin-height=&quot;1408&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/J5pz4/btsKnV1A91O/EuvJF76ex7vVkUVlKgvRTk/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/J5pz4/btsKnV1A91O/EuvJF76ex7vVkUVlKgvRTk/img.jpg&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/J5pz4/btsKnV1A91O/EuvJF76ex7vVkUVlKgvRTk/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FJ5pz4%2FbtsKnV1A91O%2FEuvJF76ex7vVkUVlKgvRTk%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1276&quot; height=&quot;1408&quot; data-filename=&quot;화면 캡처 2024-10-30 014615.jpg&quot; data-origin-width=&quot;1276&quot; data-origin-height=&quot;1408&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;log를 확인해보면 pipeline에 설정된&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;checkout과 build가 정상실행되었다!&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;야호!&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;ngrok 주소 발급하기&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;GitHub에서 Webhook을 날려주려면 jenkins 서버 주소를 입력해야하는데&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;localhost:8080은 입력할 수 없다&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://download.ngrok.com/windows?tab=download&quot; target=&quot;_blank&quot; rel=&quot;noopener&amp;nbsp;noreferrer&quot;&gt;https://download.ngrok.com/windows?tab=download&lt;/a&gt;&lt;/p&gt;
&lt;figure id=&quot;og_1730222939421&quot; contenteditable=&quot;false&quot; data-ke-type=&quot;opengraph&quot; data-ke-align=&quot;alignCenter&quot; data-og-type=&quot;website&quot; data-og-title=&quot;Download ngrok&quot; data-og-description=&quot;Download ngrok&quot; data-og-host=&quot;download.ngrok.com&quot; data-og-source-url=&quot;https://download.ngrok.com/windows?tab=download&quot; data-og-url=&quot;https://download.ngrok.com/windows&quot; data-og-image=&quot;https://scrap.kakaocdn.net/dn/egvIQt/hyXpyx7Xfq/SP2I9wurrkEKs06ka4nXt1/img.png?width=2400&amp;amp;height=1256&amp;amp;face=0_0_2400_1256&quot;&gt;&lt;a href=&quot;https://download.ngrok.com/windows?tab=download&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://download.ngrok.com/windows?tab=download&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://scrap.kakaocdn.net/dn/egvIQt/hyXpyx7Xfq/SP2I9wurrkEKs06ka4nXt1/img.png?width=2400&amp;amp;height=1256&amp;amp;face=0_0_2400_1256');&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;og-text&quot;&gt;
&lt;p class=&quot;og-title&quot; data-ke-size=&quot;size16&quot;&gt;Download ngrok&lt;/p&gt;
&lt;p class=&quot;og-desc&quot; data-ke-size=&quot;size16&quot;&gt;Download ngrok&lt;/p&gt;
&lt;p class=&quot;og-host&quot; data-ke-size=&quot;size16&quot;&gt;download.ngrok.com&lt;/p&gt;
&lt;/div&gt;
&lt;/a&gt;&lt;/figure&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;ngrok을 설치하고 localhost에 연결되는 주소를 발급받아보자&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;화면 캡처 2024-10-30 023125.jpg&quot; data-origin-width=&quot;1872&quot; data-origin-height=&quot;1503&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/dS6Sck/btsKnpILqRp/aJkbWOOdUpRysFoA1HTxNk/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/dS6Sck/btsKnpILqRp/aJkbWOOdUpRysFoA1HTxNk/img.jpg&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/dS6Sck/btsKnpILqRp/aJkbWOOdUpRysFoA1HTxNk/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FdS6Sck%2FbtsKnpILqRp%2FaJkbWOOdUpRysFoA1HTxNk%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;500&quot; height=&quot;401&quot; data-filename=&quot;화면 캡처 2024-10-30 023125.jpg&quot; data-origin-width=&quot;1872&quot; data-origin-height=&quot;1503&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;회원가입하고 Authtoken 을 복사한다&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;화면 캡처 2024-10-30 023357.jpg&quot; data-origin-width=&quot;1728&quot; data-origin-height=&quot;145&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/cpfNWU/btsKpEqrcco/Q6M4H80wTHNRpO6DeuIbgK/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/cpfNWU/btsKpEqrcco/Q6M4H80wTHNRpO6DeuIbgK/img.jpg&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/cpfNWU/btsKpEqrcco/Q6M4H80wTHNRpO6DeuIbgK/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FcpfNWU%2FbtsKpEqrcco%2FQ6M4H80wTHNRpO6DeuIbgK%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1728&quot; height=&quot;145&quot; data-filename=&quot;화면 캡처 2024-10-30 023357.jpg&quot; data-origin-width=&quot;1728&quot; data-origin-height=&quot;145&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;다운받은 ngrok을 실행해서 계정을 설정해준다 (window 설치파일 기준 실행하면 shell이 열림)&lt;/p&gt;
&lt;pre id=&quot;code_1730223296780&quot; class=&quot;java&quot; data-ke-language=&quot;java&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;ngrok config add-authtoken $YOUR_AUTHTOKEN&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;화면 캡처 2024-10-30 023626.jpg&quot; data-origin-width=&quot;1438&quot; data-origin-height=&quot;445&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/9mSOu/btsKoZPoPBw/rPN2czLEORNxqpHkTIn6K1/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/9mSOu/btsKoZPoPBw/rPN2czLEORNxqpHkTIn6K1/img.jpg&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/9mSOu/btsKoZPoPBw/rPN2czLEORNxqpHkTIn6K1/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2F9mSOu%2FbtsKoZPoPBw%2FrPN2czLEORNxqpHkTIn6K1%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1438&quot; height=&quot;445&quot; data-filename=&quot;화면 캡처 2024-10-30 023626.jpg&quot; data-origin-width=&quot;1438&quot; data-origin-height=&quot;445&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;pre id=&quot;code_1730223417637&quot; class=&quot;java&quot; data-ke-language=&quot;java&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;ngrok http 8080&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;계정 설정 후 포트정보와 함께 명령어를 입력하면 외부접근 가능한 주소를 발급해준다&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;But, 무료계정의 경우 저 발급받은 링크가 얼마안간다..&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;(나는 그냥 귀찮아서 로컬 pc를 포트포워딩 했다...)&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;GitHub Jenkins Webhook settings&lt;/h2&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;화면 캡처 2024-10-30 021946.jpg&quot; data-origin-width=&quot;1861&quot; data-origin-height=&quot;1888&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/pcCoP/btsKoSXjCWr/lCGKYwJ0M7xsJz6JJ5kLp1/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/pcCoP/btsKoSXjCWr/lCGKYwJ0M7xsJz6JJ5kLp1/img.jpg&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/pcCoP/btsKoSXjCWr/lCGKYwJ0M7xsJz6JJ5kLp1/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FpcCoP%2FbtsKoSXjCWr%2FlCGKYwJ0M7xsJz6JJ5kLp1%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;500&quot; height=&quot;507&quot; data-filename=&quot;화면 캡처 2024-10-30 021946.jpg&quot; data-origin-width=&quot;1861&quot; data-origin-height=&quot;1888&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;GitHub Repository Settings&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;edited_화면 캡처 2024-10-30 022207.jpg&quot; data-origin-width=&quot;1680&quot; data-origin-height=&quot;1515&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/2d3Vk/btsKn4jSJwq/ROKQWK1LwcA91ngvFvxm71/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/2d3Vk/btsKn4jSJwq/ROKQWK1LwcA91ngvFvxm71/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/2d3Vk/btsKn4jSJwq/ROKQWK1LwcA91ngvFvxm71/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2F2d3Vk%2FbtsKn4jSJwq%2FROKQWK1LwcA91ngvFvxm71%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;500&quot; height=&quot;451&quot; data-filename=&quot;edited_화면 캡처 2024-10-30 022207.jpg&quot; data-origin-width=&quot;1680&quot; data-origin-height=&quot;1515&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;Webhooks에 ngrok에서 발급받은 주소 (포트를 포함해서 발급받았기 때문에 포트 생략)&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;또는 젠킨스 서버의 public 주소를 넣어준다! (포트까지 적어줘야한다)&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그리고 뒤에 /github-webhook/ 을 입력!&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;여기까지 설정해주면 Jenkins에 지정해둔 브랜치에 변화가 있을때 마다 자동으로 pipeline이 실행된다!!&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;360&quot; data-origin-height=&quot;192&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bVBx0G/btsKps4Flu4/09FZUZNqiQSsR7tRvCMbu0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bVBx0G/btsKps4Flu4/09FZUZNqiQSsR7tRvCMbu0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bVBx0G/btsKps4Flu4/09FZUZNqiQSsR7tRvCMbu0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbVBx0G%2FbtsKps4Flu4%2F09FZUZNqiQSsR7tRvCMbu0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;360&quot; height=&quot;192&quot; data-origin-width=&quot;360&quot; data-origin-height=&quot;192&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;br /&gt;이렇게 했는데 생각해보니 로컬에서 할일이 아니었다&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;응 다시해~ 서버에 docker 설치부터~&lt;/p&gt;</description>
      <category>TIL</category>
      <author>everyday-spring</author>
      <guid isPermaLink="true">https://subin0522.tistory.com/629</guid>
      <comments>https://subin0522.tistory.com/629#entry629comment</comments>
      <pubDate>Wed, 30 Oct 2024 02:40:25 +0900</pubDate>
    </item>
    <item>
      <title>Window PC에 Docker, jenkins 설치, GitHub 연동하기 (1) | 난 대학시절 삽질을 전공했단 사실</title>
      <link>https://subin0522.tistory.com/628</link>
      <description>&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;KakaoTalk_20240920_164441087_09.jpg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;1032&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/cwCKr4/btsKlY403TU/BUr2e9UX15IXWLLzyowdK0/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/cwCKr4/btsKlY403TU/BUr2e9UX15IXWLLzyowdK0/img.jpg&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/cwCKr4/btsKlY403TU/BUr2e9UX15IXWLLzyowdK0/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FcwCKr4%2FbtsKlY403TU%2FBUr2e9UX15IXWLLzyowdK0%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;300&quot; height=&quot;302&quot; data-filename=&quot;KakaoTalk_20240920_164441087_09.jpg&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;1032&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;시작에 앞서....&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;Docker를... AWS EC2에 설치 했어야 하는데&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;별 의심없이 개인 pc에 설치했다...&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;잘못된 방향으로 핸들이 고장난 에잇톤트럭마냥 달려서 하루를 낭비했다&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이것은.. 그 기록....&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;Docker 설치&lt;/h2&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;814&quot; data-origin-height=&quot;538&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/k4aF3/btsKlkVf6ez/6u7kTZ6BNTgDv4NNGDn2k0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/k4aF3/btsKlkVf6ez/6u7kTZ6BNTgDv4NNGDn2k0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/k4aF3/btsKlkVf6ez/6u7kTZ6BNTgDv4NNGDn2k0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fk4aF3%2FbtsKlkVf6ez%2F6u7kTZ6BNTgDv4NNGDn2k0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;300&quot; height=&quot;198&quot; data-origin-width=&quot;814&quot; data-origin-height=&quot;538&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://www.docker.com/products/docker-desktop/&quot; target=&quot;_blank&quot; rel=&quot;noopener&amp;nbsp;noreferrer&quot;&gt;https://www.docker.com/products/docker-desktop/&lt;/a&gt;&lt;/p&gt;
&lt;figure id=&quot;og_1730096660493&quot; contenteditable=&quot;false&quot; data-ke-type=&quot;opengraph&quot; data-ke-align=&quot;alignCenter&quot; data-og-type=&quot;article&quot; data-og-title=&quot;Docker Desktop: The #1 Containerization Tool for Developers | Docker&quot; data-og-description=&quot;Docker Desktop is collaborative containerization software for developers. Get started and download Docker Desktop today on Mac, Windows, or Linux.&quot; data-og-host=&quot;www.docker.com&quot; data-og-source-url=&quot;https://www.docker.com/products/docker-desktop/&quot; data-og-url=&quot;https://www.docker.com/products/docker-desktop/&quot; data-og-image=&quot;https://scrap.kakaocdn.net/dn/1gmio/hyXppHp6a8/yIM0gHPRW5fkKkHRsC2hHk/img.png?width=1110&amp;amp;height=580&amp;amp;face=0_0_1110_580,https://scrap.kakaocdn.net/dn/jE6tv/hyXpuBXj8i/KAesLngIOjs8a9hwwdPCh0/img.png?width=1110&amp;amp;height=580&amp;amp;face=0_0_1110_580&quot;&gt;&lt;a href=&quot;https://www.docker.com/products/docker-desktop/&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://www.docker.com/products/docker-desktop/&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://scrap.kakaocdn.net/dn/1gmio/hyXppHp6a8/yIM0gHPRW5fkKkHRsC2hHk/img.png?width=1110&amp;amp;height=580&amp;amp;face=0_0_1110_580,https://scrap.kakaocdn.net/dn/jE6tv/hyXpuBXj8i/KAesLngIOjs8a9hwwdPCh0/img.png?width=1110&amp;amp;height=580&amp;amp;face=0_0_1110_580');&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;og-text&quot;&gt;
&lt;p class=&quot;og-title&quot; data-ke-size=&quot;size16&quot;&gt;Docker Desktop: The #1 Containerization Tool for Developers | Docker&lt;/p&gt;
&lt;p class=&quot;og-desc&quot; data-ke-size=&quot;size16&quot;&gt;Docker Desktop is collaborative containerization software for developers. Get started and download Docker Desktop today on Mac, Windows, or Linux.&lt;/p&gt;
&lt;p class=&quot;og-host&quot; data-ke-size=&quot;size16&quot;&gt;www.docker.com&lt;/p&gt;
&lt;/div&gt;
&lt;/a&gt;&lt;/figure&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;링크에 접속해 설치파일을 받아줍니다&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;Docker가 항만 노동자들을 칭하는 말이라고 합니다&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;컨테이너가 배타고 옮겨다니니까 그걸 컨테이너를 얹고다니는 고래... 뭐 그런걸로 만든걸까요?&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;귀엽습니다&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imagegridblock&quot;&gt;
  &lt;div class=&quot;image-container&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/b4BOXB/btsKm9R34Zp/beiftrCRH3WkXsIihOKAfk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/b4BOXB/btsKm9R34Zp/beiftrCRH3WkXsIihOKAfk/img.png&quot; data-is-animation=&quot;false&quot; data-origin-width=&quot;1039&quot; data-origin-height=&quot;719&quot; data-filename=&quot;스크린샷 2024-10-27 154623.png&quot; style=&quot;width: 49.3923%; margin-right: 10px;&quot; data-widthpercent=&quot;49.97&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/b4BOXB/btsKm9R34Zp/beiftrCRH3WkXsIihOKAfk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fb4BOXB%2FbtsKm9R34Zp%2FbeiftrCRH3WkXsIihOKAfk%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1039&quot; height=&quot;719&quot;/&gt;&lt;/span&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/XbIyq/btsKlYYh9G0/K9BeoAbk5Iu5OnrBa6ziM0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/XbIyq/btsKlYYh9G0/K9BeoAbk5Iu5OnrBa6ziM0/img.png&quot; data-is-animation=&quot;false&quot; data-origin-width=&quot;1043&quot; data-origin-height=&quot;721&quot; data-filename=&quot;스크린샷 2024-10-27 154814.png&quot; style=&quot;width: 49.4449%;&quot; data-widthpercent=&quot;50.03&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/XbIyq/btsKlYYh9G0/K9BeoAbk5Iu5OnrBa6ziM0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FXbIyq%2FbtsKlYYh9G0%2FK9BeoAbk5Iu5OnrBa6ziM0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1043&quot; height=&quot;721&quot;/&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;설치과정중 별도의 설정은 하지않고&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;Use WSL 2 instead of Hyper-V 를 체크합니다&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;-&amp;gt; 도커 기본은 WSL2를 사용한다고함..&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://www.lainyzine.com/ko/article/a-complete-guide-to-how-to-install-docker-desktop-on-windows-10/&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;참고블로그&lt;/a&gt;&lt;/p&gt;
&lt;figure id=&quot;og_1730097123897&quot; contenteditable=&quot;false&quot; data-ke-type=&quot;opengraph&quot; data-ke-align=&quot;alignCenter&quot; data-og-type=&quot;website&quot; data-og-title=&quot;윈도우 Docker 설치 완벽 가이드(Home 포함)&quot; data-og-description=&quot;Docker는 경량 가상화 기술인 리눅스 컨테이너 도구입니다. 윈도우 Home과 Pro에서도 몇 가지 설정을 통해 Docker Desktop을 사용할 수 있습니다. 이 글에서는 윈도우에서 Docker Desktop을 설치하는 방법을 &quot; data-og-host=&quot;www.lainyzine.com&quot; data-og-source-url=&quot;https://www.lainyzine.com/ko/article/a-complete-guide-to-how-to-install-docker-desktop-on-windows-10/&quot; data-og-url=&quot;https://www.lainyzine.com/ko/article/a-complete-guide-to-how-to-install-docker-desktop-on-windows-10/&quot; data-og-image=&quot;https://scrap.kakaocdn.net/dn/btdpBi/hyXpuWhJSu/snESuqpMrBRQBlkkFVLByk/img.png?width=1430&amp;amp;height=1000&amp;amp;face=0_0_1430_1000,https://scrap.kakaocdn.net/dn/JFOVk/hyXpuPvqj4/2RStbGoKWpItQx1Jtdtdxk/img.png?width=1500&amp;amp;height=849&amp;amp;face=0_0_1500_849,https://scrap.kakaocdn.net/dn/bRn16Z/hyXppAEmYj/tnp9zSATnRqZaDKmubVbxk/img.png?width=1500&amp;amp;height=782&amp;amp;face=0_0_1500_782&quot;&gt;&lt;a href=&quot;https://www.lainyzine.com/ko/article/a-complete-guide-to-how-to-install-docker-desktop-on-windows-10/&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://www.lainyzine.com/ko/article/a-complete-guide-to-how-to-install-docker-desktop-on-windows-10/&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://scrap.kakaocdn.net/dn/btdpBi/hyXpuWhJSu/snESuqpMrBRQBlkkFVLByk/img.png?width=1430&amp;amp;height=1000&amp;amp;face=0_0_1430_1000,https://scrap.kakaocdn.net/dn/JFOVk/hyXpuPvqj4/2RStbGoKWpItQx1Jtdtdxk/img.png?width=1500&amp;amp;height=849&amp;amp;face=0_0_1500_849,https://scrap.kakaocdn.net/dn/bRn16Z/hyXppAEmYj/tnp9zSATnRqZaDKmubVbxk/img.png?width=1500&amp;amp;height=782&amp;amp;face=0_0_1500_782');&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;og-text&quot;&gt;
&lt;p class=&quot;og-title&quot; data-ke-size=&quot;size16&quot;&gt;윈도우 Docker 설치 완벽 가이드(Home 포함)&lt;/p&gt;
&lt;p class=&quot;og-desc&quot; data-ke-size=&quot;size16&quot;&gt;Docker는 경량 가상화 기술인 리눅스 컨테이너 도구입니다. 윈도우 Home과 Pro에서도 몇 가지 설정을 통해 Docker Desktop을 사용할 수 있습니다. 이 글에서는 윈도우에서 Docker Desktop을 설치하는 방법을&lt;/p&gt;
&lt;p class=&quot;og-host&quot; data-ke-size=&quot;size16&quot;&gt;www.lainyzine.com&lt;/p&gt;
&lt;/div&gt;
&lt;/a&gt;&lt;/figure&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imagegridblock&quot;&gt;
  &lt;div class=&quot;image-container&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bsg68q/btsKl78tME0/ZNSNtAHxKAAQC5EBOPMe20/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bsg68q/btsKl78tME0/ZNSNtAHxKAAQC5EBOPMe20/img.png&quot; data-is-animation=&quot;false&quot; data-origin-width=&quot;1047&quot; data-origin-height=&quot;732&quot; data-filename=&quot;스크린샷 2024-10-27 155003.png&quot; style=&quot;width: 46.639%; margin-right: 10px;&quot; data-widthpercent=&quot;47.19&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bsg68q/btsKl78tME0/ZNSNtAHxKAAQC5EBOPMe20/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fbsg68q%2FbtsKl78tME0%2FZNSNtAHxKAAQC5EBOPMe20%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1047&quot; height=&quot;732&quot;/&gt;&lt;/span&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/brAcMU/btsKm7zTvGi/8ce2k1XyRxTUcp0vjcMBk1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/brAcMU/btsKm7zTvGi/8ce2k1XyRxTUcp0vjcMBk1/img.png&quot; data-is-animation=&quot;false&quot; data-origin-width=&quot;1175&quot; data-origin-height=&quot;734&quot; data-filename=&quot;스크린샷 2024-10-27 155220.png&quot; style=&quot;width: 52.1982%;&quot; data-widthpercent=&quot;52.81&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/brAcMU/btsKm7zTvGi/8ce2k1XyRxTUcp0vjcMBk1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbrAcMU%2FbtsKm7zTvGi%2F8ce2k1XyRxTUcp0vjcMBk1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1175&quot; height=&quot;734&quot;/&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;설치가 완료되면 귀여운 바다생물들이 노동착취를 당하고 있습니다&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;Accept를 눌러줍니다&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imagegridblock&quot;&gt;
  &lt;div class=&quot;image-container&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/luNVW/btsKmTBXMoI/Zkcq6WfzGnNocwyEhKZ0vK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/luNVW/btsKmTBXMoI/Zkcq6WfzGnNocwyEhKZ0vK/img.png&quot; data-is-animation=&quot;false&quot; data-origin-width=&quot;1892&quot; data-origin-height=&quot;1072&quot; data-filename=&quot;스크린샷 2024-10-27 155310.png&quot; style=&quot;width: 56.838%; margin-right: 10px;&quot; data-widthpercent=&quot;57.51&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/luNVW/btsKmTBXMoI/Zkcq6WfzGnNocwyEhKZ0vK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FluNVW%2FbtsKmTBXMoI%2FZkcq6WfzGnNocwyEhKZ0vK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1892&quot; height=&quot;1072&quot;/&gt;&lt;/span&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/NHwat/btsKmwGYKIN/wNhstdorbDpq6YeMgdK8nk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/NHwat/btsKmwGYKIN/wNhstdorbDpq6YeMgdK8nk/img.png&quot; data-is-animation=&quot;false&quot; data-origin-width=&quot;879&quot; data-origin-height=&quot;674&quot; data-filename=&quot;스크린샷 2024-10-27 155430.png&quot; style=&quot;width: 41.9992%;&quot; data-widthpercent=&quot;42.49&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/NHwat/btsKmwGYKIN/wNhstdorbDpq6YeMgdK8nk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FNHwat%2FbtsKmwGYKIN%2FwNhstdorbDpq6YeMgdK8nk%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;879&quot; height=&quot;674&quot;/&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;웹에서 회원가입까지 진행해주면 Docker 설치 완료!&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;스크린샷 2024-10-27 155444.png&quot; data-origin-width=&quot;1884&quot; data-origin-height=&quot;1065&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bnHLbp/btsKmlr8Iie/rHKVRzAqtVLS7GQCzBYGg1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bnHLbp/btsKmlr8Iie/rHKVRzAqtVLS7GQCzBYGg1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bnHLbp/btsKmlr8Iie/rHKVRzAqtVLS7GQCzBYGg1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbnHLbp%2FbtsKmlr8Iie%2FrHKVRzAqtVLS7GQCzBYGg1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;300&quot; height=&quot;170&quot; data-filename=&quot;스크린샷 2024-10-27 155444.png&quot; data-origin-width=&quot;1884&quot; data-origin-height=&quot;1065&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이런 항목은 다 skip 해버립니다&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;Docker 동작 테스트&lt;/h2&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;edited_edited_스크린샷 2024-10-27 155825.png&quot; data-origin-width=&quot;3000&quot; data-origin-height=&quot;1256&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/s4C3s/btsKniVvp46/BV8fAwdoM6JKzEHn4DdCw0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/s4C3s/btsKniVvp46/BV8fAwdoM6JKzEHn4DdCw0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/s4C3s/btsKniVvp46/BV8fAwdoM6JKzEHn4DdCw0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fs4C3s%2FbtsKniVvp46%2FBV8fAwdoM6JKzEHn4DdCw0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;3000&quot; height=&quot;1256&quot; data-filename=&quot;edited_edited_스크린샷 2024-10-27 155825.png&quot; data-origin-width=&quot;3000&quot; data-origin-height=&quot;1256&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;pre id=&quot;code_1730097730039&quot; class=&quot;java&quot; data-ke-language=&quot;java&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;docker pull httpd&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;터미널을 열고 입력하면 테스트용 이미지가 다운받아진다&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;docker의 images에 httpd가 생성된걸 확인할 수 있다&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignRight&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;edited_edited_스크린샷 2024-10-27 160035.png&quot; data-origin-width=&quot;3000&quot; data-origin-height=&quot;1245&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bC3EdK/btsKnFXc1Xl/YuAtZ1hBEkKRxcb5km3H10/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bC3EdK/btsKnFXc1Xl/YuAtZ1hBEkKRxcb5km3H10/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bC3EdK/btsKnFXc1Xl/YuAtZ1hBEkKRxcb5km3H10/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbC3EdK%2FbtsKnFXc1Xl%2FYuAtZ1hBEkKRxcb5km3H10%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;3000&quot; height=&quot;1245&quot; data-filename=&quot;edited_edited_스크린샷 2024-10-27 160035.png&quot; data-origin-width=&quot;3000&quot; data-origin-height=&quot;1245&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;pre id=&quot;code_1730098028718&quot; class=&quot;java&quot; data-ke-language=&quot;java&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;docker run -d -p 8080:80 --name http-test httpd&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;images에서 run 버튼을 클릭하거나&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;터미널에서 명령어로 이미지를 실행시킨다&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이때 8080포트를 사용하고 있으면 실행이 안되니 사용중이지 않은 포트를 설정한다&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;edited_스크린샷 2024-10-27 160045.png&quot; data-origin-width=&quot;2130&quot; data-origin-height=&quot;1254&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/cLtaHQ/btsKmlMuH1h/Z4wUtmRbyos7CknDSYtCJK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/cLtaHQ/btsKmlMuH1h/Z4wUtmRbyos7CknDSYtCJK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/cLtaHQ/btsKmlMuH1h/Z4wUtmRbyos7CknDSYtCJK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FcLtaHQ%2FbtsKmlMuH1h%2FZ4wUtmRbyos7CknDSYtCJK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;500&quot; height=&quot;294&quot; data-filename=&quot;edited_스크린샷 2024-10-27 160045.png&quot; data-origin-width=&quot;2130&quot; data-origin-height=&quot;1254&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;정상실행이 됐다면! 웹에서 localhost:8080 에 접속해보자&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;동작됐다고 친절히 알려준다&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;스크린샷 2024-10-27 160951.png&quot; data-origin-width=&quot;2395&quot; data-origin-height=&quot;1673&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/UKVlA/btsKno9miQe/Oer6ZAThU0plsBdqdOn3q1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/UKVlA/btsKno9miQe/Oer6ZAThU0plsBdqdOn3q1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/UKVlA/btsKno9miQe/Oer6ZAThU0plsBdqdOn3q1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FUKVlA%2FbtsKno9miQe%2FOer6ZAThU0plsBdqdOn3q1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;2395&quot; height=&quot;1673&quot; data-filename=&quot;스크린샷 2024-10-27 160951.png&quot; data-origin-width=&quot;2395&quot; data-origin-height=&quot;1673&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;스크린샷 2024-10-27 161002.png&quot; data-origin-width=&quot;2404&quot; data-origin-height=&quot;1675&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/IdGbe/btsKl3Zlvf4/aUztumemZuQlL67QdhBeQk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/IdGbe/btsKl3Zlvf4/aUztumemZuQlL67QdhBeQk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/IdGbe/btsKl3Zlvf4/aUztumemZuQlL67QdhBeQk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FIdGbe%2FbtsKl3Zlvf4%2FaUztumemZuQlL67QdhBeQk%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;2404&quot; height=&quot;1675&quot; data-filename=&quot;스크린샷 2024-10-27 161002.png&quot; data-origin-width=&quot;2404&quot; data-origin-height=&quot;1675&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;기본으로 되어있긴 하지만 WSL 설정도 한번 확인해주자&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;Settings &amp;gt; General &amp;gt; Use the WSL 2 based engine&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;Settings &amp;gt; Resources &amp;gt; WSL integration &amp;gt; Enable integration with my default WSL distro&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;두가지 설정이 체크되어있어야 한다&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;Docker에 Jenkins 설치하기&lt;/h2&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;스크린샷 2024-10-27 161208.png&quot; data-origin-width=&quot;2472&quot; data-origin-height=&quot;1315&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/n25WU/btsKnlEMBBe/qPCDTNoGQxuM6EdZMmCYm0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/n25WU/btsKnlEMBBe/qPCDTNoGQxuM6EdZMmCYm0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/n25WU/btsKnlEMBBe/qPCDTNoGQxuM6EdZMmCYm0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fn25WU%2FbtsKnlEMBBe%2FqPCDTNoGQxuM6EdZMmCYm0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;2472&quot; height=&quot;1315&quot; data-filename=&quot;스크린샷 2024-10-27 161208.png&quot; data-origin-width=&quot;2472&quot; data-origin-height=&quot;1315&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://hub.docker.com/r/jenkins/jenkins&quot; target=&quot;_blank&quot; rel=&quot;noopener&amp;nbsp;noreferrer&quot;&gt;https://hub.docker.com/r/jenkins/jenkins&lt;/a&gt;&lt;/p&gt;
&lt;figure id=&quot;og_1730099526108&quot; contenteditable=&quot;false&quot; data-ke-type=&quot;opengraph&quot; data-ke-align=&quot;alignCenter&quot; data-og-type=&quot;website&quot; data-og-title=&quot;https://hub.docker.com/r/jenkins/jenkins&quot; data-og-description=&quot;&quot; data-og-host=&quot;hub.docker.com&quot; data-og-source-url=&quot;https://hub.docker.com/r/jenkins/jenkins&quot; data-og-url=&quot;https://hub.docker.com/r/jenkins/jenkins&quot; data-og-image=&quot;https://scrap.kakaocdn.net/dn/uKecA/hyXpqGk6LM/smnSKg2XLvG7A4fBpr6km0/img.png?width=3372&amp;amp;height=1896&amp;amp;face=0_0_3372_1896&quot;&gt;&lt;a href=&quot;https://hub.docker.com/r/jenkins/jenkins&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://hub.docker.com/r/jenkins/jenkins&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://scrap.kakaocdn.net/dn/uKecA/hyXpqGk6LM/smnSKg2XLvG7A4fBpr6km0/img.png?width=3372&amp;amp;height=1896&amp;amp;face=0_0_3372_1896');&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;og-text&quot;&gt;
&lt;p class=&quot;og-title&quot; data-ke-size=&quot;size16&quot;&gt;https://hub.docker.com/r/jenkins/jenkins&lt;/p&gt;
&lt;p class=&quot;og-desc&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p class=&quot;og-host&quot; data-ke-size=&quot;size16&quot;&gt;hub.docker.com&lt;/p&gt;
&lt;/div&gt;
&lt;/a&gt;&lt;/figure&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;도커허브에서 Jenkins 설치 명령어를 확인할 수 있다&lt;/p&gt;
&lt;pre id=&quot;code_1730099575060&quot; class=&quot;java&quot; data-ke-language=&quot;java&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;docker pull jenkins/jenkins&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;edited_스크린샷 2024-10-27 161227.png&quot; data-origin-width=&quot;1740&quot; data-origin-height=&quot;904&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bqSXge/btsKlWlVj7O/vTehAfcbgkpQ9k6pKmwew0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bqSXge/btsKlWlVj7O/vTehAfcbgkpQ9k6pKmwew0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bqSXge/btsKlWlVj7O/vTehAfcbgkpQ9k6pKmwew0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbqSXge%2FbtsKlWlVj7O%2FvTehAfcbgkpQ9k6pKmwew0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1740&quot; height=&quot;904&quot; data-filename=&quot;edited_스크린샷 2024-10-27 161227.png&quot; data-origin-width=&quot;1740&quot; data-origin-height=&quot;904&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;터미널에서 실행하면 쭉 설치가 되고&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://github.com/jenkinsci/docker/blob/master/README.md&quot;&gt;https://github.com/jenkinsci/docker/blob/master/README.md&lt;/a&gt;&lt;/p&gt;
&lt;figure id=&quot;og_1730099691590&quot; contenteditable=&quot;false&quot; data-ke-type=&quot;opengraph&quot; data-ke-align=&quot;alignCenter&quot; data-og-type=&quot;object&quot; data-og-title=&quot;docker/README.md at master &amp;middot; jenkinsci/docker&quot; data-og-description=&quot;Docker official jenkins repo. Contribute to jenkinsci/docker development by creating an account on GitHub.&quot; data-og-host=&quot;github.com&quot; data-og-source-url=&quot;https://github.com/jenkinsci/docker/blob/master/README.md&quot; data-og-url=&quot;https://github.com/jenkinsci/docker/blob/master/README.md&quot; data-og-image=&quot;https://scrap.kakaocdn.net/dn/bIjQn7/hyXpr6kxMp/OkkJWNLyHzoDtSKOH4dl5k/img.png?width=740&amp;amp;height=370&amp;amp;face=0_0_740_370,https://scrap.kakaocdn.net/dn/f925V/hyXpxlbazL/kkyKHjdTT9BYQfzkC1zN2k/img.png?width=740&amp;amp;height=370&amp;amp;face=0_0_740_370&quot;&gt;&lt;a href=&quot;https://github.com/jenkinsci/docker/blob/master/README.md&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://github.com/jenkinsci/docker/blob/master/README.md&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://scrap.kakaocdn.net/dn/bIjQn7/hyXpr6kxMp/OkkJWNLyHzoDtSKOH4dl5k/img.png?width=740&amp;amp;height=370&amp;amp;face=0_0_740_370,https://scrap.kakaocdn.net/dn/f925V/hyXpxlbazL/kkyKHjdTT9BYQfzkC1zN2k/img.png?width=740&amp;amp;height=370&amp;amp;face=0_0_740_370');&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;og-text&quot;&gt;
&lt;p class=&quot;og-title&quot; data-ke-size=&quot;size16&quot;&gt;docker/README.md at master &amp;middot; jenkinsci/docker&lt;/p&gt;
&lt;p class=&quot;og-desc&quot; data-ke-size=&quot;size16&quot;&gt;Docker official jenkins repo. Contribute to jenkinsci/docker development by creating an account on GitHub.&lt;/p&gt;
&lt;p class=&quot;og-host&quot; data-ke-size=&quot;size16&quot;&gt;github.com&lt;/p&gt;
&lt;/div&gt;
&lt;/a&gt;&lt;/figure&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;jenkins에서 실행 명령어를 제공한다&lt;/p&gt;
&lt;pre id=&quot;code_1730099768208&quot; class=&quot;java&quot; data-ke-language=&quot;java&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;docker run -p 8080:8080 -p 50000:50000 --restart=on-failure jenkins/jenkins:lts-jdk17&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;java는 필요한 버전으로 설정하자&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;edited_스크린샷 2024-10-27 163107.png&quot; data-origin-width=&quot;3000&quot; data-origin-height=&quot;1627&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bjfzW8/btsKl6BKLBs/mWzKjOkrxfUEp8lc7jpyr0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bjfzW8/btsKl6BKLBs/mWzKjOkrxfUEp8lc7jpyr0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bjfzW8/btsKl6BKLBs/mWzKjOkrxfUEp8lc7jpyr0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbjfzW8%2FbtsKl6BKLBs%2FmWzKjOkrxfUEp8lc7jpyr0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;3000&quot; height=&quot;1627&quot; data-filename=&quot;edited_스크린샷 2024-10-27 163107.png&quot; data-origin-width=&quot;3000&quot; data-origin-height=&quot;1627&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;Jenkins 컨테이너가 실행되면&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;하단에 비밀번호가 나온다&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;******************************************************************&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이 라인아래 누가봐도 비밀번호처럼 보이게 잘 강조해놨다&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;웹에서 localhost:8080 에 접속하고 Unlock Jnkins 화면이 보이면 해당 비밀번호를 입력한다&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이때 httpd 테스트 캐시가 남아있어서 &quot;It works!&quot;라고 적힌 페이지가 나온다면&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;웹 설정에서 캐시를 정리해주자&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;귀찮으면 그냥 시크릿탭 열어서 접속하면 된다&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;나는 귀찮았다&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imagegridblock&quot;&gt;
  &lt;div class=&quot;image-container&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/cyXE9j/btsKniacgfE/Ttwm2kKU3IRqak2I39iux0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/cyXE9j/btsKniacgfE/Ttwm2kKU3IRqak2I39iux0/img.png&quot; data-is-animation=&quot;false&quot; data-origin-width=&quot;1421&quot; data-origin-height=&quot;696&quot; data-filename=&quot;스크린샷 2024-10-27 163148.png&quot; style=&quot;width: 66.4137%; margin-right: 10px;&quot; data-widthpercent=&quot;67.2&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/cyXE9j/btsKniacgfE/Ttwm2kKU3IRqak2I39iux0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FcyXE9j%2FbtsKniacgfE%2FTtwm2kKU3IRqak2I39iux0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1421&quot; height=&quot;696&quot;/&gt;&lt;/span&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/7l98c/btsKmmEtaOw/HoogXQA0hQutMoreaOwqY1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/7l98c/btsKmmEtaOw/HoogXQA0hQutMoreaOwqY1/img.png&quot; data-is-animation=&quot;false&quot; data-origin-width=&quot;1227&quot; data-origin-height=&quot;1231&quot; data-filename=&quot;스크린샷 2024-10-27 163138.png&quot; style=&quot;width: 32.4235%;&quot; data-widthpercent=&quot;32.8&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/7l98c/btsKmmEtaOw/HoogXQA0hQutMoreaOwqY1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2F7l98c%2FbtsKmmEtaOw%2FHoogXQA0hQutMoreaOwqY1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1227&quot; height=&quot;1231&quot;/&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;왼쪽 버튼을 눌러서 설치해준다&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1126&quot; data-origin-height=&quot;964&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/5XmYp/btsKm53e7nH/ywkN7N93eBz3Mgg7uFhHtK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/5XmYp/btsKm53e7nH/ywkN7N93eBz3Mgg7uFhHtK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/5XmYp/btsKm53e7nH/ywkN7N93eBz3Mgg7uFhHtK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2F5XmYp%2FbtsKm53e7nH%2FywkN7N93eBz3Mgg7uFhHtK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;500&quot; height=&quot;428&quot; data-origin-width=&quot;1126&quot; data-origin-height=&quot;964&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;설치가 끝나면 사용할 계정을 설정한다&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;edited_스크린샷 2024-10-27 164033.png&quot; data-origin-width=&quot;2115&quot; data-origin-height=&quot;1254&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/briJbm/btsKl4qurLS/DafdFn5ValkqMbtbuZqydK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/briJbm/btsKl4qurLS/DafdFn5ValkqMbtbuZqydK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/briJbm/btsKl4qurLS/DafdFn5ValkqMbtbuZqydK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbriJbm%2FbtsKl4qurLS%2FDafdFn5ValkqMbtbuZqydK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;2115&quot; height=&quot;1254&quot; data-filename=&quot;edited_스크린샷 2024-10-27 164033.png&quot; data-origin-width=&quot;2115&quot; data-origin-height=&quot;1254&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;계정설정까지 끝나면&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이마 넓은 집사가 반겨준다&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;안녕하세요&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;여기까지 하면 Docker에 Jenkins 설치 완료&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;GitHub 토큰 발급하기&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;jenkins에서 github에 접근하기위해 토큰이 필요하다&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;스크린샷 2024-10-27 164757.png&quot; data-origin-width=&quot;1888&quot; data-origin-height=&quot;819&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/H29XX/btsKni2mLkb/vgMqbWlfY9gHMBcMNNemQK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/H29XX/btsKni2mLkb/vgMqbWlfY9gHMBcMNNemQK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/H29XX/btsKni2mLkb/vgMqbWlfY9gHMBcMNNemQK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FH29XX%2FbtsKni2mLkb%2FvgMqbWlfY9gHMBcMNNemQK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1888&quot; height=&quot;819&quot; data-filename=&quot;스크린샷 2024-10-27 164757.png&quot; data-origin-width=&quot;1888&quot; data-origin-height=&quot;819&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;GitHub 프로필 아이콘을 누르고&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;Settings &amp;gt; Developer settings 에 들어가서&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;classic 토큰을 생성해주면 된다&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;스크린샷 2024-10-28 164041.png&quot; data-origin-width=&quot;1218&quot; data-origin-height=&quot;1617&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/NGJHQ/btsKnSWtbfc/dlVwgSEdRl9h2xOGbhPnIK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/NGJHQ/btsKnSWtbfc/dlVwgSEdRl9h2xOGbhPnIK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/NGJHQ/btsKnSWtbfc/dlVwgSEdRl9h2xOGbhPnIK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FNGJHQ%2FbtsKnSWtbfc%2FdlVwgSEdRl9h2xOGbhPnIK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1218&quot; height=&quot;1617&quot; data-filename=&quot;스크린샷 2024-10-28 164041.png&quot; data-origin-width=&quot;1218&quot; data-origin-height=&quot;1617&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;토큰 만료기간은 없이설정하고&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;repo 관련 기능들을 체크한다&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;생성이 완료 됐다면 발급되는 키값을 복사해서 저장해두자&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;다시 보여주지 않는다 꼭 복사해두자..&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;복사한 값이 없으면 새로 발급해야한다&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이렇게 하면 토큰 발급도 완료&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;</description>
      <category>TIL</category>
      <author>everyday-spring</author>
      <guid isPermaLink="true">https://subin0522.tistory.com/628</guid>
      <comments>https://subin0522.tistory.com/628#entry628comment</comments>
      <pubDate>Mon, 28 Oct 2024 16:49:44 +0900</pubDate>
    </item>
    <item>
      <title>왜 시스템 이미지라고 할까? Docker 를 학습하며 궁금했다</title>
      <link>https://subin0522.tistory.com/627</link>
      <description>&lt;h4 style=&quot;text-align: center;&quot; data-ke-size=&quot;size20&quot;&gt;개발 공부를 하다보면 심심치않게 '이미지' 라는 단어를 사용한다&lt;/h4&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;KakaoTalk_20241019_235130017_16.jpg&quot; data-origin-width=&quot;4000&quot; data-origin-height=&quot;2252&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/ucMt1/btsKktjRJLv/QENkaTnr68gEm86Ooz64BK/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/ucMt1/btsKktjRJLv/QENkaTnr68gEm86Ooz64BK/img.jpg&quot; data-alt=&quot;무화과.. 어쩌고 샌드위치였다&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/ucMt1/btsKktjRJLv/QENkaTnr68gEm86Ooz64BK/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FucMt1%2FbtsKktjRJLv%2FQENkaTnr68gEm86Ooz64BK%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;400&quot; height=&quot;225&quot; data-filename=&quot;KakaoTalk_20241019_235130017_16.jpg&quot; data-origin-width=&quot;4000&quot; data-origin-height=&quot;2252&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;무화과.. 어쩌고 샌드위치였다&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;text-align: center;&quot; data-ke-size=&quot;size16&quot;&gt;이런 밥먹고 인증샷 찍는 찰칵 이미지가 아닌!!!&lt;/p&gt;
&lt;p style=&quot;text-align: center;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: center;&quot; data-ke-size=&quot;size16&quot;&gt;시스템 이미지&lt;/p&gt;
&lt;p style=&quot;text-align: center;&quot; data-ke-size=&quot;size16&quot;&gt;Docker 이미지&lt;/p&gt;
&lt;p style=&quot;text-align: center;&quot; data-ke-size=&quot;size16&quot;&gt;AWS 인스턴스 이미지&lt;/p&gt;
&lt;p style=&quot;text-align: center;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: center;&quot; data-ke-size=&quot;size16&quot;&gt;등등&lt;/p&gt;
&lt;p style=&quot;text-align: center;&quot; data-ke-size=&quot;size16&quot;&gt;주로 환경에 대한 버전, 설정들을 저장하는 파일이다&lt;/p&gt;
&lt;p style=&quot;text-align: center;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: center;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 style=&quot;text-align: center;&quot; data-ke-size=&quot;size26&quot;&gt;&lt;b&gt; &lt;/b&gt;&lt;/h2&gt;
&lt;p style=&quot;text-align: center;&quot; data-ke-size=&quot;size16&quot;&gt;근데 왜... 이미지라고 해요?&lt;/p&gt;
&lt;p style=&quot;text-align: center;&quot; data-ke-size=&quot;size16&quot;&gt;모든 PC가 C드라이브를 사용하는 것처럼!!&lt;/p&gt;
&lt;p style=&quot;text-align: center;&quot; data-ke-size=&quot;size16&quot;&gt;뭔가 아하! 하는 재밌는 이유가 있지 않을까? 하는 생각이 들었다&lt;/p&gt;
&lt;p style=&quot;text-align: center;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;div data-ke-type=&quot;moreLess&quot; data-text-more=&quot;더보기&quot; data-text-less=&quot;닫기&quot;&gt;&lt;a class=&quot;btn-toggle-moreless&quot;&gt;더보기&lt;/a&gt;
&lt;div class=&quot;moreless-content&quot;&gt;
&lt;p style=&quot;text-align: center;&quot; data-ke-size=&quot;size16&quot;&gt;알파벳 순으로 A,B,C .. 순으로 드라이브의 이름이 붙었지만&lt;/p&gt;
&lt;p style=&quot;text-align: center;&quot; data-ke-size=&quot;size16&quot;&gt;A, B 드라이브는 현재 사용하지 않는 플로피 디스크였기 때문에&lt;/p&gt;
&lt;p style=&quot;text-align: center;&quot; data-ke-size=&quot;size16&quot;&gt;현대의 pc는 다 C드라이브로 시작한다!&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: center;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: center;&quot; data-ke-size=&quot;size16&quot;&gt;USB-C 타입도 비슷한 맥락!&lt;/p&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p style=&quot;text-align: center;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: center;&quot; data-ke-size=&quot;size16&quot;&gt;그래서 시스템 이미지에 대해 검색하다가 딱 꽂힌 단어&lt;/p&gt;
&lt;h4 style=&quot;text-align: center;&quot; data-ke-size=&quot;size20&quot;&gt;&lt;b&gt;! 스냅샷 !&lt;/b&gt;&lt;/h4&gt;
&lt;p style=&quot;text-align: center;&quot; data-ke-size=&quot;size16&quot;&gt;마치 스크린샷 처럼 특정 순간의 시스템의 정보를 스크린샷처럼 찰칵! 찍어 움직이지 않는 이미지 처럼 저장한 것이다&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: center;&quot; data-ke-size=&quot;size16&quot;&gt;오호..&lt;/p&gt;
&lt;p style=&quot;text-align: center;&quot; data-ke-size=&quot;size16&quot;&gt;스냅샷이라는 단어와 같이 생각하니까 명확하게 이해가 됐다!&lt;/p&gt;
&lt;p style=&quot;text-align: center;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 style=&quot;text-align: center;&quot; data-ke-size=&quot;size26&quot;&gt;&lt;span style=&quot;background-color: #ffffff; color: #4d5156; text-align: left;&quot;&gt; &lt;/span&gt;&lt;/h2&gt;
&lt;p style=&quot;text-align: center;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;background-color: #ffffff; color: #4d5156; text-align: left;&quot;&gt;여기보세요 ~ 찍겠습니다! 하면!&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;text-align: center;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: center;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 style=&quot;text-align: center;&quot; data-ke-size=&quot;size26&quot;&gt;&lt;span style=&quot;background-color: #ffffff; color: #4d5156; text-align: left;&quot;&gt; ️&lt;/span&gt;&lt;/h2&gt;
&lt;p&gt;&lt;span style=&quot;color: #4d5156;&quot;&gt;&lt;span style=&quot;background-color: #ffffff;&quot;&gt; &lt;span style=&quot;background-color: #ffffff; color: #4d5156; text-align: left;&quot;&gt;이미지에는&lt;/span&gt; 자바, 스프링, MySQL, OS 등의 다양한 시스템 설정, 버전이 저장된다!&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;text-align: center;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: center;&quot; data-ke-size=&quot;size16&quot;&gt;개념공부하다가 재미있는 깨달음을 간단하게 적어봤다&lt;/p&gt;
&lt;p style=&quot;text-align: center;&quot; data-ke-size=&quot;size16&quot;&gt;아 재밌어!&lt;/p&gt;</description>
      <category>TIL</category>
      <author>everyday-spring</author>
      <guid isPermaLink="true">https://subin0522.tistory.com/627</guid>
      <comments>https://subin0522.tistory.com/627#entry627comment</comments>
      <pubDate>Sun, 27 Oct 2024 15:31:57 +0900</pubDate>
    </item>
    <item>
      <title>지랄 아니고요 지라입니다 Jira로 프로젝트 관리하기 Github 연동</title>
      <link>https://subin0522.tistory.com/626</link>
      <description>&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;2326&quot; data-origin-height=&quot;1774&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/mSHA0/btsKkbDSJgu/fKgXyK0I07ICL9phXZNukk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/mSHA0/btsKkbDSJgu/fKgXyK0I07ICL9phXZNukk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/mSHA0/btsKkbDSJgu/fKgXyK0I07ICL9phXZNukk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FmSHA0%2FbtsKkbDSJgu%2FfKgXyK0I07ICL9phXZNukk%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;2326&quot; height=&quot;1774&quot; data-origin-width=&quot;2326&quot; data-origin-height=&quot;1774&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;좀더 효율적인 프로젝트 관리를 위해서!&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;Jira를 도입했습니다...&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;Jira는 프로젝트 관리 툴로&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;프로젝트를 진행하면서 해결해야할 작업들을 등록하고 공유할 수 있다&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;각 작업별 목표 작업기간 설정이 가능하고&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;담당자, 작업상태, 보고자 등을 지정할 수 있다&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;협업을 하는 팀원들이 서로 지금 어느상황인지 파악을 빠르게 할 수있어서 굉장히 좋다&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;팀원 10명까지 무료&lt;/b&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;964&quot; data-origin-height=&quot;728&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/TqTqM/btsKmlqZNBE/r8hYE5wxPw0KIdeehnDBA0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/TqTqM/btsKmlqZNBE/r8hYE5wxPw0KIdeehnDBA0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/TqTqM/btsKmlqZNBE/r8hYE5wxPw0KIdeehnDBA0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FTqTqM%2FbtsKmlqZNBE%2Fr8hYE5wxPw0KIdeehnDBA0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;500&quot; height=&quot;378&quot; data-origin-width=&quot;964&quot; data-origin-height=&quot;728&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;Github을 연결해 까리쌈뽕하게 작업에 대한 버전 확인도 가능하다&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1888&quot; data-origin-height=&quot;1573&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bwqv7j/btsKkYqbRcr/OzbQjXQoGyJm2z6gUPUGTK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bwqv7j/btsKkYqbRcr/OzbQjXQoGyJm2z6gUPUGTK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bwqv7j/btsKkYqbRcr/OzbQjXQoGyJm2z6gUPUGTK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fbwqv7j%2FbtsKkYqbRcr%2FOzbQjXQoGyJm2z6gUPUGTK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;500&quot; height=&quot;417&quot; data-origin-width=&quot;1888&quot; data-origin-height=&quot;1573&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;Jira Github 연동을 하면 이슈에 대해 브랜치와 커밋을 만들 수있다!&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;폼에 맞게 브랜치명과 커밋명을 맞춰서 작성하면&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;자동으로 연동되어 jira에서 조회가 가능하다&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;아름다워...&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1728&quot; data-origin-height=&quot;1628&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bCkA46/btsKk8NaIok/t78bOKlhMaoRnPKk5k1k3k/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bCkA46/btsKk8NaIok/t78bOKlhMaoRnPKk5k1k3k/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bCkA46/btsKk8NaIok/t78bOKlhMaoRnPKk5k1k3k/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbCkA46%2FbtsKk8NaIok%2Ft78bOKlhMaoRnPKk5k1k3k%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1728&quot; height=&quot;1628&quot; data-origin-width=&quot;1728&quot; data-origin-height=&quot;1628&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;사실 사용했던게... 2년.. 이상 전이라&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;기억을 더듬어가며 구성을 맞춰봤다...&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;844&quot; data-origin-height=&quot;1740&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/8a6CE/btsKlwUlvdS/JQqbK97PLA2SSUQ0DZWrs0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/8a6CE/btsKlwUlvdS/JQqbK97PLA2SSUQ0DZWrs0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/8a6CE/btsKlwUlvdS/JQqbK97PLA2SSUQ0DZWrs0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2F8a6CE%2FbtsKlwUlvdS%2FJQqbK97PLA2SSUQ0DZWrs0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;844&quot; height=&quot;1740&quot; data-origin-width=&quot;844&quot; data-origin-height=&quot;1740&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;Jira 사용이 처음인 팀원들을 위해 나름의 가이드도 적어봤다&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;</description>
      <category>TIL</category>
      <author>everyday-spring</author>
      <guid isPermaLink="true">https://subin0522.tistory.com/626</guid>
      <comments>https://subin0522.tistory.com/626#entry626comment</comments>
      <pubDate>Sun, 27 Oct 2024 00:23:56 +0900</pubDate>
    </item>
  </channel>
</rss>