<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0">
  <channel>
    <title>개발자의 축구 기행문</title>
    <link>https://gabrielyj.tistory.com/</link>
    <description>여러 도시를 여행하며 축구 경기장을 탐험(?) 하는 개발자입니다.</description>
    <language>ko</language>
    <pubDate>Wed, 8 Apr 2026 12:11:53 +0900</pubDate>
    <generator>TISTORY</generator>
    <ttl>100</ttl>
    <managingEditor>성남FC</managingEditor>
    <image>
      <title>개발자의 축구 기행문</title>
      <url>https://tistory1.daumcdn.net/tistory/1986824/attach/e98bedd3c4524bb08680830bc2cedda2</url>
      <link>https://gabrielyj.tistory.com</link>
    </image>
    <item>
      <title>[VS Code] VS Code IDE에서 Spring boot 프로젝트 특정 profile 선택해서 실행하기</title>
      <link>https://gabrielyj.tistory.com/237</link>
      <description>&lt;h3 data-end=&quot;154&quot; data-start=&quot;100&quot; data-ke-size=&quot;size23&quot;&gt;&lt;b&gt;VS Code에서 Spring Boot 애플리케이션 실행 시 프로파일 선택하는 방법&lt;/b&gt;&lt;/h3&gt;
&lt;p data-end=&quot;294&quot; data-start=&quot;156&quot; data-ke-size=&quot;size18&quot;&gt;VS Code에서 Spring Boot 애플리케이션을 실행할 때, 특정 프로파일을 선택하여 애플리케이션을 실행하려면 몇 가지 설정을 해줘야 합니다. 이 글에서는 launch.json 파일을 수정하여 실행할 프로파일을 선택하는 방법을 설명합니다.&lt;/p&gt;
&lt;p data-end=&quot;294&quot; data-start=&quot;156&quot; data-ke-size=&quot;size18&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h4 data-end=&quot;330&quot; data-start=&quot;296&quot; data-ke-size=&quot;size20&quot;&gt;&lt;b&gt;launch.json 설정 파일 수정&lt;/b&gt;&lt;/h4&gt;
&lt;p data-end=&quot;417&quot; data-start=&quot;334&quot; data-ke-size=&quot;size18&quot;&gt;VS Code에서 Spring Boot 애플리케이션을 실행할 때 사용할 프로파일을 설정하려면, 먼저 launch.json 파일을 수정해야 합니다.&lt;/p&gt;
&lt;ol style=&quot;list-style-type: decimal;&quot; data-end=&quot;549&quot; data-start=&quot;422&quot; data-ke-list-type=&quot;decimal&quot;&gt;
&lt;li data-end=&quot;452&quot; data-start=&quot;422&quot;&gt;&lt;b&gt;Run and Debug 탭&lt;/b&gt;을 클릭합니다.&lt;/li&gt;
&lt;li data-end=&quot;549&quot; data-start=&quot;456&quot;&gt;&lt;b&gt;Create a launch.json file&lt;/b&gt;을 선택하고, spring-boot 템플릿을 선택하거나 기존의 launch.json 파일을 수정합니다.&lt;/li&gt;
&lt;/ol&gt;
&lt;p data-end=&quot;582&quot; data-start=&quot;551&quot; data-ke-size=&quot;size18&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h4 data-end=&quot;582&quot; data-start=&quot;551&quot; data-ke-size=&quot;size20&quot;&gt;&lt;b&gt;launch.json 설정 예시&lt;/b&gt;&lt;/h4&gt;
&lt;p data-end=&quot;684&quot; data-start=&quot;587&quot; data-ke-size=&quot;size18&quot;&gt;launch.json 파일을 다음과 같이 수정합니다. 이 예시에서는 SPRING_PROFILES_ACTIVE 환경변수를 사용해 dev 프로파일을 설정하고 있습니다.&lt;/p&gt;
&lt;pre id=&quot;code_1745835625435&quot; class=&quot;bash&quot; data-ke-language=&quot;bash&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;{
  &quot;version&quot;: &quot;0.2.0&quot;,
  &quot;configurations&quot;: [
    {
      &quot;name&quot;: &quot;Spring Boot&quot;,
      &quot;type&quot;: &quot;java&quot;,
      &quot;request&quot;: &quot;launch&quot;,
      &quot;mainClass&quot;: &quot;com.example.MainApplication&quot;,
      &quot;env&quot;: {
        &quot;SPRING_PROFILES_ACTIVE&quot;: &quot;dev&quot;  // 원하는 프로파일 (dev, prd 등)로 설정
      }
    }
  ]
}&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;</description>
      <category>Programming/기타</category>
      <category>Active</category>
      <category>code</category>
      <category>profile</category>
      <category>studio</category>
      <category>Visual</category>
      <category>vs</category>
      <category>부트</category>
      <category>스프링</category>
      <category>프로필</category>
      <author>성남FC</author>
      <guid isPermaLink="true">https://gabrielyj.tistory.com/237</guid>
      <comments>https://gabrielyj.tistory.com/237#entry237comment</comments>
      <pubDate>Mon, 28 Apr 2025 19:21:09 +0900</pubDate>
    </item>
    <item>
      <title>[윈도우] 영구적으로 PowerShell 인코딩 UTF-8 설정</title>
      <link>https://gabrielyj.tistory.com/236</link>
      <description>&lt;p data-ke-size=&quot;size16&quot;&gt;PowerShell 프로필 스크립트($PROFILE)에 설정을 추가하면 매번 실행할 필요 없이 자동으로 인코딩이 UTF-8이 적용됩니다.&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;&lt;b&gt;1. 프로필 스크립트 확인 및 생성&lt;/b&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;먼저, 프로필 스크립트가 있는지 확인하고, 없으면 생성합니다.&lt;/p&gt;
&lt;pre class=&quot;coq&quot;&gt;&lt;code&gt;if (!(Test-Path $PROFILE)) { New-Item -Path $PROFILE -ItemType File -Force }
&lt;/code&gt;&lt;/pre&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;&lt;b&gt;2. 프로필 파일에 UTF-8 설정 추가&lt;/b&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;프로필 파일을 열어서 UTF-8 설정을 추가해야 합니다.&lt;/p&gt;
&lt;pre class=&quot;nginx&quot;&gt;&lt;code&gt;notepad $PROFILE
&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;위 명령어를 실행하면 notepad가 열립니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그 안에 아래 내용을 추가하고 저장하세요.&lt;/p&gt;
&lt;pre class=&quot;elixir&quot;&gt;&lt;code&gt;[Console]::OutputEncoding = [System.Text.Encoding]::UTF8
$PSDefaultParameterValues['Out-File:Encoding'] = 'utf8'
&lt;/code&gt;&lt;/pre&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;&lt;b&gt;3. 변경 사항 적용&lt;/b&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이제 PowerShell을 닫고 다시 실행하면 자동으로 UTF-8 인코딩이 적용됩니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;즉, 새 PowerShell 창을 열더라도 한글이 깨지지 않습니다.&lt;/b&gt;&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;&lt;b&gt;4. 스크립트 적용&lt;/b&gt;&lt;/h3&gt;
&lt;pre class=&quot;coq&quot;&gt;&lt;code&gt;Set-ExecutionPolicy RemoteSigned -Scope CurrentUser
&lt;/code&gt;&lt;/pre&gt;</description>
      <category>Programming/기타</category>
      <category>Encoding</category>
      <category>PowerShell</category>
      <category>utf</category>
      <category>utf-8</category>
      <category>window</category>
      <category>스크립트</category>
      <category>윈도우</category>
      <category>인코딩</category>
      <author>성남FC</author>
      <guid isPermaLink="true">https://gabrielyj.tistory.com/236</guid>
      <comments>https://gabrielyj.tistory.com/236#entry236comment</comments>
      <pubDate>Fri, 18 Apr 2025 13:00:01 +0900</pubDate>
    </item>
    <item>
      <title>[Github] Git Push fatal:Authentication failed for 'url' In a case you entered incorrect password, please update it in Keychain Access application.</title>
      <link>https://gabrielyj.tistory.com/235</link>
      <description>&lt;blockquote data-ke-style=&quot;style2&quot;&gt;Pushing to https://github.com/myid/myrepo.git&lt;br /&gt;remote: Support for password authentication was removed on August 13, 2021.&lt;br /&gt;remote: Please see https://docs.github.com/get-started/getting-started-with-git/about-remote-repositories#cloning-with-https-urls for information on currently recommended modes of authentication.&lt;br /&gt;fatal:Authentication failed for 'https://github.com/myid/myrepo.git/' In a case you entered incorrect password, please update it in Keychain Access application.&lt;/blockquote&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에 push 했습니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그런데 해당 에러가 발생하며 push 가 안되는 현상이 발생하여, push가 완료되지 않았습니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;분명히 예전에 기한 제한 없이 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;하지만, 막상 Github에 들어가보니, 지난번에 생성한 token 들이 모두 만료되었네요 ㅎㅎ&lt;/p&gt;
&lt;blockquote data-ke-style=&quot;style3&quot;&gt;This token has expired&lt;/blockquote&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1606&quot; data-origin-height=&quot;514&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bMq2Vo/btsNi9WBnSa/0dXIkdRMgnVwQrYHzuVmMk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bMq2Vo/btsNi9WBnSa/0dXIkdRMgnVwQrYHzuVmMk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bMq2Vo/btsNi9WBnSa/0dXIkdRMgnVwQrYHzuVmMk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbMq2Vo%2FbtsNi9WBnSa%2F0dXIkdRMgnVwQrYHzuVmMk%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;1606&quot; height=&quot;514&quot; data-origin-width=&quot;1606&quot; data-origin-height=&quot;514&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;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;&amp;nbsp;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;</description>
      <category>Programming/기타</category>
      <category>authentication</category>
      <category>git</category>
      <category>Keychain</category>
      <category>pat</category>
      <category>Push</category>
      <category>pushing</category>
      <category>오류</category>
      <author>성남FC</author>
      <guid isPermaLink="true">https://gabrielyj.tistory.com/235</guid>
      <comments>https://gabrielyj.tistory.com/235#entry235comment</comments>
      <pubDate>Thu, 17 Apr 2025 15:26:45 +0900</pubDate>
    </item>
    <item>
      <title>[Github] Personal Access Token 생성 방법</title>
      <link>https://gabrielyj.tistory.com/234</link>
      <description>&lt;blockquote data-ke-style=&quot;style2&quot;&gt;&lt;span style=&quot;font-family: AppleSDGothicNeo-Regular, 'Malgun Gothic', '맑은 고딕', dotum, 돋움, sans-serif;&quot;&gt;Username for 'https://github.com': myid&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;font-family: AppleSDGothicNeo-Regular, 'Malgun Gothic', '맑은 고딕', dotum, 돋움, sans-serif;&quot;&gt;Password for 'https://myid@github.com' :&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;font-family: AppleSDGothicNeo-Regular, 'Malgun Gothic', '맑은 고딕', dotum, 돋움, sans-serif;&quot;&gt;remote: Support for password authentication was removed on August 13, 2021. &lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;font-family: AppleSDGothicNeo-Regular, 'Malgun Gothic', '맑은 고딕', dotum, 돋움, sans-serif;&quot;&gt;remote: Please see https://github.blog/2020-12-15-token-authentication-requirements-for-git-operations/ fatal: Authentication failed for 'https://github.com/myid/myrepo.git/'&lt;/span&gt;&lt;/blockquote&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;font-family: AppleSDGothicNeo-Regular, 'Malgun Gothic', '맑은 고딕', dotum, 돋움, sans-serif;&quot;&gt;프로젝트에 최초로 git init을 한 경우, 이후 GitHub의 origin 저장소에 push를 시도하면 인증 관련 에러가 발생할 수 있습니다.&lt;/span&gt;&lt;/p&gt;
