• 카테고리
    • 전체 글

    • 카테고리1
    • 카테고리2
    • 카테고리3
    • 카테고리4
  • 태그
  • 방명록

'분류 전체보기'에 해당되는 글 1246건

  • 2021.03.24 아.. 휴대폰 케이스
  • 2021.03.22 여론 조사
  • 2021.03.22 문 대통령, 민주당 지지율 역대 최저.. 보궐 선거 어쩌나
  • 2021.03.19 레드마인(Redmine) 진척도 간격 넓히기
  • 2021.03.19 LCD창이 망가진 DRC-BT60 페어링 하기 6
  • 2021.03.12 .NET WinForm에서 Windows 10 API 사용하기
  • 2021.03.05 VMWare Workstation 과 Hyper-V 공생
  • 2021.03.04 우분투 서버에 Docker로 Portainer 설치

아.. 휴대폰 케이스

카테고리 없음 2021. 3. 24. 09:24

아침에 급한 마음에 택시를 타고 이동 중, 갑자기 휴대폰 그립감이 그리워져서 케이스를 벗겼다.

여기까지는 문제가 없었는데, 그만 차에다 두고 내렸다.

아무생각 없이 하차를 하고 이제 슬슬 껍데기 씌워보려는데, 없었다.

매우 당황.

그래서 급하게 택시를 조회하려고 했더니, 안타깝지만 기록이 없었다.

보통 신용카드의 내장 교통카드를 쓰면 아무 문제가 없었는데, 휴대폰의 삼성페이를 이용해서 했더니, 이 정보를 조회하려면, 캐시비를 통해서 조회를 해야 했다. 더 큰 문제는 캐시비가 이용 내용을 조회하려면, 못해도 하루의 시간이 지나야 된다는 것이다.

그 안에 명함이라도 꽂혀 있어야 하는데, 걱정이다.

신용카드 2장과 운전면허증, 그리고 7~8천원 정도의 현금.

과연 찾을 수 있을까...

 

여튼 다음에는 카카오 택시든, 우버 택시를 이용하던지, 아니면 신용카드로 직접 결제하는 방식을 써야 겠다.
휴대폰 가져다 대면 결제가 되서 편했는데, 막상 이런 문제가 터지니 이런 캐시비를 이용하는 것은 안될것 같다.
분명 지금 바로 연락을 하면 찾을 방법이 생길텐데, 아무래도 하루가 지나고 난 뒤에 확인이 가능하다고 하니...

성격 나쁜 운전자나, 택시 탑승자가 있다면 아무 생각 없이 집어들고, 지가 택할 만한 것만 집어 든 뒤, 휴지통에 버리기 때문이다.

아 찾고 싶다.

728x90
저작자표시 (새창열림)
블로그 이미지

하인도1

[하인드/하인도/인도짱 의 홈페이지] 저만의 공간입니다. 다양한 소재들을 나열하는 아주 단순 무식한 홈페이지 입니다. 다양한 문서 자료도 있겠지만, 저의 푸념들도 있답니다.

여론 조사

카테고리 없음 2021. 3. 22. 13:38

점심 먹고 갑자기 전화가 와서 받았다. 

여론 조사였다.

평소 같으면 그냥 씹고 넘어갔는데, 어제자 신문의 여론 조사 결과를 보고 어이가 없어서 참여 했다.
문대통령의 지지율이 35%란다. 난 이것도 높다고 생각했는데, 언론 플레이들을 하시는 곳에서는 드디어 레임덕이며 드디어 국정 지지도가 최저에 이르렀다고 한다. (사실 진짜 최저는 29.1 % 라고 적혀 있긴 하다.)

일단 국정운영 잘하고 계신하고 했고, 그냥 박영선 뽑고, 중도라고 했다.
난 솔직히 1년 남은 서울시장 임기 중에 뭘 해보겠다고 하는게 웃겨서 시장 공약의 중점도를 묻더라. 그냥 "기타"라고 했다. 그냥 지금 1년은 마무리나 잘하라고 하고 싶다. 박원순 전 시장이 하고자 했던 것들을 잘 정리하고, 더 진행할 것과 멈출 것들을 잘 솎아 내고 그간 시장 부재 중에 산적한 업무들을 잘 처리해 주기만을 바라고 있다.

조금 걱정인 건 말만 잘하는 그냥 그저 그런 정치인이 아니길만 빈다.

딱 이 분이 하던 일의 반만이라고 해줬으면 한다.

정말이다.

728x90
저작자표시 (새창열림)
블로그 이미지

하인도1

[하인드/하인도/인도짱 의 홈페이지] 저만의 공간입니다. 다양한 소재들을 나열하는 아주 단순 무식한 홈페이지 입니다. 다양한 문서 자료도 있겠지만, 저의 푸념들도 있답니다.

문 대통령, 민주당 지지율 역대 최저.. 보궐 선거 어쩌나

카테고리 없음 2021. 3. 22. 13:31

www.clien.net/service/board/park/15989021?od=T31&po=1&category=0&groupCd=

 

문 대통령, 민주당 지지율 역대 최저.. 보궐 선거 어쩌나 : 클리앙

https://news.v.daum.net/v/20210322085050649 에휴...

www.clien.net

클리앙 글 보다가, 재미있는 기사.

그런데 우리나라는 민주주의 국가다. 민주주의라는게 다수의 사람이 다양한 의견을 갖고 국정이 운영된다. 당연히 국민 대부분이 현 정부를 지지하고 운영하는 것을 찬성하지는 않을 것이다. 

그런데, 기사 제목만 보면 마치 이번 국정 운영하는 여당의 지지율은 처참하고 곧 레임덕이 올 것처럼 군다. 

무려 35%다. 정권 마무리하는 시기에 매우 민주적으로 운영되는 나라에서 35%면, 이거 진짜 지지다. 아마도 헌정사상 최초지 않을까? 정권 마무리 시기에 35% 지지면?

사실 35%라는 수치도 언론이 이상한 소리 떠들고 다니지만 않았다면, 저 수치보다 높지 않았을까?

  • 평창 올림픽 디스
  • 조국 장관 및 조국 장관 가족 관련
  • 일본 수출 규제 관련
  • 코로나 바이러스 대응
  • 백신 대응

일단 내가 기억하는 사건만 봐도, 언론에서 우려를 표하고, 반대하고, 야당 대변인같이 떠들어 댄 것만 기억난다. 실제로 그 결과는 언론 플레이 였구나 밖에 보이지 않는다. 이런 언론 조차 조지지 않고 있다.

지금 근 10년간 썩어왔던 것들이 제대로 보이기 시작한 것 같다. 하나씩 차근 차근 밟고 있는 문재인 대통령이 있어 지금 우리나라의 위치가 유지 되고 있지 않은가? 맨날 지금 당장 눈 앞에 보이는 것들을 자기 생각 없이, 아니 뇌피셜들을 찌끄리지 말고, 과거 부터 지금까지의 일들을 찬찬히 바라보았으면 좋겠다.

그들의 입에서 튀어나오는 것들이 생각보다 영향을 이곳 저곳 미치고 있다는 사실에 대해 그들 스스로가 책임감을 갖고 일 좀 했으면 좋겠다. (하긴 안되니까 법으로 조져야 한다고 입법하라고 하긴 하지만... )

728x90
저작자표시 (새창열림)
블로그 이미지

하인도1

[하인드/하인도/인도짱 의 홈페이지] 저만의 공간입니다. 다양한 소재들을 나열하는 아주 단순 무식한 홈페이지 입니다. 다양한 문서 자료도 있겠지만, 저의 푸념들도 있답니다.

레드마인(Redmine) 진척도 간격 넓히기

카테고리 없음 2021. 3. 19. 14:31

예전 버전에서는 일감의 진척도를 입력할 때, "1" 단위로 올라가게 되었었는데, 현재는 "10"단위로 올라간다.
(내 착각일 수도 있긴 하다)

그런데, 회사내에서 Gantt Chart 그리기 귀찮아서 이 Redmine을 사용하려는데, 저 Progress를 억지로 변경해서 적용해야 할 일이 생겼다. 하위 작업에서 계산하는 식에서는 큰 문제가 안되는데, 일감 하나로 Gantt 차트를 그렸더니, 10% 씩 올라가서는 값을 조정하기가 매우 힘들었다. 별 진척이 없어 1%만 올리려다 보니, 안되었다.

그래서 10% 단위를 1% 단위로 변경하는 방법을 고민을 했는데, 결국 Redmine의 소스를 수정하게 되었다.

일단 여기의 Redmine은 Docker를 기반으로 만들어져 있으며, sameersbn/redmine:3.4.13-2 버전으로 된 내용을 업데이트한 것이다. 만일 직접 다운 받아 설치했거나, 다른 패키지를 통해 설치된 것이면 그에 맞게 경로나 위치를 파악하여 해당 소스를 수정하면 된다.(버전이 다른 경우 다른 파일일 수도 있다.)