&lt;p data-end=&quot;295&quot; data-start=&quot;186&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: AppleSDGothicNeo-Regular, 'Malgun Gothic', '맑은 고딕', dotum, 돋움, sans-serif;&quot;&gt;이는 GitHub에서 &lt;b&gt;2021년 8월부로 비밀번호 인증을 더 이상 지원하지 않고&lt;/b&gt;, 대신 &lt;b&gt;Personal Access Token(PAT)&lt;/b&gt; 을 사용하여 인증하도록 변경되었기 때문입니다.&lt;/span&gt;&lt;/p&gt;
&lt;p data-end=&quot;351&quot; data-start=&quot;297&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: AppleSDGothicNeo-Regular, 'Malgun Gothic', '맑은 고딕', dotum, 돋움, sans-serif;&quot;&gt;따라서 GitHub 홈페이지에서 새로운 토큰을 발급받고, 이를 로컬 Git에 연동해주어야 합니다.&lt;/span&gt;&lt;/p&gt;
&lt;p data-end=&quot;370&quot; data-start=&quot;353&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: AppleSDGothicNeo-Regular, 'Malgun Gothic', '맑은 고딕', dotum, 돋움, sans-serif;&quot;&gt;아래 내용을 따라 진행해주세요.&lt;/span&gt;&lt;/p&gt;
&lt;p data-end=&quot;370&quot; data-start=&quot;353&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h3 data-end=&quot;175&quot; data-start=&quot;126&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-family: AppleSDGothicNeo-Regular, 'Malgun Gothic', '맑은 고딕', dotum, 돋움, sans-serif;&quot;&gt;✅ 새로운 Personal Access Token 생성 방법 (Classic 방식)&lt;/span&gt;&lt;/h3&gt;
&lt;ol style=&quot;list-style-type: decimal;&quot; data-end=&quot;367&quot; data-start=&quot;177&quot; data-ke-list-type=&quot;decimal&quot;&gt;
&lt;li data-end=&quot;199&quot; data-start=&quot;177&quot;&gt;&lt;span style=&quot;font-family: AppleSDGothicNeo-Regular, 'Malgun Gothic', '맑은 고딕', dotum, 돋움, sans-serif;&quot;&gt;&lt;b&gt;GitHub 접속 &amp;rarr; 로그인&lt;/b&gt;&lt;/span&gt;&lt;/li&gt;
&lt;li data-end=&quot;230&quot; data-start=&quot;200&quot;&gt;&lt;span style=&quot;font-family: AppleSDGothicNeo-Regular, 'Malgun Gothic', '맑은 고딕', dotum, 돋움, sans-serif;&quot;&gt;우측 상단 프로필 클릭 &amp;rarr; &lt;b&gt;Settings&lt;/b&gt;&lt;/span&gt;&lt;/li&gt;
&lt;li data-end=&quot;274&quot; data-start=&quot;231&quot;&gt;&lt;span style=&quot;font-family: AppleSDGothicNeo-Regular, 'Malgun Gothic', '맑은 고딕', dotum, 돋움, sans-serif;&quot;&gt;좌측 메뉴에서 아래로 스크롤 &amp;rarr; &lt;b&gt;Developer settings&lt;/b&gt;&lt;/span&gt;&lt;/li&gt;
&lt;li data-end=&quot;330&quot; data-start=&quot;275&quot;&gt;&lt;span style=&quot;font-family: AppleSDGothicNeo-Regular, 'Malgun Gothic', '맑은 고딕', dotum, 돋움, sans-serif;&quot;&gt;&lt;b&gt;Personal access tokens&lt;/b&gt; &amp;rarr; &lt;b&gt;Fine-grained tokens&lt;/b&gt;&amp;nbsp;선택&lt;/span&gt;&lt;/li&gt;
&lt;li data-end=&quot;367&quot; data-start=&quot;331&quot;&gt;&lt;span style=&quot;font-family: AppleSDGothicNeo-Regular, 'Malgun Gothic', '맑은 고딕', dotum, 돋움, sans-serif;&quot;&gt;우측 상단 &lt;b&gt;&quot;Generate new token&quot;&lt;/b&gt; 클릭&lt;/span&gt;&lt;span style=&quot;font-family: AppleSDGothicNeo-Regular, 'Malgun Gothic', '맑은 고딕', dotum, 돋움, sans-serif;&quot;&gt;&lt;/span&gt;&lt;/li&gt;
&lt;/ol&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h3 data-end=&quot;387&quot; data-start=&quot;374&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;font-family: AppleSDGothicNeo-Regular, 'Malgun Gothic', '맑은 고딕', dotum, 돋움, sans-serif;&quot;&gt;  설정할 항목들&lt;/span&gt;&lt;/h3&gt;
&lt;p data-end=&quot;408&quot; data-start=&quot;389&quot; data-ke-size=&quot;size18&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: AppleSDGothicNeo-Regular, 'Malgun Gothic', '맑은 고딕', dotum, 돋움, sans-serif;&quot;&gt;1. Token name (이름)&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li data-end=&quot;408&quot; data-start=&quot;389&quot;&gt;예: study-token&lt;/li&gt;
&lt;/ul&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size18&quot; data-start=&quot;389&quot; data-end=&quot;408&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: AppleSDGothicNeo-Regular, 'Malgun Gothic', '맑은 고딕', dotum, 돋움, sans-serif;&quot;&gt;2. Resource owner&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li data-start=&quot;389&quot; data-end=&quot;408&quot;&gt;로그인된 계정 및 추가 사용자&lt;/li&gt;
&lt;/ul&gt;
&lt;p data-end=&quot;478&quot; data-start=&quot;452&quot; data-ke-size=&quot;size18&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: AppleSDGothicNeo-Regular, 'Malgun Gothic', '맑은 고딕', dotum, 돋움, sans-serif;&quot;&gt;3. Expiration (만료일)&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-end=&quot;535&quot; data-start=&quot;479&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li data-end=&quot;535&quot; data-start=&quot;479&quot;&gt;&lt;span style=&quot;font-family: AppleSDGothicNeo-Regular, 'Malgun Gothic', '맑은 고딕', dotum, 돋움, sans-serif;&quot;&gt;90일, 180일, 1년, 또는 No expiration (보안상 90일 추천)&lt;/span&gt;&lt;/li&gt;
&lt;li data-end=&quot;535&quot; data-start=&quot;479&quot;&gt;&lt;span style=&quot;font-family: AppleSDGothicNeo-Regular, 'Malgun Gothic', '맑은 고딕', dotum, 돋움, sans-serif;&quot;&gt;개인 스터디 용으로 사용 시 'No expiration'도 사용가능하긴 합니다.&lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p data-end=&quot;579&quot; data-start=&quot;537&quot; data-ke-size=&quot;size18&quot;&gt;&lt;span style=&quot;font-family: AppleSDGothicNeo-Regular, 'Malgun Gothic', '맑은 고딕', dotum, 돋움, sans-serif;&quot;&gt;&lt;b&gt;4. Repository access (저장소 접근 권한)&lt;/b&gt;&lt;/span&gt;&lt;span style=&quot;font-family: AppleSDGothicNeo-Regular, 'Malgun Gothic', '맑은 고딕', dotum, 돋움, sans-serif;&quot;&gt;&lt;/span&gt;&lt;/p&gt;
&lt;div&gt;
&lt;table style=&quot;border-collapse: collapse; width: 100%;&quot; border=&quot;1&quot; data-end=&quot;1567&quot; data-start=&quot;1095&quot; data-ke-align=&quot;alignLeft&quot;&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td style=&quot;width: 24.186%;&quot;&gt;&lt;b&gt;옵션&lt;/b&gt;&lt;/td&gt;
&lt;td style=&quot;width: 27.6744%;&quot;&gt;&lt;b&gt;접근 대상&lt;/b&gt;&lt;/td&gt;
&lt;td style=&quot;width: 11.5116%;&quot;&gt;&lt;b&gt;비공개 접근&lt;/b&gt;&lt;/td&gt;
&lt;td style=&quot;width: 8.7209%;&quot;&gt;&lt;b&gt;자동 확장&lt;/b&gt;&lt;/td&gt;
&lt;td style=&quot;width: 27.907%;&quot;&gt;&lt;b&gt;권장 사항&lt;/b&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr data-end=&quot;1376&quot; data-start=&quot;1285&quot;&gt;
&lt;td style=&quot;width: 24.186%;&quot; data-end=&quot;1312&quot; data-start=&quot;1285&quot;&gt;Public repositories&lt;/td&gt;
&lt;td style=&quot;width: 27.6744%;&quot; data-end=&quot;1338&quot; data-start=&quot;1312&quot;&gt;본인 포함 모든 공개 저장소&lt;/td&gt;
&lt;td style=&quot;width: 11.5116%;&quot; data-end=&quot;1351&quot; data-start=&quot;1338&quot;&gt;❌&lt;/td&gt;
&lt;td style=&quot;width: 8.7209%;&quot; data-end=&quot;1363&quot; data-start=&quot;1351&quot;&gt;N/A&lt;/td&gt;
&lt;td style=&quot;width: 27.907%;&quot; data-end=&quot;1376&quot; data-start=&quot;1363&quot;&gt;단순 열람, 클론&lt;/td&gt;
&lt;/tr&gt;
&lt;tr data-end=&quot;1471&quot; data-start=&quot;1377&quot;&gt;
&lt;td style=&quot;width: 24.186%;&quot; data-end=&quot;1404&quot; data-start=&quot;1377&quot;&gt;All repositories&lt;/td&gt;
&lt;td style=&quot;width: 27.6744%;&quot; data-end=&quot;1428&quot; data-start=&quot;1404&quot;&gt;현재 + 앞으로 생성할 저장소 전체&lt;/td&gt;
&lt;td style=&quot;width: 11.5116%;&quot; data-end=&quot;1441&quot; data-start=&quot;1428&quot;&gt;✅&lt;/td&gt;
&lt;td style=&quot;width: 8.7209%;&quot; data-end=&quot;1452&quot; data-start=&quot;1441&quot;&gt;✅&lt;/td&gt;
&lt;td style=&quot;width: 27.907%;&quot; data-end=&quot;1471&quot; data-start=&quot;1452&quot;&gt;모든 프로젝트에 활용할 토큰&lt;/td&gt;
&lt;/tr&gt;
&lt;tr data-end=&quot;1567&quot; data-start=&quot;1472&quot;&gt;
&lt;td style=&quot;width: 24.186%;&quot; data-end=&quot;1499&quot; data-start=&quot;1472&quot;&gt;Only select repositories&lt;/td&gt;
&lt;td style=&quot;width: 27.6744%;&quot; data-end=&quot;1527&quot; data-start=&quot;1499&quot;&gt;선택한 저장소(최대 50개)&lt;/td&gt;
&lt;td style=&quot;width: 11.5116%;&quot; data-end=&quot;1540&quot; data-start=&quot;1527&quot;&gt;✅&lt;/td&gt;
&lt;td style=&quot;width: 8.7209%;&quot; data-end=&quot;1551&quot; data-start=&quot;1540&quot;&gt;❌&lt;/td&gt;
&lt;td style=&quot;width: 27.907%;&quot; data-end=&quot;1567&quot; data-start=&quot;1551&quot;&gt;제한적 접근, 외부앱용&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;
&lt;p data-end=&quot;2190&quot; data-start=&quot;2172&quot; data-ke-size=&quot;size18&quot;&gt;&lt;b&gt;최소 권한 설정 방법&lt;/b&gt;&lt;/p&gt;
&lt;ol style=&quot;list-style-type: decimal;&quot; data-end=&quot;2486&quot; data-start=&quot;2192&quot; data-ke-list-type=&quot;decimal&quot;&gt;
&lt;li data-end=&quot;2378&quot; data-start=&quot;2192&quot;&gt;&lt;b&gt;Repository Permissions&lt;/b&gt;:
&lt;ul style=&quot;list-style-type: disc;&quot; data-end=&quot;2378&quot; data-start=&quot;2226&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li data-end=&quot;2293&quot; data-start=&quot;2226&quot;&gt;기본적으로 Contents, Issues, Pull requests 권한을 선택하면 대부분의 작업 가능&lt;/li&gt;
&lt;li data-end=&quot;2378&quot; data-start=&quot;2297&quot;&gt;추가적으로 &lt;b&gt;CI/CD&lt;/b&gt;가 필요하면 Actions, &lt;b&gt;보안 관리&lt;/b&gt;가 필요하면 Code scanning alerts 권한 추가&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li data-end=&quot;2486&quot; data-start=&quot;2380&quot;&gt;&lt;b&gt;Account Permissions&lt;/b&gt;:
&lt;ul style=&quot;list-style-type: disc;&quot; data-end=&quot;2486&quot; data-start=&quot;2411&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li data-end=&quot;2486&quot; data-start=&quot;2411&quot;&gt;대부분의 경우 &lt;b&gt;기본적인 계정 권한&lt;/b&gt;만 필요하므로, Profile, Email addresses 정도만 선택하면 충분합니다.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이후 'Generate token' 클릭 시 아래처럼 새로운 토큰이 생성됩니다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;스크린샷 2025-04-12 14.25.06.png&quot; data-origin-width=&quot;1564&quot; data-origin-height=&quot;560&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/VwBfA/btsNjyuOQJR/IchpF8kI7410yTrGhbpzh1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/VwBfA/btsNjyuOQJR/IchpF8kI7410yTrGhbpzh1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/VwBfA/btsNjyuOQJR/IchpF8kI7410yTrGhbpzh1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FVwBfA%2FbtsNjyuOQJR%2FIchpF8kI7410yTrGhbpzh1%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;1564&quot; height=&quot;560&quot; data-filename=&quot;스크린샷 2025-04-12 14.25.06.png&quot; data-origin-width=&quot;1564&quot; data-origin-height=&quot;560&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;h2 data-end=&quot;810&quot; data-start=&quot;791&quot; data-ke-size=&quot;size26&quot;&gt; ️ Git에 토큰 저장하기&lt;/h2&gt;
&lt;p data-end=&quot;852&quot; data-start=&quot;812&quot; data-ke-size=&quot;size16&quot;&gt;다음 push에서 GitHub 계정과 토큰을 사용할 수 있도록 설정해야 합니다.&amp;nbsp;&lt;/p&gt;
&lt;p data-end=&quot;852&quot; data-start=&quot;812&quot; data-ke-size=&quot;size16&quot;&gt;아래 명령어 입력 시 popup 창이 뜨고, 내용을 입력해주세요.&lt;/p&gt;
&lt;div&gt;
&lt;pre id=&quot;code_1744436307352&quot; class=&quot;sql&quot; data-ke-language=&quot;sql&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;git push origin main&lt;/code&gt;&lt;/pre&gt;
&lt;/div&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-end=&quot;953&quot; data-start=&quot;914&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li data-end=&quot;932&quot; data-start=&quot;914&quot;&gt;사용자명: GitHub 아이디&lt;/li&gt;
&lt;li data-end=&quot;953&quot; data-start=&quot;933&quot;&gt;비밀번호: &lt;b&gt;방금 만든 토큰&lt;/b&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 style=&quot;color: #000000; text-align: start;&quot; data-start=&quot;791&quot; data-end=&quot;810&quot; data-ke-size=&quot;size26&quot;&gt;&amp;nbsp;&lt;/h2&gt;
&lt;h2 data-end=&quot;599&quot; data-start=&quot;560&quot; data-ke-size=&quot;size26&quot;&gt; ️ 설정 및 토큰 갱신 절차 (macOS/Windows 공통)&lt;/h2&gt;
&lt;h3 data-end=&quot;620&quot; data-start=&quot;601&quot; data-ke-size=&quot;size23&quot;&gt;1. 기존 인증 정보 삭제&lt;/h3&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-end=&quot;731&quot; data-start=&quot;622&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li data-end=&quot;673&quot; data-start=&quot;622&quot;&gt;macOS: &lt;b&gt;Keychain Access&lt;/b&gt;에서 github.com 항목 삭제&lt;/li&gt;
&lt;li data-end=&quot;731&quot; data-start=&quot;674&quot;&gt;Windows: &lt;b&gt;자격 증명 관리자&lt;/b&gt;에서 git:&lt;a href=&quot;https://github.com&quot;&gt;https://github.com&lt;/a&gt; 항목 삭제&lt;/li&gt;
&lt;/ul&gt;</description>
      <category>Programming/기타</category>
      <category>git</category>
      <category>github</category>
      <category>Keychain</category>
      <category>mac</category>
      <category>pat</category>
      <category>Push</category>
      <category>token</category>
      <category>window</category>
      <category>깃</category>
      <category>깃헙</category>
      <author>성남FC</author>
      <guid isPermaLink="true">https://gabrielyj.tistory.com/234</guid>
      <comments>https://gabrielyj.tistory.com/234#entry234comment</comments>
      <pubDate>Mon, 14 Apr 2025 10:35:58 +0900</pubDate>
    </item>
    <item>
      <title>[제조업 도메인 지식]OPC UA와 RDP의 연관성</title>
      <link>https://gabrielyj.tistory.com/233</link>
      <description>&lt;p data-end=&quot;331&quot; data-start=&quot;155&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: AppleSDGothicNeo-Regular, 'Malgun Gothic', '맑은 고딕', dotum, 돋움, sans-serif;&quot;&gt;공장 자동화나 스마트 팩토리 같은 산업 환경에서 자주 등장하는 용어 중에 &lt;b&gt;OPC UA&lt;/b&gt;와 &lt;b&gt;RDP&lt;/b&gt;가 있습니다.&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;font-family: AppleSDGothicNeo-Regular, 'Malgun Gothic', '맑은 고딕', dotum, 돋움, sans-serif;&quot;&gt;두 기술은 서로 완전히 다른 역할을 하지만, 실제 현장에서는 함께 사용되기도 합니다.&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;font-family: AppleSDGothicNeo-Regular, 'Malgun Gothic', '맑은 고딕', dotum, 돋움, sans-serif;&quot;&gt;이 글에서는 각 기술의 개념과 실제 현장에서의 연관성에 대해 간단하게 정리해보겠습니다.&lt;/span&gt;&lt;/p&gt;