/home/redmine/redmine/app/views/issue_statuses

경로로 이동한다.

그리고 다음 명령을 넣어 편집기를 띄운다.

vi _form.html.erb

그럼 다음과 같은 소스를 볼 수 있는데,

이 중 6번째 줄 부분을 수정하는 것이다.

다음과 같이 수정하면 된다.

<p><%= f.select :default_done_ratio, ((0..100).to_a.collect {|r| ["#{r} %", r] }), :include_blank => true, :label => :field_done_ratio %></p>

즉 0 ~ 10 까지 도는 것을 0~100 으로, 그리고 0~10까지 돌면서 값에서 10을 곱했던 부분을 없애버린 정도.

다음은 issues 쪽이다.

 /home/redmine/redmine/app/views/issues

 

이제 _attributes.html.erb  파일을 연다.

vi _attributes.html.erb

항목 중 다음과 같은 부분을 찾는다.(대략 90라인 정도?)

<p><%= f.select :done_ratio, ((0..10).to_a.collect {|r| ["#{r*10} %", r*10] }), :required => @issue.required_attribute?('done_ratio') %></p>

위의 내용과 동일하게 수정해준다.

<p><%= f.select :done_ratio, ((0..100).to_a.collect {|r| ["#{r} %", r] }), :required => @issue.required_attribute?('done_ratio') %></p>

나중에 버전업을 하면 위의 코드가 원복 될 것 같긴 하지만, 일단, 위와 같이 수정하면 된다.
단, 수정 후 Redmine의 Application 서버를 재시작해주어야 적용된다.

 

결론을 내자면 두군데만 수정하면 된다.

/redmine/app/views/issue_statuses/_form.html.erb

/redmine/app/views/issues/_attributes.html.erb
728x90
저작자표시 (새창열림)
블로그 이미지

하인도1

[하인드/하인도/인도짱 의 홈페이지] 저만의 공간입니다. 다양한 소재들을 나열하는 아주 단순 무식한 홈페이지 입니다. 다양한 문서 자료도 있겠지만, 저의 푸념들도 있답니다.

LCD창이 망가진 DRC-BT60 페어링 하기

카테고리 없음 2021. 3. 19. 12:47

현재 내가 가진 DRC-BT60은 LCD가 맛이 갔다. 화면이 나오지 않는다. 그래서 매번 패어링을 할 때마다 지랄이다.

그래서 안보고 하는 방법을 나열하도록 한다.

최초 전원을 켜면 아래와 같은 화면이 나오게 된다. 문제는 나는 보이지 않는다.

그래서 여기서 먼저

버튼을 2번 누른다. 그러면 블루투스 모드이다. 

여기서 

버튼을 누른다.

 

그러면 화면에는 Pairing 혹은 Device List가 또는데, 보통 1개라도 페어링 된 상태면, Device List가 뜬다. 
만일 1개라도 페어링 된 상태라면, Device List가 뜨므로 아래와 같은

버튼을 눌러 준다. 

만일 위에서 버튼을 눌렀거나, 아니면 Paring 메뉴 상태라면, 아래의

버튼을 누른다.

그러면 화면에서는 원래 "OK", "Cancel"을 선택하는 화면이 나오게 되지만 안보인다. 기본값이 "Cancel"이기 때문에, 아래와 같은

버튼을 눌러 준다. 

정상적으로 여기까지 들어왔다면, 우측 상단의 LED가 붉은색과 파란색이 번갈아가면서 점등된다. 
그렇지 않다면, 처음 부터 다시 해야 한다. 또 최초 켰을 때 5~10초 정도 여유를 갖는것이 필요하다. 뭔가 초기화 중인데, 명령을 입력해봐야 입력이 씹힐 뿐이다. 그리고 각 명령을 넣었을때 천천히 넣는다. 1~2초 정도 간격을 두고 입력해야 한다. (안그러면 선택되지 않았거나 다른 것이 선택된 상태일 수 있다.)

정리하면 내 상태(이미 페어링이 여러번 된 상태)라면 다음과 같은 명령을 넣는다.

FM 모드로 이동
Bluetooth 모드로 이동

 

선택
Paring 메뉴로 이동
Paring 메뉴 선택
OK로 이동
OK 선택

 

728x90
저작자표시 (새창열림)
블로그 이미지

하인도1