&lt;hr contenteditable=&quot;false&quot; data-ke-type=&quot;horizontalRule&quot; data-ke-style=&quot;style5&quot; /&gt;
&lt;h3 data-end=&quot;352&quot; data-start=&quot;338&quot; data-ke-size=&quot;size23&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: AppleSDGothicNeo-Regular, 'Malgun Gothic', '맑은 고딕', dotum, 돋움, sans-serif;&quot;&gt;  OPC UA란?&lt;/span&gt;&lt;/b&gt;&lt;/h3&gt;
&lt;p data-end=&quot;451&quot; data-start=&quot;354&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: AppleSDGothicNeo-Regular, 'Malgun Gothic', '맑은 고딕', dotum, 돋움, sans-serif;&quot;&gt;&lt;b&gt;OPC UA (OPC Unified Architecture)&lt;/b&gt;는 공장 설비나 장비, 센서 등이 서로 데이터를 주고받을 수 있도록 만든 &lt;b&gt;산업용 통신 프로토콜&lt;/b&gt;입니다.&lt;/span&gt;&lt;/p&gt;
&lt;h4 data-end=&quot;464&quot; data-start=&quot;453&quot; data-ke-size=&quot;size20&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: AppleSDGothicNeo-Regular, 'Malgun Gothic', '맑은 고딕', dotum, 돋움, sans-serif;&quot;&gt;✅ 주요 특징&lt;/span&gt;&lt;/b&gt;&lt;/h4&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-end=&quot;691&quot; data-start=&quot;465&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li data-end=&quot;523&quot; data-start=&quot;465&quot;&gt;&lt;span style=&quot;font-family: AppleSDGothicNeo-Regular, 'Malgun Gothic', '맑은 고딕', dotum, 돋움, sans-serif;&quot;&gt;&lt;b&gt;플랫폼 독립적&lt;/b&gt;: Windows, Linux, 임베디드 시스템 등 다양한 환경에서 사용 가능&lt;/span&gt;&lt;/li&gt;
&lt;li data-end=&quot;573&quot; data-start=&quot;524&quot;&gt;&lt;span style=&quot;font-family: AppleSDGothicNeo-Regular, 'Malgun Gothic', '맑은 고딕', dotum, 돋움, sans-serif;&quot;&gt;&lt;b&gt;보안 내장&lt;/b&gt;: 암호화, 사용자 인증, 데이터 서명 등 강력한 보안 기능 제공&lt;/span&gt;&lt;/li&gt;
&lt;li data-end=&quot;633&quot; data-start=&quot;574&quot;&gt;&lt;span style=&quot;font-family: AppleSDGothicNeo-Regular, 'Malgun Gothic', '맑은 고딕', dotum, 돋움, sans-serif;&quot;&gt;&lt;b&gt;객체지향 데이터 구조&lt;/b&gt;: 단순한 값뿐 아니라 '장비', '센서' 같은 구조적 데이터 표현 가능&lt;/span&gt;&lt;/li&gt;
&lt;li data-end=&quot;691&quot; data-start=&quot;634&quot;&gt;&lt;span style=&quot;font-family: AppleSDGothicNeo-Regular, 'Malgun Gothic', '맑은 고딕', dotum, 돋움, sans-serif;&quot;&gt;&lt;b&gt;높은 확장성&lt;/b&gt;: 스마트 팩토리, IIoT, MES, SCADA 등 다양한 시스템에서 활용 가능&lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h4 data-end=&quot;702&quot; data-start=&quot;693&quot; data-ke-size=&quot;size20&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: AppleSDGothicNeo-Regular, 'Malgun Gothic', '맑은 고딕', dotum, 돋움, sans-serif;&quot;&gt;  예시&lt;/span&gt;&lt;/b&gt;&lt;/h4&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-end=&quot;783&quot; data-start=&quot;703&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li data-end=&quot;734&quot; data-start=&quot;703&quot;&gt;&lt;span style=&quot;font-family: AppleSDGothicNeo-Regular, 'Malgun Gothic', '맑은 고딕', dotum, 돋움, sans-serif;&quot;&gt;PLC에서 온도 데이터를 OPC UA 서버로 전송&lt;/span&gt;&lt;/li&gt;
&lt;li data-end=&quot;783&quot; data-start=&quot;735&quot;&gt;&lt;span style=&quot;font-family: AppleSDGothicNeo-Regular, 'Malgun Gothic', '맑은 고딕', dotum, 돋움, sans-serif;&quot;&gt;클라이언트 프로그램(SCADA, 웹 클라이언트 등)이 해당 데이터를 실시간으로 조회&lt;/span&gt;&lt;/li&gt;
&lt;/ul&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;h3 data-end=&quot;801&quot; data-start=&quot;790&quot; data-ke-size=&quot;size23&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: AppleSDGothicNeo-Regular, 'Malgun Gothic', '맑은 고딕', dotum, 돋움, sans-serif;&quot;&gt;  RDP란?&lt;/span&gt;&lt;/b&gt;&lt;span style=&quot;font-family: AppleSDGothicNeo-Regular, 'Malgun Gothic', '맑은 고딕', dotum, 돋움, sans-serif;&quot;&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p data-end=&quot;905&quot; data-start=&quot;803&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: AppleSDGothicNeo-Regular, 'Malgun Gothic', '맑은 고딕', dotum, 돋움, sans-serif;&quot;&gt;&lt;b&gt;RDP(Remote Desktop Protocol)&lt;/b&gt;는 Microsoft에서 만든 프로토콜로, 다른 컴퓨터에 원격 접속하여 화면을 보고 조작할 수 있게 해주는 기술입니다.&lt;/span&gt;&lt;/p&gt;
&lt;h4 data-end=&quot;918&quot; data-start=&quot;907&quot; data-ke-size=&quot;size20&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: AppleSDGothicNeo-Regular, 'Malgun Gothic', '맑은 고딕', dotum, 돋움, sans-serif;&quot;&gt;✅ 주요 특징&lt;/span&gt;&lt;/b&gt;&lt;/h4&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-end=&quot;1063&quot; data-start=&quot;919&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li data-end=&quot;965&quot; data-start=&quot;919&quot;&gt;&lt;span style=&quot;font-family: AppleSDGothicNeo-Regular, 'Malgun Gothic', '맑은 고딕', dotum, 돋움, sans-serif;&quot;&gt;&lt;b&gt;원격 데스크톱 접속&lt;/b&gt;: 다른 컴퓨터의 화면을 실시간으로 보며 조작 가능&lt;/span&gt;&lt;/li&gt;
&lt;li data-end=&quot;1019&quot; data-start=&quot;966&quot;&gt;&lt;span style=&quot;font-family: AppleSDGothicNeo-Regular, 'Malgun Gothic', '맑은 고딕', dotum, 돋움, sans-serif;&quot;&gt;&lt;b&gt;시스템 관리에 유용&lt;/b&gt;: IT 관리자, 개발자 등이 원격에서 유지보수할 때 많이 사용&lt;/span&gt;&lt;/li&gt;
&lt;li data-end=&quot;1063&quot; data-start=&quot;1020&quot;&gt;&lt;span style=&quot;font-family: AppleSDGothicNeo-Regular, 'Malgun Gothic', '맑은 고딕', dotum, 돋움, sans-serif;&quot;&gt;&lt;b&gt;Windows 기본 기능&lt;/b&gt;: 대부분의 윈도우 운영체제에 내장되어 있음&lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h4 data-end=&quot;1074&quot; data-start=&quot;1065&quot; data-ke-size=&quot;size20&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: AppleSDGothicNeo-Regular, 'Malgun Gothic', '맑은 고딕', dotum, 돋움, sans-serif;&quot;&gt;  예시&lt;/span&gt;&lt;/b&gt;&lt;/h4&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-end=&quot;1138&quot; data-start=&quot;1075&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li data-end=&quot;1101&quot; data-start=&quot;1075&quot;&gt;&lt;span style=&quot;font-family: AppleSDGothicNeo-Regular, 'Malgun Gothic', '맑은 고딕', dotum, 돋움, sans-serif;&quot;&gt;본사에서 공장 내부 PC에 RDP로 접속&lt;/span&gt;&lt;/li&gt;
&lt;li data-end=&quot;1138&quot; data-start=&quot;1102&quot;&gt;&lt;span style=&quot;font-family: AppleSDGothicNeo-Regular, 'Malgun Gothic', '맑은 고딕', dotum, 돋움, sans-serif;&quot;&gt;그 PC를 통해 OPC UA 서버 상태를 점검하거나 설정 변경&lt;/span&gt;&lt;/li&gt;
&lt;/ul&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-end=&quot;1169&quot; data-start=&quot;1145&quot; data-ke-size=&quot;size23&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: AppleSDGothicNeo-Regular, 'Malgun Gothic', '맑은 고딕', dotum, 돋움, sans-serif;&quot;&gt;  OPC UA와 RDP의 연관성은?&lt;/span&gt;&lt;/b&gt;&lt;/h3&gt;
&lt;p data-end=&quot;1206&quot; data-start=&quot;1171&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: AppleSDGothicNeo-Regular, 'Malgun Gothic', '맑은 고딕', dotum, 돋움, sans-serif;&quot;&gt;두 기술은 &lt;b&gt;기술적으로는 완전히 별개의 프로토콜&lt;/b&gt;입니다.&lt;/span&gt;&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-end=&quot;1295&quot; data-start=&quot;1207&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li data-end=&quot;1252&quot; data-start=&quot;1207&quot;&gt;&lt;span style=&quot;font-family: AppleSDGothicNeo-Regular, 'Malgun Gothic', '맑은 고딕', dotum, 돋움, sans-serif;&quot;&gt;&lt;b&gt;OPC UA&lt;/b&gt;는 장비와 시스템 간 &lt;b&gt;데이터 통신&lt;/b&gt;을 위한 것이고,&lt;/span&gt;&lt;/li&gt;
&lt;li data-end=&quot;1295&quot; data-start=&quot;1253&quot;&gt;&lt;span style=&quot;font-family: AppleSDGothicNeo-Regular, 'Malgun Gothic', '맑은 고딕', dotum, 돋움, sans-serif;&quot;&gt;&lt;b&gt;RDP&lt;/b&gt;는 원격지 컴퓨터에 &lt;b&gt;접속하고 조작&lt;/b&gt;하기 위한 것입니다.&lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p data-end=&quot;1330&quot; data-start=&quot;1297&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: AppleSDGothicNeo-Regular, 'Malgun Gothic', '맑은 고딕', dotum, 돋움, sans-serif;&quot;&gt;하지만 &lt;b&gt;실제 현장에서는 함께 쓰이는 경우가 많습니다.&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p data-end=&quot;1330&quot; data-start=&quot;1297&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-end=&quot;1330&quot; data-start=&quot;1297&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h3 data-end=&quot;1347&quot; data-start=&quot;1332&quot; data-ke-size=&quot;size23&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: AppleSDGothicNeo-Regular, 'Malgun Gothic', '맑은 고딕', dotum, 돋움, sans-serif;&quot;&gt;  실제 사용 예시&lt;/span&gt;&lt;/b&gt;&lt;/h3&gt;
&lt;blockquote data-end=&quot;1473&quot; data-start=&quot;1348&quot; data-ke-style=&quot;style1&quot;&gt;
&lt;p data-end=&quot;1473&quot; data-start=&quot;1350&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: AppleSDGothicNeo-Regular, 'Malgun Gothic', '맑은 고딕', dotum, 돋움, sans-serif;&quot;&gt;엔지니어가 공장 현장에 있는 OPC UA 서버를 점검해야 하는 상황&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;font-family: AppleSDGothicNeo-Regular, 'Malgun Gothic', '맑은 고딕', dotum, 돋움, sans-serif;&quot;&gt;&amp;rarr; 직접 가지 않고, &lt;b&gt;RDP로 공장 내부 PC에 접속&lt;/b&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;font-family: AppleSDGothicNeo-Regular, 'Malgun Gothic', '맑은 고딕', dotum, 돋움, sans-serif;&quot;&gt;&amp;rarr; 접속한 PC에서 &lt;b&gt;OPC UA 클라이언트를 실행&lt;/b&gt;해서 장비 상태를 확인&lt;/span&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p data-end=&quot;1531&quot; data-start=&quot;1475&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: AppleSDGothicNeo-Regular, 'Malgun Gothic', '맑은 고딕', dotum, 돋움, sans-serif;&quot;&gt;이처럼, &lt;b&gt;RDP는 원격 접속 수단&lt;/b&gt;, &lt;b&gt;OPC UA는 데이터 통신 수단&lt;/b&gt;으로 함께 쓰입니다.&lt;/span&gt;&lt;/p&gt;
&lt;p data-end=&quot;1531&quot; data-start=&quot;1475&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-end=&quot;1531&quot; data-start=&quot;1475&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h3 data-end=&quot;1554&quot; data-start=&quot;1538&quot; data-ke-size=&quot;size23&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: AppleSDGothicNeo-Regular, 'Malgun Gothic', '맑은 고딕', dotum, 돋움, sans-serif;&quot;&gt;  두 기술 요약 비교&lt;/span&gt;&lt;/b&gt;&lt;/h3&gt;
&lt;div&gt;
&lt;table style=&quot;border-collapse: collapse; width: 100%;&quot; border=&quot;1&quot; data-end=&quot;1765&quot; data-start=&quot;1556&quot; data-ke-align=&quot;alignLeft&quot; data-ke-style=&quot;style12&quot;&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;&lt;b&gt;항목&lt;/b&gt;&lt;/td&gt;
&lt;td&gt;&lt;b&gt;OPC UA&lt;/b&gt;&lt;/td&gt;
&lt;td&gt;&lt;b&gt;RDP&lt;/b&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr data-end=&quot;1635&quot; data-start=&quot;1602&quot;&gt;
&lt;td data-end=&quot;1607&quot; data-start=&quot;1602&quot;&gt;&lt;span style=&quot;font-family: AppleSDGothicNeo-Regular, 'Malgun Gothic', '맑은 고딕', dotum, 돋움, sans-serif;&quot;&gt;목적&lt;/span&gt;&lt;/td&gt;
&lt;td data-end=&quot;1621&quot; data-start=&quot;1607&quot;&gt;&lt;span style=&quot;font-family: AppleSDGothicNeo-Regular, 'Malgun Gothic', '맑은 고딕', dotum, 돋움, sans-serif;&quot;&gt;장비 간 데이터 통신&lt;/span&gt;&lt;/td&gt;
&lt;td data-end=&quot;1635&quot; data-start=&quot;1621&quot;&gt;&lt;span style=&quot;font-family: AppleSDGothicNeo-Regular, 'Malgun Gothic', '맑은 고딕', dotum, 돋움, sans-serif;&quot;&gt;원격 접속 및 조작&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr data-end=&quot;1682&quot; data-start=&quot;1636&quot;&gt;
&lt;td data-end=&quot;1645&quot; data-start=&quot;1636&quot;&gt;&lt;span style=&quot;font-family: AppleSDGothicNeo-Regular, 'Malgun Gothic', '맑은 고딕', dotum, 돋움, sans-serif;&quot;&gt;주요 사용처&lt;/span&gt;&lt;/td&gt;
&lt;td data-end=&quot;1663&quot; data-start=&quot;1645&quot;&gt;&lt;span style=&quot;font-family: AppleSDGothicNeo-Regular, 'Malgun Gothic', '맑은 고딕', dotum, 돋움, sans-serif;&quot;&gt;공장, 자동화 설비, IoT&lt;/span&gt;&lt;/td&gt;
&lt;td data-end=&quot;1682&quot; data-start=&quot;1663&quot;&gt;&lt;span style=&quot;font-family: AppleSDGothicNeo-Regular, 'Malgun Gothic', '맑은 고딕', dotum, 돋움, sans-serif;&quot;&gt;시스템 유지보수, 원격 작업&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr data-end=&quot;1718&quot; data-start=&quot;1683&quot;&gt;
&lt;td data-end=&quot;1692&quot; data-start=&quot;1683&quot;&gt;&lt;span style=&quot;font-family: AppleSDGothicNeo-Regular, 'Malgun Gothic', '맑은 고딕', dotum, 돋움, sans-serif;&quot;&gt;기술적 관계&lt;/span&gt;&lt;/td&gt;
&lt;td data-end=&quot;1697&quot; data-start=&quot;1692&quot;&gt;&lt;span style=&quot;font-family: AppleSDGothicNeo-Regular, 'Malgun Gothic', '맑은 고딕', dotum, 돋움, sans-serif;&quot;&gt;없음&lt;/span&gt;&lt;/td&gt;
&lt;td data-end=&quot;1718&quot; data-start=&quot;1697&quot;&gt;&lt;span style=&quot;font-family: AppleSDGothicNeo-Regular, 'Malgun Gothic', '맑은 고딕', dotum, 돋움, sans-serif;&quot;&gt;현장에서 함께 쓰이는 경우 많음&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr data-end=&quot;1765&quot; data-start=&quot;1719&quot;&gt;
&lt;td data-end=&quot;1727&quot; data-start=&quot;1719&quot;&gt;&lt;span style=&quot;font-family: AppleSDGothicNeo-Regular, 'Malgun Gothic', '맑은 고딕', dotum, 돋움, sans-serif;&quot;&gt;보안 기능&lt;/span&gt;&lt;/td&gt;
&lt;td data-end=&quot;1740&quot; data-start=&quot;1727&quot;&gt;&lt;span style=&quot;font-family: AppleSDGothicNeo-Regular, 'Malgun Gothic', '맑은 고딕', dotum, 돋움, sans-serif;&quot;&gt;암호화, 인증 내장&lt;/span&gt;&lt;/td&gt;
&lt;td data-end=&quot;1765&quot; data-start=&quot;1740&quot;&gt;&lt;span style=&quot;font-family: AppleSDGothicNeo-Regular, 'Malgun Gothic', '맑은 고딕', dotum, 돋움, sans-serif;&quot;&gt;암호, 2FA 등 외부 보안 설정 사용&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&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;/div&gt;
&lt;h3 data-end=&quot;1780&quot; data-start=&quot;1772&quot; data-ke-size=&quot;size23&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: AppleSDGothicNeo-Regular, 'Malgun Gothic', '맑은 고딕', dotum, 돋움, sans-serif;&quot;&gt;✅ 마무리&lt;/span&gt;&lt;/b&gt;&lt;/h3&gt;
&lt;p data-end=&quot;1790&quot; data-start=&quot;1782&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: AppleSDGothicNeo-Regular, 'Malgun Gothic', '맑은 고딕', dotum, 돋움, sans-serif;&quot;&gt;정리하자면,&lt;/span&gt;&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-end=&quot;1887&quot; data-start=&quot;1791&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li data-end=&quot;1839&quot; data-start=&quot;1791&quot;&gt;&lt;span style=&quot;font-family: AppleSDGothicNeo-Regular, 'Malgun Gothic', '맑은 고딕', dotum, 돋움, sans-serif;&quot;&gt;&lt;b&gt;OPC UA는 산업 장비 간 안전하고 구조화된 통신을 위한 프로토콜&lt;/b&gt;이고,&lt;/span&gt;&lt;/li&gt;
&lt;li data-end=&quot;1887&quot; data-start=&quot;1840&quot;&gt;&lt;span style=&quot;font-family: AppleSDGothicNeo-Regular, 'Malgun Gothic', '맑은 고딕', dotum, 돋움, sans-serif;&quot;&gt;&lt;b&gt;RDP는 원격으로 컴퓨터에 접속해 조작하는 데 사용하는 프로토콜&lt;/b&gt;입니다.&lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p data-end=&quot;1948&quot; data-start=&quot;1889&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: AppleSDGothicNeo-Regular, 'Malgun Gothic', '맑은 고딕', dotum, 돋움, sans-serif;&quot;&gt;서로 다른 역할을 하지만, &lt;b&gt;스마트 팩토리나 원격 유지보수 환경에서는 함께 사용되는 경우가 많습니다.&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;</description>
      <category>Programming/제조업 도메인</category>
      <category>OPC</category>
      <category>PLC</category>
      <category>RDP</category>
      <category>UA</category>
      <category>기본</category>
      <category>도메인</category>
      <category>산업</category>
      <category>스마트</category>
      <category>제조</category>
      <category>팩토리</category>
      <author>성남FC</author>
      <guid isPermaLink="true">https://gabrielyj.tistory.com/233</guid>
      <comments>https://gabrielyj.tistory.com/233#entry233comment</comments>
      <pubDate>Wed, 9 Apr 2025 12:30:35 +0900</pubDate>
    </item>
    <item>
      <title>[Docker] Mac OS에 Docker 설치하기 M칩/인텔칩(by brew)</title>
      <link>https://gabrielyj.tistory.com/232</link>
      <description>&lt;p data-end=&quot;251&quot; data-start=&quot;117&quot; data-ke-size=&quot;size16&quot;&gt;최근 Mac을 새로 세팅하면서 개발 환경도 처음부터 다시 구성하게 되었습니다.&lt;/p&gt;