[하인드/하인도/인도짱 의 홈페이지] 저만의 공간입니다. 다양한 소재들을 나열하는 아주 단순 무식한 홈페이지 입니다. 다양한 문서 자료도 있겠지만, 저의 푸념들도 있답니다.

.NET WinForm에서 Windows 10 API 사용하기

카테고리 없음 2021. 3. 12. 15:39

지금 Windows 10에서 Notification 을 해주는 프로그램을 만들려고 했는데, 보니까, UWP와 같은 유형의 프로젝트에서만 가능한 API를 사용해야 했다. 처음에 프로젝트의 일부 설정 바꿔서하는 방법을 해봤는데, 확인해보니, 1908 버전 이후의 Windows 10의 경우에는 이 기능이 안된다고 한다.

그래서 구글링을 해보니 나와 같은 유사 문제가 발생했었고, 여기서는 좀 색다른 방법을 제시하여 포스팅 한다. 원문은 아래의 링크를 통해서 확인하면 된다. 사실 원문에서는 WPF 프로젝트를 만들었는데, UWP로 만들지 않고 처리하는 방법이지만, WinForm으로 해보니 잘 되었다.

www.thomasclaudiushuber.com/2019/04/26/calling-windows-10-apis-from-your-wpf-application/

 

Calling Windows 10 APIs From Your WPF Application

Did you know that you can call Windows 10 WinRT APIs from your WPF and WinForms apps? In this blog post I’ll show you how to display toast messages from a WPF application by using the Windows…

www.thomasclaudiushuber.com

지금 만들고 싶은 것은 Windows 10의 알림센터에 알림을 자동으로 내보내는 도구를 만들려고 한다. 여기 포스팅하는 예제는 그 프로그램을 만들면서 하는 방식들이다.

다만, 이 개발 작업은 Windows 10 2H02 버전 위에서 Visual Studio 2019로 했다.

 

WinForm 만들기

WinForm 프로젝트는 기본대로 만들면 된다. 다만, 사용하는 .NET Framework 버전을 4.8로 했다. 이 내용을 적용하려면, 최소 .NET Framework 4.5 이상이라고 했는데, 4.5에서 잘 안되는 것 같아, 내 Visual Studio에서 갖는 최신 버전인 4.8로 했다.

NuGet 패키지 관리를 띄운다.

NuGet 패키지 관리 도구가 뜨면, "찾아보기" 탭에서 "Microsoft.Windows.SDK.Contracts"를 검색어로 넣어 찾는다,

찾았으면, 해당 내용에 대한 Install 버튼을 누르고, 라이선스에 "동의함"을 하면 된다.

일단, 위의 패키지만 설치되면 기본적인 준비는 끝난다.

 

알림 메시지 전송 Application 만들기.

일정 주기에 따라 실행되는 코드를 만들기는 하겠지만, 여기서는 알림센터에 알림을 띄우는데에 있으니, 대충 Button 누르면 알림 메시지가 뜰 수 있게 만들 예정이다. 

먼저 WinForm(Form1.cs)의 디자이너 화면을 띄워 Button을 추가한다.

자 이제 해당 Button의 OnClick 이벤트에 대한 핸들러 코드를 생성한 뒤에 다음 코드를 추가한다.

string title = "이 알림 테스트는 말이죠, 현재시간을 알려줍니다.";
string timeString = $"현재 시간은 말이죠~ {DateTime.Now:HH:mm:ss} 입니다.";
string thomasImage = "https://www.thomasclaudiushuber.com/thomas.jpg";

string toastXmlString =
   $@"<toast><visual>
            <binding template='ToastGeneric'>
            <text>{title}</text>
            <text>{timeString}</text>
            <image src='{thomasImage}'/>
            </binding>
        </visual></toast>";

var xmlDoc = new XmlDocument();
xmlDoc.LoadXml(toastXmlString);

var toastNotification = new ToastNotification(xmlDoc);

var toastNotifier = ToastNotificationManager.CreateToastNotifier();
toastNotifier.Show(toastNotification);

그런데 보면, XmlDocument, ToastNotification, ToastNotificationManager 등이 붉은색 글자로 참조가 안걸려 있다고 한다. 이 항목들에 대한 using을 걸어주는데, 단! 이 모든 모듈들은 Windows.UI, Windows.Data 라는 이름으로 시작되는 Namespace에서 using을 걸어야 한다. 특히 XmlDocument의 경우 System.Xml과 겹칠 수 있는데, 절대 System.Xml을 걸면 안된다!