&lt;p data-end=&quot;251&quot; data-start=&quot;117&quot; data-ke-size=&quot;size16&quot;&gt;그 중 가장 먼저 설치한 도구 중 하나가 &lt;b&gt;Homebrew&lt;/b&gt;와 &lt;b&gt;Docker&lt;/b&gt;입니다.&lt;/p&gt;
&lt;p data-end=&quot;251&quot; data-start=&quot;117&quot; data-ke-size=&quot;size16&quot;&gt;혹시 저처럼 처음 설치하시는 분들이 있다면 참고하시라고 정리해봤습니다.&lt;/p&gt;
&lt;p data-end=&quot;251&quot; data-start=&quot;117&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h3 data-end=&quot;282&quot; data-start=&quot;258&quot; data-ke-size=&quot;size23&quot;&gt;&lt;b&gt;Step 1. Homebrew 설치&lt;/b&gt;&lt;/h3&gt;
&lt;p data-end=&quot;370&quot; data-start=&quot;284&quot; data-ke-size=&quot;size16&quot;&gt;Homebrew는 macOS에서 패키지나 앱을 간편하게 설치할 수 있게 도와주는 필수 도구입니다. 터미널을 열고 아래 명령어를 입력하면 설치가 시작됩니다.&lt;/p&gt;
&lt;div&gt;
&lt;div&gt;
&lt;div&gt;
&lt;div&gt;
&lt;pre id=&quot;code_1744000726915&quot; class=&quot;bash&quot; data-ke-language=&quot;bash&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;/bin/bash -c &quot;$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)&quot;&lt;/code&gt;&lt;/pre&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div&gt;&amp;nbsp;&lt;/div&gt;
&lt;/div&gt;
&lt;p data-end=&quot;562&quot; data-start=&quot;481&quot; data-ke-size=&quot;size16&quot;&gt;설치가 끝나면 터미널에 추가로 아래와 같은 메시지가 뜰 수 있습니다.&amp;nbsp;이건 brew 명령어를 제대로 인식시키기 위한 설정이니 꼭 따라 해주셔야 합니다.&lt;/p&gt;
&lt;p data-end=&quot;562&quot; data-start=&quot;481&quot; data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;* Homebrew 설치를 정상적으로 했는데, 아직 터미널에서 brew 명령어를 인식하지 못할 수 있느니, .zprofile을 추가하라는 의미입니다.&lt;/b&gt;&lt;/p&gt;
&lt;h4 data-end=&quot;604&quot; data-start=&quot;564&quot; data-ke-size=&quot;size20&quot;&gt;  M1/M2/M3 (Apple Silicon) 사용자의 경우&lt;/h4&gt;
&lt;div&gt;
&lt;div&gt;
&lt;pre id=&quot;code_1744000772419&quot; class=&quot;bash&quot; data-ke-language=&quot;bash&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;echo 'eval &quot;$(/opt/homebrew/bin/brew shellenv)&quot;' &amp;gt;&amp;gt; ~/.zprofile eval &quot;$(/opt/homebrew/bin/brew shellenv)&quot;&lt;/code&gt;&lt;/pre&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h4 data-end=&quot;746&quot; data-start=&quot;725&quot; data-ke-size=&quot;size20&quot;&gt;  Intel Mac 사용자&lt;/h4&gt;
&lt;div&gt;
&lt;div&gt;
&lt;pre id=&quot;code_1744000786697&quot; class=&quot;bash&quot; data-ke-language=&quot;bash&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;echo 'eval &quot;$(/usr/local/bin/brew shellenv)&quot;' &amp;gt;&amp;gt; ~/.zprofile eval &quot;$(/usr/local/bin/brew shellenv)&quot;&lt;/code&gt;&lt;/pre&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p data-end=&quot;893&quot; data-start=&quot;861&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-end=&quot;893&quot; data-start=&quot;861&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-end=&quot;893&quot; data-start=&quot;861&quot; data-ke-size=&quot;size16&quot;&gt;제대로 설치되었는지 확인하려면 다음 명령어를 입력해봅니다.&lt;/p&gt;
&lt;div&gt;
&lt;pre id=&quot;code_1744000972923&quot; class=&quot;bash&quot; data-ke-language=&quot;bash&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;brew --version&lt;/code&gt;&lt;/pre&gt;
&lt;/div&gt;
&lt;p data-end=&quot;941&quot; data-start=&quot;923&quot; data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;* homebrew 설치가 정상적으로 완료 되었다면, 버전 정보가 출력됩니다.&lt;/b&gt;&lt;/p&gt;
&lt;hr contenteditable=&quot;false&quot; data-ke-style=&quot;style5&quot; data-ke-type=&quot;horizontalRule&quot; /&gt;
&lt;h4 data-end=&quot;970&quot; data-start=&quot;948&quot; data-ke-size=&quot;size20&quot;&gt;&amp;nbsp;&lt;/h4&gt;
&lt;h4 data-end=&quot;970&quot; data-start=&quot;948&quot; data-ke-size=&quot;size20&quot;&gt;&amp;nbsp;&lt;/h4&gt;
&lt;h4 data-end=&quot;970&quot; data-start=&quot;948&quot; data-ke-size=&quot;size20&quot;&gt;&lt;b&gt;Step 2. Docker 설치&lt;/b&gt;&lt;/h4&gt;
&lt;p data-end=&quot;1053&quot; data-start=&quot;972&quot; data-ke-size=&quot;size16&quot;&gt;이제 Homebrew를 이용해 Docker를 설치해보겠습니다. Docker는 GUI 앱 형태로 설치되기 때문에 --cask 옵션을 사용합니다.&lt;/p&gt;
&lt;p data-end=&quot;1053&quot; data-start=&quot;972&quot; data-ke-size=&quot;size16&quot;&gt;* --cast 옵션은 Homebrew 에서 GUI 애플리케이션을 설치할 때 사용하는 옵션입니다.&lt;/p&gt;
&lt;p data-end=&quot;1053&quot; data-start=&quot;972&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;div&gt;
&lt;pre id=&quot;code_1744001243935&quot; class=&quot;bash&quot; data-ke-language=&quot;bash&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;brew install --cask docker&lt;/code&gt;&lt;/pre&gt;
&lt;/div&gt;
&lt;p data-end=&quot;1153&quot; data-start=&quot;1095&quot; data-ke-size=&quot;size16&quot;&gt;* 설치가 완료되면 응용 프로그램 &amp;gt; Docker에서 앱을 실행하거나 아래 명령어로도 실행할 수 있습니다.&lt;/p&gt;
&lt;div&gt;
&lt;div&gt;
&lt;div&gt;
&lt;div&gt;&amp;nbsp;&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div&gt;&amp;nbsp;&lt;/div&gt;
&lt;/div&gt;
&lt;p data-end=&quot;1314&quot; data-start=&quot;1198&quot; data-ke-size=&quot;size16&quot;&gt;처음 실행할 때는 관리자 권한을 요구하거나 로그인을 해야 할 수도 있어요. 실행이 완료되면 화면 오른쪽 상단 메뉴바에 고래 아이콘 이 생기는데, 이 아이콘이 떠 있다면 Docker가 잘 실행된 상태입니다!&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;128&quot; data-origin-height=&quot;136&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bm2AY9/btsNaGUWXLt/Lpi0Pk7dEWNxKguwqUwhDK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bm2AY9/btsNaGUWXLt/Lpi0Pk7dEWNxKguwqUwhDK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bm2AY9/btsNaGUWXLt/Lpi0Pk7dEWNxKguwqUwhDK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fbm2AY9%2FbtsNaGUWXLt%2FLpi0Pk7dEWNxKguwqUwhDK%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;128&quot; height=&quot;136&quot; data-origin-width=&quot;128&quot; data-origin-height=&quot;136&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;hr contenteditable=&quot;false&quot; data-ke-style=&quot;style5&quot; data-ke-type=&quot;horizontalRule&quot; /&gt;
&lt;h3 data-end=&quot;1339&quot; data-start=&quot;1321&quot; data-ke-size=&quot;size23&quot;&gt;&lt;br /&gt;&lt;b&gt;Step 3. 설치 확인&lt;/b&gt;&lt;/h3&gt;
&lt;p data-end=&quot;1375&quot; data-start=&quot;1341&quot; data-ke-size=&quot;size16&quot;&gt;마지막으로 Docker가 정상적으로 설치되었는지 확인해보겠습니다.&lt;/p&gt;
&lt;div&gt;
&lt;div&gt;
&lt;pre id=&quot;code_1744001378563&quot; class=&quot;bash&quot; data-ke-language=&quot;bash&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;&amp;nbsp;&lt;/p&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p data-end=&quot;1441&quot; data-start=&quot;1407&quot; data-ke-size=&quot;size16&quot;&gt;이 명령어를 입력했을 때 버전 정보가 잘 나온다면 성공입니다!&lt;/p&gt;
&lt;hr contenteditable=&quot;false&quot; data-ke-style=&quot;style5&quot; data-ke-type=&quot;horizontalRule&quot; /&gt;
&lt;p data-end=&quot;1664&quot; data-start=&quot;1567&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-end=&quot;1664&quot; data-start=&quot;1567&quot; data-ke-size=&quot;size16&quot;&gt;&lt;br /&gt;저는 이렇게 macOS에 Homebrew와 Docker를 설치하고 본격적인 개발 환경을 시작했습니다. 혹시 설치 중 막히는 부분이나 궁금한 점 있으시면 댓글 남겨주세요!  &lt;/p&gt;</description>
      <category>Programming/Docker</category>
      <category>BREW</category>
      <category>docker</category>
      <category>homebrew</category>
      <category>m</category>
      <category>mac</category>
      <category>OS</category>
      <category>도커</category>
      <category>맥OS</category>
      <category>설치</category>
      <category>인텔</category>
      <author>성남FC</author>
      <guid isPermaLink="true">https://gabrielyj.tistory.com/232</guid>
      <comments>https://gabrielyj.tistory.com/232#entry232comment</comments>
      <pubDate>Mon, 7 Apr 2025 13:54:16 +0900</pubDate>
    </item>
    <item>
      <title>[Git] commit 해도 Github 잔디(=커밋 기록) 표시되지 않을</title>
      <link>https://gabrielyj.tistory.com/231</link>
      <description>&lt;p data-ke-size=&quot;size16&quot;&gt;다른 기기로 작업을 할 경우 commit을 해도 GitHub 에서 잔디(=커밋 기록)이 제대로 표시되지 않는 경우가 있습니다.&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;GitHub에 잔디(=커밋 기록)가 생기려면 커밋할 때 사용한 이름과 이메일이 GitHub 계정 정보와 일치해야 합니다.&lt;/li&gt;
&lt;li&gt;개인 PC와 회사 PC 등 환경 마다 commit author 가 다를 경우 아래처럼 변경할 수 있습니다.&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt; &amp;zwj; &amp;nbsp;Git Author 변경하기&lt;/h2&gt;
&lt;pre class=&quot;routeros&quot;&gt;&lt;code&gt;git config --global user.name &quot;홍길동&quot;
git config --global user.email &quot;hong@example.com&quot;
&lt;/code&gt;&lt;/pre&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;위에서 hong@example.com이 GitHub 계정에 등록되어 있어야 잔디가 생김&lt;/li&gt;
&lt;/ul&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;✅&amp;nbsp;커밋 기록 이메일 확인:&lt;/h2&gt;
&lt;pre class=&quot;applescript&quot;&gt;&lt;code&gt;git log --pretty=full
&lt;/code&gt;&lt;/pre&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;Author 와 Commit 이 일치한지 확인 해주세요&lt;/li&gt;
&lt;/ul&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;1322&quot; data-origin-height=&quot;263&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/dJpysU/btsM9yWSUY8/oDrDlqMbpuOHDd6cF02nGk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/dJpysU/btsM9yWSUY8/oDrDlqMbpuOHDd6cF02nGk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/dJpysU/btsM9yWSUY8/oDrDlqMbpuOHDd6cF02nGk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FdJpysU%2FbtsM9yWSUY8%2FoDrDlqMbpuOHDd6cF02nGk%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;1322&quot; height=&quot;263&quot; data-filename=&quot;blob&quot; data-origin-width=&quot;1322&quot; data-origin-height=&quot;263&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;</description>
      <category>Programming/기타</category>
      <category>commit</category>
      <category>git</category>
      <category>History</category>
      <category>기록</category>
      <category>깃</category>
      <category>생길</category>
      <category>생김</category>
      <category>안</category>
      <category>잔디</category>
      <category>커밋</category>
      <author>성남FC</author>
      <guid isPermaLink="true">https://gabrielyj.tistory.com/231</guid>
      <comments>https://gabrielyj.tistory.com/231#entry231comment</comments>
      <pubDate>Mon, 7 Apr 2025 13:22:53 +0900</pubDate>
    </item>
    <item>
      <title>[Docker] Window Docker Resource CPU, Memory, SWAP WSL 수정</title>
      <link>https://gabrielyj.tistory.com/230</link>
      <description>&lt;h2 data-ke-size=&quot;size26&quot;&gt;  Docker 사용 중 리소스가 부족하다면?&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;Docker를 사용하다 보면 여러 개의 컨테이너를 실행하게 되고, 결국 &lt;b&gt;CPU와 메모리 리소스가 부족해지는 상황&lt;/b&gt;을 겪을 수 있습니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;특히 Windows에서는 Docker가 &lt;b&gt;WSL(Windows Subsystem for Linux)&lt;/b&gt; 을 기반으로 실행됩니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그래서 단순히 Docker 설정에서 CPU와 메모리를 변경하는 것이 아니라 &lt;b&gt;WSL의 설정을 수정해줘야 합니다.&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;h2 data-ke-size=&quot;size26&quot;&gt;  Docker 리소스 설정을 변경해야 하는 이유&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;Docker는 기본적으로 &lt;b&gt;리눅스 기반&lt;/b&gt;으로 동작하는 시스템입니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;Windows에서는 &lt;b&gt;WSL 2&lt;/b&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;&lt;span style=&quot;font-family: -apple-system, BlinkMacSystemFont, 'Helvetica Neue', 'Apple SD Gothic Neo', Arial, sans-serif; letter-spacing: 0px;&quot;&gt;Mac OS의 경우? Mac에서는 Docker가 GUI에서 직접 리소스(CPU, Memory)를 설정할 수 있도록 제공하지만, Windows에서는 이런 설정이 바로 적용되지 않습니다.&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;Windows에서는 WSL의 &lt;b&gt;.wslconfig 파일&lt;/b&gt;을 직접 수정해야만 CPU 및 메모리 리소스를 조절할 수 있습니다.&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;1104&quot; data-origin-height=&quot;870&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/cuV8wo/btsM6F23R17/LcebI5ee47RFQD4GyqJEs1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/cuV8wo/btsM6F23R17/LcebI5ee47RFQD4GyqJEs1/img.png&quot; data-alt=&quot;Mac OS는 Linux 기반이기 때문에 Docker Desktop에서 바로 설정이 가능합니다.&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/cuV8wo/btsM6F23R17/LcebI5ee47RFQD4GyqJEs1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FcuV8wo%2FbtsM6F23R17%2FLcebI5ee47RFQD4GyqJEs1%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;519&quot; height=&quot;409&quot; data-origin-width=&quot;1104&quot; data-origin-height=&quot;870&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;Mac OS는 Linux 기반이기 때문에 Docker Desktop에서 바로 설정이 가능합니다.&lt;/figcaption&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;h2 data-ke-size=&quot;size26&quot;&gt;  WSL 설정 변경하여 Docker 리소스 조절하기&lt;/h2&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;1️⃣ &lt;b&gt;.wslconfig 파일 생성 및 수정&lt;/b&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;WSL 설정 파일은 C:\\Users\\사용자명 경로에 위치합니다. 만약 .wslconfig 파일이 없다면 직접 만들어야 합니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;  파일 경로:&lt;/b&gt;&lt;/p&gt;