XmlDocument는 반드시 Windows.Data.Xml.Dom 을 걸어준다.

나머지 ToastNotification과 ToastNotificationManager는 Windows.UI에서 걸면 된다.

붉은색 표시 없이 말짱하게 나오면 된다.

코드까지는 모두 준비되었고, 컴파일도 된다. 

그런데 실행하면 ToastNotificationManager.CreateToastNotifier() 에서 계속 Exception이 발생한다.

왜 이럴까.. 처음에는 나도 잘 몰랐는데 원문 포스팅 글을 보니, 저 문제는 Windows 10 1809 버전 이후 보안 문제로 인해 UWP 프로젝트에서 처럼 고유 ID를 갖는 Application이 아니면 API 사용이 불가능하게 되었다고 한다. 즉 이 WinForm 프로그램을 마치 Windows 10 Application 처럼 구성하도록 해야한다는 것이다. 결론은 UWP 로 개발하라는 것인데... 다행히 해당 블로그 포스트에서는 해결 방법을 제시한다.

Windows App으로 둔갑시키기

결론적으로는 Windows App과 같은 설치용 프로그램으로 만들어 실행하면 된다고 한다. 여기서는 이를 위한 작업을 수행한다. 

먼저 솔루션 위에서 메뉴를 띄워 "추가"를 선택하고, "새 프로젝트"를 선택하면 된다. 

프로젝트 종류를 고르는 창이 뜨는데, 이 창의 오른쪽 위의 검색창을 이용해 "패키징" 혹은 "Packaging" 이라고 검색어를 넣으면 "Windows Application Packaging Project" 라는 항목을 볼 수 있다. 이 항목을 고르면 된다.

뭐 이름은 대충 지어도 된다. 나는 기본 값을 그대로 넣었다.

그러면 이 Application이 지원하게 되는 Windows 버전을 선택하는 것이 나온다. 기본 Windows 10 버전과, 최소 버전을 설정한다. 현재 Visual Studio 설치시 적용했던 SDK 버전 만큼 선택이 가능하며, 자신이 사용할 API 들의 버전을 잘 고려해주어야 한다. 특별한 기능적인 이슈가 없다면 기본 값으로 설정하면 된다. 다만 실행할 곳의 Windows 버전이 너무 낮다면 어느 정도 고려를 해줘야 할 수도 있다.

새롭게 추가된 프로젝트에서 "Application" 이란 위치에서 메뉴를 띄워 "참조 추가"를 한다.

선택 창이 나오는데 여기서 우리 프로그램을 걸어주면 된다.

이제 이 새로만든 프로젝트에서 "시작 프로젝트로 설정"을 해주고 실행한다.

만약 UWP 개발을 한번도 해본적이 없는 경우 Windows 10 설정에서 "개발자용" 항목이 뜨게 된다. 이 새로 만든 UWP가 Microsoft Store를 통하지 않고 바로 실행할 수 있게 하는 설정이다. 일단 해당 기능을 "켬"으로 하면 실행이 가능하다.

 

그러면 오른편 아래 쪽에 우리가 원하는 기능이 활성화되어 알림을 띄워 주게 된다.

728x90
저작자표시 (새창열림)
블로그 이미지

하인도1

[하인드/하인도/인도짱 의 홈페이지] 저만의 공간입니다. 다양한 소재들을 나열하는 아주 단순 무식한 홈페이지 입니다. 다양한 문서 자료도 있겠지만, 저의 푸념들도 있답니다.

VMWare Workstation 과 Hyper-V 공생

카테고리 없음 2021. 3. 5. 07:05

VMWare에서 만든 Workstation 제품을 매우 오랜기간 사용해왔다. 아마도 10버전 때부터 구매해서, 매 버전마다는 아니지만, 중간 중간 상위 버전을 구매했다. (매 버전마다 대략 10만원 정도 쓴듯...)
다양한 테스트나 좀 위험한 프로그램을 돌릴 때, 이용을 많이 해왔는데, 상당히 유용했다.
물론 라이선스 문제가 있는 다른 분들은 Oracle의 VMBox나, Windows 10 Pro나 Windows Server 쪽에 탑재된 Hyper-V 등을 이용하는 경우도 있지만, 나 같은 경우 개발 PC에서 즉시 응답도 되고, 성능적인 하락 없이 충분히 동작하는 제품은 VMWare의 Workstation이 최고 였던 것 같다.

그러다가, 이번에 Docker에 꽂혀 Docker를 사용하려고 설치를 했는데, 문제가 갑자기 잘 동작하던 VMWare Workstation이 오류를 뱉으면서 실행이 안되는 것이였다. VMWare Workstation 프로그램 자체는 잘 뜨는데, VM만 실행하면 아래와 같은 다이얼로그를 보여주고 더 이상 실행이 안된다.

VMware Workstation and Device/Credential Guard are not compatible. VMware Workstation can be run after disabling Device/Credential Guard.

Hyper-V 계열의 설정이 Enable 되게 되면 VMWare Workstation을 쓸 수 없다는 메시지 였다. 즉, Hyper-V의 기능을 비활성화 해달라는 메시지 같았다. 

이 메시지를 처음 봤을때 상당한 고민에 빠졌다. Docker가 반가상화기 때문에, 내 개발 PC의 부담을 줄이면서 가상화를 구축할 수 있어 매우 마음에 들어 잘 되었다고 생각했는데, 매번 테스트 때는 GUI 기반의 OS로 자주 하기 때문에, 전가상화를 지원하는 솔루션이 필요했기 때문이다. 그렇다고 VMWare Workstation을 포기하고 Hyper-V로 전환하기에는 Hyper-V의 강력한 기능 대신 그 관리도구나 Console 접속 도구가 너무 구려서 사용하기가 좀 그랬다.

양자택일을 강요받는 느낌이여서 매우 불편했다. 

그러다가, 저 다이얼로그 박스의 URL을 클릭해봤고, 해당 내용에 대한 KB가 나온다.

kb.vmware.com/s/article/2146361

내용을 살펴보니, 내 예상대로 Hyper-V와의 연동 문제였던 것이다. 

근본적으로 해결하는 방법은 다음과 같다.

먼저 Windows가 20H1 이상의 버전으로 설치되어 있어야 한다

동시에 VMware Workstation도 15.6.5 이상 버전을 설치하면 된다는 것이였다.

 

다행히 최근 개발 PC는 20H2를 설치해서 업그레이드가 완료된 상태. VMware Workstation을 확인해보니, 15.6.2 였다. 즉 VMware Workstation 만 업그레이드 하면 되는 것이였다.

그리고 업그레이드를 했더니... 가상머신이 뜨는 것이다. 감격...

그런데 잠시 후... 괴이한 현상에 다시 당황했다. 이상하게 네트워크가 잡히지 않는 문제가 발생했다. 분명 예전에 Bridge 설정으로 잘 연결되어 있었던 가상머신인데, 인터넷이 연결안된다는 것이였다. 심지어 DHCP를 아예 받지조차 못한 것이였다. 

확인해보니 Netowork 카드 내에 설치된 각종 구성요소들 중, 가상 머신 관련된 구성요소들의 충돌이였다.
이 부분을 설정하려면 도스창 혹은 Windows 키 + R 을 눌러 나오는 입력창에 아래의 명령을 넣는다.

control ncpa.cpl

그러면 네트워크 목록이 나오는데, 그 중 자신의 네트워크 카드에 해당하는 곳에서 더블클릭해서 들어간 뒤, "속성"을 누르면 된다.

그 안의 속성을 보면 다음 두가지 항목이 모두 체크되어 있을 것이다.

  • VMware Bridge Protocol
  • 브리지 드라이버

이 두 개가 동시에 설정되어 있어 오류를 내는 것이다.

방법은 둘 중 하나를 꺼야 한다. 만일 VMware 쪽을 살리고 싶으면 아래의 브리지 드라이버를 끄고, 반대로 Docker 쪽을 살리고 싶으면 VMware Bridge Protocol을 꺼줘야 한다. 

다시 고민... 둘 줄 하나라니...

그래서 나 같은 경우에는 Wireless LAN 이 하나 남길래, 그 쪽에서는 역으로 설정해서 인터넷에 연결해버렸다.

즉, 유선 랜에는 VMware Bridge Protocol 만을 켰고, 무선 랜에는 브리지 드라이버만 켰다.

확인해보니, VMware Workstation 내의 가상머신들도 정상적으로 네트워크가 되었고, Docker의 Container 들도 정상적으로 통신이 됨을 확인했다. 결국 이렇게 가상머신들을 공유해서 쓰려면, 물리적인 네트워크를 분리해서 구성해야 할 것 같다. 

 

728x90
저작자표시 (새창열림)
블로그 이미지

하인도1