&lt;pre class=&quot;taggerscript&quot;&gt;&lt;code&gt;C:\\Users\\사용자명\\.wslconfig
&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;⚠️ 파일 확장자가 wslconfig.txt 가 되지 않도록 주의하세요&lt;/b&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;  설정 파일 내용:&lt;/b&gt;&lt;/p&gt;
&lt;pre class=&quot;ini&quot;&gt;&lt;code&gt;[wsl2]
memory=4GB   # 최대 메모리 사용량 설정 (예: 4GB)
processors=2  # CPU 코어 수 설정 (예: 2개)
swap=2GB     # 스왑 메모리 설정 (예: 2GB)
&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;  memory=4GB &amp;rarr; Docker가 사용할 최대 메모리를 4GB로 설정&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;  processors=2 &amp;rarr; CPU 코어를 2개만 사용하도록 설정&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;  swap=2GB &amp;rarr; 부족한 메모리를 보충할 스왑 공간 2GB 설정&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;RAM 이 부족할 경우, 이를 보완하기 위해 디스크의 일부를 임시 메모리처럼 사용하는 기능&lt;/li&gt;
&lt;/ul&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;h3 data-ke-size=&quot;size23&quot;&gt;&lt;b&gt;  Docker에서 Swap 설정하는 이유&lt;/b&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;Docker에서 컨테이너가 사용하는 메모리를 제한해도, 컨테이너가 &lt;b&gt;RAM을 초과해서 사용하려고 하면 swap을 활용&lt;/b&gt;할 수 있습니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;즉, swap을 설정하면 RAM 부족으로 인해 컨테이너가 갑자기 종료되는 것을 방지할 수 있습니다.&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;h3 data-ke-size=&quot;size23&quot;&gt;&lt;b&gt;⚠️ Swap 설정 시 주의할 점&lt;/b&gt;&lt;/h3&gt;
&lt;ol style=&quot;list-style-type: decimal;&quot; data-ke-list-type=&quot;decimal&quot;&gt;
&lt;li&gt;&lt;b&gt;너무 크게 설정하면 성능 저하&lt;/b&gt;  
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;Swap은 디스크를 사용하기 때문에 너무 많이 설정하면 속도가 느려질 수 있어.&lt;/li&gt;
&lt;li&gt;일반적으로 &lt;b&gt;RAM의 1~2배 정도&lt;/b&gt;로 설정하는 것이 좋음.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;b&gt;SSD 사용이 권장됨&lt;/b&gt; ⚡
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;Swap은 지속적으로 읽고 쓰는 작업이 많기 때문에, &lt;b&gt;SSD가 아닌 HDD에서는 성능이 크게 떨어질 수 있음.&lt;/b&gt;&lt;b&gt;&lt;/b&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ol&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;h3 data-ke-size=&quot;size23&quot;&gt;&lt;b&gt;  Docker Resource&lt;/b&gt; 설정하기&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;1. PowerShell에서 다음 명령어 실행:&lt;/b&gt;&lt;/p&gt;
&lt;pre class=&quot;taggerscript&quot;&gt;&lt;code&gt;notepad C:\\Users\\user\\.wslconfig
&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 data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;2. 내용 입력 후 저장&lt;/b&gt;&lt;/p&gt;
&lt;pre class=&quot;ini&quot;&gt;&lt;code&gt;[wsl2]
memory=4GB
processors=4
swap=2GB
&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 data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;3. Docker Desktop 및 WSL 종료&lt;/b&gt;&lt;/p&gt;
&lt;pre class=&quot;jboss-cli&quot;&gt;&lt;code&gt;taskkill /IM &quot;Docker Desktop.exe&quot; /F

wsl --shutdown
&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 data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;4. WSL 재시작 및 wsl root 이동(아래 명령어도 실행/wsl root 이동)&lt;/b&gt;&lt;/p&gt;
&lt;pre class=&quot;ebnf&quot;&gt;&lt;code&gt;wsl
&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 data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;5. 스펙 확인 명령어 실행&lt;/b&gt;&lt;/p&gt;
&lt;pre class=&quot;cpp&quot;&gt;&lt;code&gt;free -h
&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;1486&quot; data-origin-height=&quot;198&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/brJXiI/btsM66MBrvJ/eoBoWxPkf4B6z3NCwmg0v1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/brJXiI/btsM66MBrvJ/eoBoWxPkf4B6z3NCwmg0v1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/brJXiI/btsM66MBrvJ/eoBoWxPkf4B6z3NCwmg0v1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbrJXiI%2FbtsM66MBrvJ%2FeoBoWxPkf4B6z3NCwmg0v1%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;1486&quot; height=&quot;198&quot; data-origin-width=&quot;1486&quot; data-origin-height=&quot;198&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;</description>
      <category>Programming/Docker</category>
      <category>CPU</category>
      <category>docker</category>
      <category>Memory</category>
      <category>Resource</category>
      <category>swap</category>
      <category>도커</category>
      <category>리소스</category>
      <category>메모리</category>
      <category>변경</category>
      <category>설정</category>
      <author>성남FC</author>
      <guid isPermaLink="true">https://gabrielyj.tistory.com/230</guid>
      <comments>https://gabrielyj.tistory.com/230#entry230comment</comments>
      <pubDate>Fri, 4 Apr 2025 09:24:59 +0900</pubDate>
    </item>
    <item>
      <title>인생 첫 유럽 축구 직관 PSG vs AS 모나코(파르크 데 프랭스 경기장) 메시 네이마르 음바페의 삼각 편대</title>
      <link>https://gabrielyj.tistory.com/229</link>
      <description>&lt;blockquote data-ke-style=&quot;style2&quot;&gt;옛날 기억을 되살리며 축구 기행문을 하나씩 작성하려고 합니다.&lt;br /&gt;당시엔 블로그 작성 생각이 별로 없었기 대문에 사진을 다양하게 찍지 않았습니다. 물론 잘 찍지도 못하지만요 ㅎㅎ&lt;br /&gt;이 부분은 너른 양해 부탁드립니다 &lt;/blockquote&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&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;&lt;b&gt; &amp;zwj;  개발자의 축구 기행문 1편  ️ 시작합니다.&lt;/b&gt;&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;2022년 8월 28일, 생일을 맞아 유럽으로 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;그래서 한 경기라도 더 보기 위해 여러 계획을 세웠고, 총 4경기를 볼 수 있는 동선을 짰습니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그 중 첫 번째 목표는 파리 생제르망(PSG, Paris Saint-Germain Football Club) 이었습니다. (클럽 설명 생략)&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;500&quot; data-origin-height=&quot;500&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/0V5Au/btsM5mumfpe/Mk3T8kBRxZnCPhsnulCnUK/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/0V5Au/btsM5mumfpe/Mk3T8kBRxZnCPhsnulCnUK/img.jpg&quot; data-alt=&quot;파리 생제르망 FC&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/0V5Au/btsM5mumfpe/Mk3T8kBRxZnCPhsnulCnUK/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2F0V5Au%2FbtsM5mumfpe%2FMk3T8kBRxZnCPhsnulCnUK%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;500&quot; data-origin-width=&quot;500&quot; data-origin-height=&quot;500&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;파리 생제르망 FC&lt;/figcaption&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;&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;h2 data-ke-size=&quot;size26&quot;&gt;&lt;b&gt;  프랑스 파리로 이동 &lt;b&gt; &lt;/b&gt;&lt;/b&gt;&lt;/h2&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;KakaoTalk_Photo_2025-04-01-19-32-30 001.jpeg&quot; data-origin-width=&quot;1008&quot; data-origin-height=&quot;756&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/Wn4Fh/btsM4i0AiZk/mKUJofphn7zVRbpKUSTuD0/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/Wn4Fh/btsM4i0AiZk/mKUJofphn7zVRbpKUSTuD0/img.jpg&quot; data-alt=&quot;Amsterdam Central Station&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/Wn4Fh/btsM4i0AiZk/mKUJofphn7zVRbpKUSTuD0/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FWn4Fh%2FbtsM4i0AiZk%2FmKUJofphn7zVRbpKUSTuD0%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;1008&quot; height=&quot;756&quot; data-filename=&quot;KakaoTalk_Photo_2025-04-01-19-32-30 001.jpeg&quot; data-origin-width=&quot;1008&quot; data-origin-height=&quot;756&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;Amsterdam Central Station&lt;/figcaption&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;PSG 경기를 보기 위해 오전에 기차를 타고 암스테르담에서 파리로 이동 했습니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;Amsterdam Central Station 에서 Paris Main Station(Paris Gare du Nord) 으로 바로 이동할 예정이었습니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그런데.. 이용하려던 기차가 고장으로 취소되는 바람에 Plan B 를 찾아야 했습니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;(네덜란드 뿐만 아니라 유럽에서 기차 취소는 정말 자주 발생하네요 &amp;zwj;♂️)&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;찾아보니 취소 시간 이후 가장 빠르게 파리에 갈 수 있던, 벨기에의 브루셀을 경유하는 기차를 탔습니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그래서 본의 아니게 &lt;b&gt;Brussels Centra&lt;/b&gt; 역에서 경유를 하게 되었습니다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;KakaoTalk_Photo_2025-04-01-19-32-31 002.jpeg&quot; data-origin-width=&quot;756&quot; data-origin-height=&quot;1008&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/Zzrx2/btsM33ikfJO/XHAjwgWfOKUlKXgk15UIw0/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/Zzrx2/btsM33ikfJO/XHAjwgWfOKUlKXgk15UIw0/img.jpg&quot; data-alt=&quot;벨기에 와플&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/Zzrx2/btsM33ikfJO/XHAjwgWfOKUlKXgk15UIw0/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FZzrx2%2FbtsM33ikfJO%2FXHAjwgWfOKUlKXgk15UIw0%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;322&quot; height=&quot;429&quot; data-filename=&quot;KakaoTalk_Photo_2025-04-01-19-32-31 002.jpeg&quot; data-origin-width=&quot;756&quot; data-origin-height=&quot;1008&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;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;1시간 정도 경유 했는데, 그래도 벨기에 와플을 실제로 먹어볼 수 있어서 나쁘지 않았습니다  &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;&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;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;미디어에서만 보던 아름다운 파리의 거리를 걷다 보면 저도 모르게 파리지엥이된 느낌입니다 ㅎㅎ&lt;/p&gt;
&lt;p style=&quot;color: #333333; 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;KakaoTalk_Photo_2025-04-01-19-34-49 002.jpeg&quot; data-origin-width=&quot;756&quot; data-origin-height=&quot;1008&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bnLfzH/btsM4K3zWA2/BGATVV2ITc4n3uemZiZqp1/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bnLfzH/btsM4K3zWA2/BGATVV2ITc4n3uemZiZqp1/img.jpg&quot; data-alt=&quot;프로 짐꾼&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bnLfzH/btsM4K3zWA2/BGATVV2ITc4n3uemZiZqp1/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbnLfzH%2FbtsM4K3zWA2%2FBGATVV2ITc4n3uemZiZqp1%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;312&quot; height=&quot;416&quot; data-filename=&quot;KakaoTalk_Photo_2025-04-01-19-34-49 002.jpeg&quot; data-origin-width=&quot;756&quot; data-origin-height=&quot;1008&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;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그리고 인생의 버킷리스트 중 하나인 &amp;lsquo;에펠탑을 보면 라따뚜이 OST 듣기&amp;rsquo; 를 완료하는 순간이었습니다.&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;KakaoTalk_Photo_2025-04-01-19-32-31 003.jpeg&quot; data-origin-width=&quot;1008&quot; data-origin-height=&quot;756&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/tlmCn/btsM3EC28se/8DXuFUkv7KEvh9P9ilf6y0/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/tlmCn/btsM3EC28se/8DXuFUkv7KEvh9P9ilf6y0/img.jpg&quot; data-alt=&quot;에펠탑과 좋은 날씨&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/tlmCn/btsM3EC28se/8DXuFUkv7KEvh9P9ilf6y0/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FtlmCn%2FbtsM3EC28se%2F8DXuFUkv7KEvh9P9ilf6y0%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;539&quot; height=&quot;404&quot; data-filename=&quot;KakaoTalk_Photo_2025-04-01-19-32-31 003.jpeg&quot; data-origin-width=&quot;1008&quot; data-origin-height=&quot;756&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;&amp;nbsp;&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;경기장 음식은 줄도 길고, 비싸고, 맛도 특별하지 않다고 해서 미리 먹고 갔습니다  &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;&lt;b&gt; ️ PSG 홈 경기장(파르크 데 프랭스)으로 이동&lt;/b&gt;&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;'Exelmans' 역에서 하차 후 약 20분 정도 걸어가면 파르크 데 프랭스 경기장(&lt;b&gt;Parc des Princes)&lt;/b&gt; 이 눈앞에 나타납니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://maps.app.goo.gl/wRH6mwZaQi27oSaG7&quot;&gt;https://maps.app.goo.gl/wRH6mwZaQi27oSaG7&lt;/a&gt;&lt;/p&gt;
&lt;figure id=&quot;og_1743506339812&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;Porte de Saint-Cloud &amp;middot; 프랑스 75016 파리&quot; data-og-description=&quot;★★★★☆ &amp;middot; 지하철역&quot; data-og-host=&quot;www.google.com&quot; data-og-source-url=&quot;https://maps.app.goo.gl/wRH6mwZaQi27oSaG7&quot; data-og-url=&quot;https://www.google.com/maps/place/Porte+de+Saint-Cloud/@48.8385006,2.2465909,15z/data=!4m7!3m6!1s0x47e67a957ea94693:0x2d6f3adf9200036e!8m2!3d48.83801!4d2.25716!15sCg10cmFpbiBzdGF0aW9ukgEOc3Vid2F5X3N0YXRpb27gAQA!16s%2Fg%2F11bc5mlq1t?entry=tts&amp;amp;g_ep=EgoyMDI1MDMyNS4xIPu8ASoASAFQAw%3D%3D&amp;amp;skid=775ea431-054e-47ff-9316-94fb4cb4b53c&quot; data-og-image=&quot;https://scrap.kakaocdn.net/dn/rXMDL/hyYyJZsgsb/vejwxjuqIkyskY5SgHXjw0/img.jpg?width=900&amp;amp;height=900&amp;amp;face=0_0_900_900&quot;&gt;&lt;a href=&quot;https://maps.app.goo.gl/wRH6mwZaQi27oSaG7&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://maps.app.goo.gl/wRH6mwZaQi27oSaG7&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://scrap.kakaocdn.net/dn/rXMDL/hyYyJZsgsb/vejwxjuqIkyskY5SgHXjw0/img.jpg?width=900&amp;amp;height=900&amp;amp;face=0_0_900_900');&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;Porte de Saint-Cloud &amp;middot; 프랑스 75016 파리&lt;/p&gt;
&lt;p class=&quot;og-desc&quot; data-ke-size=&quot;size16&quot;&gt;★★★★☆ &amp;middot; 지하철역&lt;/p&gt;
&lt;p class=&quot;og-host&quot; data-ke-size=&quot;size16&quot;&gt;www.google.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;h4 data-ke-size=&quot;size20&quot;&gt;&lt;b&gt;⛔️ 경기장 입구 찾기 주의사항&lt;/b&gt;&lt;/h4&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;유럽 경기장은 Access, Sector, Entrance 같이 입구가 세분화 되어 있어 본인 좌석에 맞는 입구를 확인해야 합니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;PSG 홈경기장의 경우 Access 번호에 맞는 곳으로 이동하시면 됩니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: -apple-system, BlinkMacSystemFont, 'Helvetica Neue', 'Apple SD Gothic Neo', Arial, sans-serif; letter-spacing: 0px;&quot;&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&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;KakaoTalk_Photo_2025-04-01-20-25-07.jpeg&quot; data-origin-width=&quot;514&quot; data-origin-height=&quot;960&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/dQsIvw/btsM4sPqr2Z/r7W1PiUJY7xWLxFZrGu9Vk/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/dQsIvw/btsM4sPqr2Z/r7W1PiUJY7xWLxFZrGu9Vk/img.jpg&quot; data-alt=&quot;PSG 홈경기 티켓&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/dQsIvw/btsM4sPqr2Z/r7W1PiUJY7xWLxFZrGu9Vk/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FdQsIvw%2FbtsM4sPqr2Z%2Fr7W1PiUJY7xWLxFZrGu9Vk%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;404&quot; height=&quot;755&quot; data-filename=&quot;KakaoTalk_Photo_2025-04-01-20-25-07.jpeg&quot; data-origin-width=&quot;514&quot; data-origin-height=&quot;960&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;PSG 홈경기 티켓&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;예매한 좌석의 Access에 도착하면 Security 의 소지품 검사를 받게 됩니다.&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;소지품 검사가 무사히 끝나면, 예매 시 수신한 e-ticket 바코드를 기계에 스캔하라고 합니다.&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 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_Photo_2025-04-01-20-26-46.jpeg&quot; data-origin-width=&quot;1008&quot; data-origin-height=&quot;756&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/dbc74z/btsM4qD6hnx/HFEdB3a6qH9RJ7jgnq3gvK/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/dbc74z/btsM4qD6hnx/HFEdB3a6qH9RJ7jgnq3gvK/img.jpg&quot; data-alt=&quot;PSG 홈 경기장&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/dbc74z/btsM4qD6hnx/HFEdB3a6qH9RJ7jgnq3gvK/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fdbc74z%2FbtsM4qD6hnx%2FHFEdB3a6qH9RJ7jgnq3gvK%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;1008&quot; height=&quot;756&quot; data-filename=&quot;KakaoTalk_Photo_2025-04-01-20-26-46.jpeg&quot; data-origin-width=&quot;1008&quot; data-origin-height=&quot;756&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;PSG 홈 경기장&lt;/figcaption&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;span style=&quot;background-color: #ffffff; color: #222225; text-align: start;&quot;&gt;이때까지는 날씨도 맑고 관중도 많이 없어서 피크닉 온 기분이 많이 들었습니다.&lt;/span&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;KakaoTalk_Photo_2025-04-01-19-32-32.jpeg&quot; data-origin-width=&quot;1008&quot; data-origin-height=&quot;756&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/c2Pvcc/btsM5mHV4EC/X6BANeum5r7r7JU1oHiOVk/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/c2Pvcc/btsM5mHV4EC/X6BANeum5r7r7JU1oHiOVk/img.jpg&quot; data-alt=&quot;훈련하는 PSG 선수들&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/c2Pvcc/btsM5mHV4EC/X6BANeum5r7r7JU1oHiOVk/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fc2Pvcc%2FbtsM5mHV4EC%2FX6BANeum5r7r7JU1oHiOVk%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;1008&quot; height=&quot;756&quot; data-filename=&quot;KakaoTalk_Photo_2025-04-01-19-32-32.jpeg&quot; data-origin-width=&quot;1008&quot; data-origin-height=&quot;756&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;훈련하는 PSG 선수들&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;br /&gt;그리고&amp;hellip;경기장 입장 후 얼마 안되어 선수들이 트레이닝을 하러 나옵니다.&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;당시 PSG의 라인업은 지구방위대를 떠올리게 합니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;메시, 네이마르, 음바페, 라모스, 돈나룸마, 마르퀴뇨스, 하키미, 베라티, 페레이라 등&amp;hellip; 어마무시한 선수들이 많이 나왔습니다.&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;background-color: #ffffff; color: #222225; text-align: start;&quot;&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&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;KakaoTalk_Photo_2025-04-01-19-32-46.jpeg&quot; data-origin-width=&quot;1008&quot; data-origin-height=&quot;756&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/wKfQi/btsM5mOIAxe/WbVNTfBiLBcLCnIykMq061/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/wKfQi/btsM5mOIAxe/WbVNTfBiLBcLCnIykMq061/img.jpg&quot; data-alt=&quot;경기 시작 전 세레머니&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/wKfQi/btsM5mOIAxe/WbVNTfBiLBcLCnIykMq061/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FwKfQi%2FbtsM5mOIAxe%2FWbVNTfBiLBcLCnIykMq061%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;1008&quot; height=&quot;756&quot; data-filename=&quot;KakaoTalk_Photo_2025-04-01-19-32-46.jpeg&quot; data-origin-width=&quot;1008&quot; data-origin-height=&quot;756&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;그리고 경기 킥오프 시간이 다가오니, 경기장이 가득차기 시작했습니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;Collectif ultras paris는 PSG의 공식 서포터즈로 울트라(ultras)&amp;nbsp;성향의&amp;nbsp;서포터&amp;nbsp;모임입니다.&amp;nbsp;ultra라&amp;nbsp;그런지&amp;nbsp;열정적인&amp;nbsp;응원을&amp;nbsp;멀리서도&amp;nbsp;느낄&amp;nbsp;수&amp;nbsp;있었습니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;바로 옆 자리에 AS모나코 원정 팬들이 있었는데, 자꾸 홈 팬들한테 빠큐를 날려서 좀 빡쳤습니다 ㅎㅎㅎ.&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;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;&lt;b&gt;전반 20분&lt;/b&gt;, 모나코는&amp;nbsp; 빠른 역습을 통해&amp;nbsp;&lt;b&gt;Kevin Volland가&lt;/b&gt; 선제골을 기록하며 1-0 리드를 잡았습니다.&lt;/li&gt;
&lt;li&gt;PSG는 전반 내내 공격을 주도했지만, 모나코의 조직적인 수비와 골키퍼 &lt;b&gt;Alexander&lt;/b&gt; &lt;b&gt;N&amp;uuml;bel&lt;/b&gt;의 선방에 막혔습니다.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;Messi&lt;/b&gt;의 중거리 슛이자 빨랫줄처럼 날라가는 슛팅이 골대를 강타하고, &lt;b&gt;Neymar&lt;/b&gt;의 리바운드 슈팅도 수비에 차단되면서 득점까지는 이어지지 못했습니다.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;그러다 후반 70분&lt;/b&gt;, Neymar PK를 얻고, 직접 키커로 나서 침착하게 마무리하며 &lt;b&gt;1-1 동점골을 기록했습니다.&lt;/b&gt;&lt;b&gt;&lt;/b&gt;&lt;b&gt;&lt;/b&gt;&lt;b&gt;&lt;/b&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;figure data-ke-type=&quot;video&quot; data-ke-style=&quot;alignCenter&quot; data-video-host=&quot;kakaotv&quot; data-video-url=&quot;https://tv.kakao.com/v/454108262&quot; data-video-thumbnail=&quot;https://scrap.kakaocdn.net/dn/Shnsc/hyYyKc8Nnk/rjk6OXIkNZWZZhFSrgFgHk/img.jpg?width=736&amp;amp;height=1280&amp;amp;face=0_0_736_1280,https://scrap.kakaocdn.net/dn/bgKTQF/hyYyGu4tI3/rrSrsKD64uusE0h5K3o4N0/img.jpg?width=736&amp;amp;height=1280&amp;amp;face=0_0_736_1280&quot; data-video-width=&quot;450&quot; data-video-height=&quot;783&quot; data-video-origin-width=&quot;736&quot; data-video-origin-height=&quot;1280&quot; data-ke-mobilestyle=&quot;widthContent&quot; data-video-play-service=&quot;daum_tistory&quot; data-original-url=&quot;&quot; data-video-title=&quot;&quot;&gt;&lt;iframe src=&quot;https://play-tv.kakao.com/embed/player/cliplink/454108262?service=daum_tistory&quot; width=&quot;450&quot; height=&quot;783&quot; frameborder=&quot;0&quot; allowfullscreen=&quot;true&quot;&gt;&lt;/iframe&gt;
&lt;figcaption&gt;네이마르의 트레이드마크 페널티킥 루틴(PSG 소속 당시)&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;&lt;b&gt;Mbapp&amp;eacute;에게 결정적인 기회가 여러 번 왔지만&lt;/b&gt;, 슈팅이 골대를 벗어나거나 골키퍼 선방에 막히는든 득점까지 이어지진 못 했습니다.&lt;/li&gt;
&lt;li&gt;후반 막판, &lt;b&gt;Hakimi의 강력한 슈팅이 또다시 골대를 맞추며&lt;/b&gt; PSG는 역전 기회를 놓쳤다.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;PSG는 마지막까지 공격적으로 모나코를 공략했지만, 결국 경기는 1대1로 마무리되게 되었습니다.&lt;/b&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이렇게 인생 첫 번째 유럽 축구 직관 경기인 PSG와 AS 모나코의 경기는 1대1로 종료 되었습니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;경기에 대한 간략한 후기를 남기자면,&lt;/p&gt;
&lt;ol style=&quot;list-style-type: decimal;&quot; data-ke-list-type=&quot;decimal&quot;&gt;
&lt;li&gt;메시의 클래스는 역시 압도적이었습니다. 설렁설렁 뛰는 것 같아도 한 명쯤은 가볍게 제치고, 패스의 질이 와전히 달랐습니다.&lt;/li&gt;
&lt;li&gt;네이마르와 음바페는 나름 라이벌전이라 그런지, 중계로 보던 폭발전인 모습은 찾아보기 어려웠습니다. (하지만 1주 뒤 챔스에서..)&lt;/li&gt;
&lt;li&gt;AS모나코 팬들&amp;hellip; 빠큐 좀 그만해라잉&amp;hellip;&lt;/li&gt;
&lt;/ol&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이렇게 2022년 8월 28일, 제 인생 첫 번째 유럽 축구 직관 경기인 PSG VS AS 모나코 경기 기행문을 마칩니다.  &lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;</description>
      <category>유랑생활/축구 기행문</category>
      <category>Monaco</category>
      <category>PSG</category>
      <category>네이마르</category>
      <category>리그1</category>
      <category>메시</category>
      <category>모나코</category>
      <category>생제르망</category>
      <category>음바페</category>
      <category>직관</category>
      <category>파리</category>
      <author>성남FC</author>
      <guid isPermaLink="true">https://gabrielyj.tistory.com/229</guid>
      <comments>https://gabrielyj.tistory.com/229#entry229comment</comments>
      <pubDate>Wed, 2 Apr 2025 09:47:04 +0900</pubDate>
    </item>
    <item>
      <title>[Docker] Docker 환경에 mysql 추가하기</title>
      <link>https://gabrielyj.tistory.com/226</link>
      <description>&lt;p data-ke-size=&quot;size18&quot;&gt;Docker 가 보편화 되기 이전에는 개발 환경 셋팅에 정말 많은 공수가 필요 했습니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;하지만 Docker는 애플리케이션과 그 의존성을 컨테이너로 패키징하여 독립성과 경량화 장점을 갖고 있습니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;물론 빠른 배포, 빠른 스케일링 장점도 있지만 우선 Docker 환경에서 컨테이너를 올려보겠습니다&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;그러면 mysql 컨테이너를 만들어보겠습니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;어떻게 Docker 환경에서 mysql 컨테이너를 생성할 수 있을까요?&lt;/h2&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&lt;b&gt;우선 컨테이너의 생성을 위한 순서는 아래와 같습니다.&lt;/b&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;1. docker-compose.yml 파일 생성&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;2. Dockerfile 생성&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;3. docker-compose up 명령어 실행&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&amp;nbsp; &amp;nbsp; - 1) Dockerfile 정의 내용을 기반으로 이미지 빌드&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&amp;nbsp; &amp;nbsp; - 2) 이미지를 사용하여 컨테이너 생성 및 실행&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;4. 생성 컨테이너 확인&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;위의 순서에 맞게 하나씩 진행 해보겠습니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&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;598&quot; data-origin-height=&quot;354&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/Wkzpb/btsGAcqYO6h/QjIKpoLnzexeRKwIoONDA0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/Wkzpb/btsGAcqYO6h/QjIKpoLnzexeRKwIoONDA0/img.png&quot; data-alt=&quot;(그림. 프로젝트 디렉토리)&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/Wkzpb/btsGAcqYO6h/QjIKpoLnzexeRKwIoONDA0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FWkzpb%2FbtsGAcqYO6h%2FQjIKpoLnzexeRKwIoONDA0%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;498&quot; height=&quot;295&quot; data-origin-width=&quot;598&quot; data-origin-height=&quot;354&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;(그림. 프로젝트 디렉토리)&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;1. 프로젝트 최상위 디렉토리에 docker 디렉토리 및 docker-compose.yml 파일 생성 (그림. 프로젝트 디렉토리)&lt;/p&gt;