[하인드/하인도/인도짱 의 홈페이지] 저만의 공간입니다. 다양한 소재들을 나열하는 아주 단순 무식한 홈페이지 입니다. 다양한 문서 자료도 있겠지만, 저의 푸념들도 있답니다.

우분투 서버에 Docker로 Portainer 설치

카테고리 없음 2021. 3. 4. 19:49

Docker를 설치하긴 했는데, Docker를 핸들링하려면 매번 Command Line으로 마술부리듯 끊임없이 입력해야 한다. 물론 Command Line 입력 작업이 매우 직관적이기 때문에, 명령만 잘 구성한다면 매우 편리하게 사용할 수도 있다. 하지만, Windows 기반의 GUI 프로그램에 익숙해져버린 나 같은 경우 이 명령창 기반의 작업은 Docker를 전체적으로 관리할 때 매우 어려움이 컸다. 이전 상태 값에 대한 파악을 하려고 할 때마다 명령을 넣어 이리저리 컨텍스트를 매 순간 순간 마다 입력해서 확인해야 했기에 기억력이 떨어지면 이 내용을 자주 놓치고 반복하게 된다.  그래서 GUI 기반의 도구를 찾아보다가, Portainer 라는 제품을 확인했고, 이 Open Source 기반의 도구라면 Docker의 관리가 편해질 것 같아 설치를 진행해본다. 

다만, 이 글 역시 밑의 글 처럼 다른 블로그의 포스트 된 내용을 적용해보고 내 나름대로 정리했다.
원본 글은 아래의 URL을 통해 접근이 가능하다.

psychoria.tistory.com/684

 

[자작NAS] 우분투 서버에 Docker로 Portainer 설치

Portainer는 웹 기반의 도커 관리 툴입니다. 웹 기반이기 때문에 편리한 접근성을 제공하는 점이 강점입니다. 우분투 서버에 Portainer를 설치하는 방법은 다음과 같습니다. Portainer는 도커 관리 툴인

psychoria.tistory.com

 

시작 전 확인 내용

사실 자신이 사용하고 있는 운영체제 및 설정 값은 각기 다른 모습을 갖추고 있어 딱 이것이다 라는 글을 찾기가 매우 어렵다. 내가 여기에 적은 글도 수많은 상황 중 하나일 뿐이다. 

운영체제는 Ubuntu 이며 ubuntu-20.04.1-live-server-amd64.iso 이미지로 설치했다.

클린 인스톨 상태에서 docker-ce를 설치했으며 현재 버전 아래와 같다.

Client: Docker Engine - Community
 Version:           20.10.5
 API version:       1.41
 Go version:        go1.13.15
 Git commit:        55c4c88
 Built:             Tue Mar  2 20:18:20 2021
 OS/Arch:           linux/amd64
 Context:           default
 Experimental:      true

Server: Docker Engine - Community
 Engine:
  Version:          20.10.5
  API version:      1.41 (minimum version 1.12)
  Go version:       go1.13.15
  Git commit:       363e9a8
  Built:            Tue Mar  2 20:16:15 2021
  OS/Arch:          linux/amd64
  Experimental:     false
 containerd:
  Version:          1.4.3
  GitCommit:        269548fa27e0089a8b8278fc4fc781d7f65a939b
 runc:
  Version:          1.0.0-rc92
  GitCommit:        ff819c7e9184c13b7c2607fe6c30ae19403a7aff
 docker-init:
  Version:          0.19.0
  GitCommit:        de40ad0

 그리고 Docker의 편의를 위해 Docker 그룹에 내 아이디도 포함시켰다. 

설치 전 단계

Potainer를 설치 구성하기 전에, 이 Potainer에서 사용되는 각종 설정값, 데이터들을 저장하기 위한 폴더를 정의해 주는 것이 좋다. 안그러면 Potainer의 가상 HDD 내에 저장되게 되는데, 이 안의 내용을 접근하려면 생각보다 번거롭다. 그래서 데이터 부분만을 저장하기 위한 디렉토리를 생성한다. 나 같은 경우에는 var를 잘 이용하기 때문에, var 안에 디렉토리를 생성했다.

sudo mkdir -p /var/portainer/data

다음에는 바로 이미지를 자동으로 다운 받아 설치되어 실행되게 명령을 넣는다.

docker run -d -p 8888:9000 --name=portainer --restart=unless-stopped -v /var/run/docker.sock:/var/run/docker.sock -v /var/portainer/data:/data portainer/portainer