&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;pre id=&quot;code_1712886403536&quot; class=&quot;sql&quot; data-ke-language=&quot;sql&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;version: '1'

services:
  mysql:
    build:
      dockerfile: mysql/Dockerfile
    container_name: mysql
    environment:
      MYSQL_ROOT_PASSWORD: 1234
    ports:
      - &quot;3306:3306&quot;&lt;/code&gt;&lt;/pre&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;service:mysql:builder:dockerfile 에 Dockerfile 경로를 입력 해주세요(mysql/Dockerfile)&lt;/li&gt;
&lt;/ul&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;2. docker 디렉토리에 mysql 디렉토리 및 Dockerfile 생성 (그림. 프로젝트 디렉토리)&lt;/p&gt;
&lt;pre id=&quot;code_1712886416535&quot; class=&quot;sql&quot; data-ke-language=&quot;sql&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;# 베이스 이미지 설정
FROM mysql:latest&lt;/code&gt;&lt;/pre&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;Dockerfile 사용 예시를 공유하기 위해 베이스 이미지 설정만 추가 했습니다.&lt;/li&gt;
&lt;/ul&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;3. 프로젝트 docker 디렉토리 이동 및 docker 실행&lt;/p&gt;
&lt;pre id=&quot;code_1712887530020&quot; class=&quot;sql&quot; data-ke-language=&quot;sql&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;docker-compose up -d&lt;/code&gt;&lt;/pre&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;-d 옵션은 컨테이너를 백그라운드에서 실행하고 터미널 사용 제어권을 반환하는 역할을 합니다.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignLeft&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;629&quot; data-origin-height=&quot;73&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/4ZWWV/btsGy7YqSKR/jWbBmFydHRrHSwHgWvkjX0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/4ZWWV/btsGy7YqSKR/jWbBmFydHRrHSwHgWvkjX0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/4ZWWV/btsGy7YqSKR/jWbBmFydHRrHSwHgWvkjX0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2F4ZWWV%2FbtsGy7YqSKR%2FjWbBmFydHRrHSwHgWvkjX0%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;629&quot; height=&quot;73&quot; data-origin-width=&quot;629&quot; data-origin-height=&quot;73&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;4. mysql 컨테이너 확인&lt;/p&gt;
&lt;pre id=&quot;code_1712888517213&quot; class=&quot;sql&quot; data-ke-language=&quot;sql&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;docker exec -it mysql mysql -uroot -p&lt;/code&gt;&lt;/pre&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;해당 명령어 입력 후 비밀번호 입력 프롬프트가 표시됩니다. 이때 docker-compose.yml 에 설정한 비밀번호를 입력해주세요.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignLeft&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;621&quot; data-origin-height=&quot;237&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/YCOLi/btsGyFgC54c/n26K1bDo3k4rqv8N7kLDbK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/YCOLi/btsGyFgC54c/n26K1bDo3k4rqv8N7kLDbK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/YCOLi/btsGyFgC54c/n26K1bDo3k4rqv8N7kLDbK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FYCOLi%2FbtsGyFgC54c%2Fn26K1bDo3k4rqv8N7kLDbK%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;627&quot; height=&quot;237&quot; data-origin-width=&quot;621&quot; data-origin-height=&quot;237&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;이렇게 Docker 환경에서 mysql 컨테이너 생성 예제가 완료 되었습니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;컨테이너의 환경 설정을 docker-compose.yml 파일에 할지, Dockerfile에 할지 정확한 답은 없습니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;만약 고민이 되신다면 아래 포스트를 참고 해주세요.&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&lt;a href=&quot;https://gabrielyj.tistory.com/225&quot; target=&quot;_blank&quot; rel=&quot;noopener&amp;nbsp;noreferrer&quot;&gt;https://gabrielyj.tistory.com/225&lt;/a&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&amp;nbsp;&lt;/p&gt;</description>
      <category>Programming/Docker</category>
      <category>Compose</category>
      <category>container</category>
      <category>docker</category>
      <category>Dockerfile</category>
      <category>MYSQL</category>
      <category>도커</category>
      <category>컨테이너</category>
      <author>성남FC</author>
      <guid isPermaLink="true">https://gabrielyj.tistory.com/226</guid>
      <comments>https://gabrielyj.tistory.com/226#entry226comment</comments>
      <pubDate>Fri, 12 Apr 2024 11:23:26 +0900</pubDate>
    </item>
  </channel>
</rss>