명령 줄이 매우 긴데.. 그 중 몇가지만 짚어서 설정해주면 된다.

-p 8888:9000

이 옵션에서 앞의 숫자와 뒷 숫자를 ":" 로 구분한다. 여기서 앞의 숫자는 외부에서 접근할 때의 포트 번호고 뒷 숫자는 Docker Container, 여기서는 Potainer 가상 머신의 포트 번호를 의미한다. 이 옵션이 없으면 Potainer의 9000번 포트를 접근할 수 없다. 바깥에서 보이는 포트를 Container 안의 포트와 연결해주는 작업으로 이해하면 된다.

-v /var/portainer/data:/data

거의 맨 뒤쪽의 옵션인데 -v 로 되어 있으며, 앞의 포트 처럼 ":"를 중심으로 두개의 경로가 있다. 이 중 앞의 경로가 Docker가 실행되고 있는 호스트 컴퓨터의 경로이고, 뒤의 경로가 Container 내부에서 사용되는 경로이다. 즉 /var/potainer/data 라는 디렉토리를 Portainer Container에서 /data 처럼 쓰겠다라는 의미가 된다. 앞의 설치 단계에서 만든 경로를 넣어주면 된다. 

자 명령이 완성되어 입력하면 자동으로 이미지를 다운 받고, 자동으로 실행된다.  실행되고 있는지 확인하고 싶으면 아래와 같이 명령을 넣어보면, 결과를 볼 수 있다.

docker container ls

 

사이트 접속하기

Docker가 실행 중인 PC의 아이피 주소에 8888 포트를 넣어 접속하면 아래와 같이 사이트에 접속이 된다.

http 기반으로 접속이 되며, 맨 처음 접속하는 순간 관리자 계정을 최초로 생성하기 위한 화면이 뜬다. Username은 기본값으로 admin으로 되어 있다. 바꿔도되긴 하는데, 그대로 둬도 무방하다. 그리고 계정에 대한 암호를 만들라고 나오게 된다. 암호를 적절히 만들어 넣고, "Create user"를 한다.

다음에는 이 Portainer 사이트가 관리할 Docker의 사이트 정보를 넣도록 하는 부분이 있다. 원격에 있는 Docker를 설정할 수도 있고, Agent를 기반으로 할 수 있으며, 심지 Azure와도 연계가 된다. 다만 여기서는 현재 설치된 Docker를 관리할 것이므로 Local을 선택한다. (이를 위해서 위의 docker run 할 때 옵션에  socker 부분에 대해 -v 옵션으로 설정해서 실행한 것이다.)

이제 Connect를 눌러보자

그러면 현재 Docker 서버의 Overview를 볼 수 있으며, 그 안에 들어가서 각종 Container나, Image 등을 확인해볼 수 있다.

 

정리하면...

물론 아예 Docker의 이해가 없이 쭉 따라하기 식으로 구축해도 무방하긴 한데, 이 Portainer를 사용하려면, 어느정도의 Docker의 이해가 필요하다. 일단 설치를 하더라도, 가급적이면 명령어 기반의 동작 방식을 어느 정도는 연습을 하는 것을 추천한다. 나 역시도 다양한 명령을 입력해보고, Docker를 이리저리 사용하면서 조금씩 기능을 깨닫는 부분이 있었다.

 

728x90
저작자표시 (새창열림)
블로그 이미지

하인도1

[하인드/하인도/인도짱 의 홈페이지] 저만의 공간입니다. 다양한 소재들을 나열하는 아주 단순 무식한 홈페이지 입니다. 다양한 문서 자료도 있겠지만, 저의 푸념들도 있답니다.

  • «
  • 1
  • ···
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • ···
  • 156
  • »
250x250

블로그 내에 소스 코드 삽입 이사온 기념 스킨도... RSS 전문 기능 비활성화 관련. 스킨 바꾸어 보았습니다. 서버 파일 정리 좀 했습니다.

«   2025/06   »
일 월 화 수 목 금 토
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30

블로그 친구 지름신 수 2010 moss 비스킷 Visual Studio 것 Google Apps Engine 인터파크 java Azure 개발환경 Buscuit 오류 좀 windows 협업 불만 WSS me2dayzm MOSS 2007 e-book me2photo 매뉴얼 twi2me Tutorial me2sms SharePoint

  • Total :
  • Today :
  • Yesterday :

Copyright © 2015-2025 Socialdev. All Rights Reserved.

Copyright © 2015-2025 Socialdev. All Rights Reserved.

티스토리툴바