2021/07 14

시놀로지 NAS에서 Virtual Machine Manager로 윈도우 사용하기

시놀로지 NAS는 리눅스 기반의 운영체제를 기반으로 한 DSM으로 동작한다. 시놀로지 NAS에 Docker를 기반으로 셋팅한 Jenkins 역시 리눅스 기반이다. 시놀로지 NAS에 Jenkins 구축하기 현재 근무 중인 회사에서는 빌드 및 배포 시스템으로 Atlassian의 Bamboo를 사용 중이다. 기능도 익숙하고 사용하기 편리하지만 상용 제품이다 보니 개인이나 소규모로 사용하기에는 부담이 있다. www.bearpooh.com 이렇게 셋팅한 Jenkins에 Visual Studio 빌드를 위한 별도의 에이전트를 추가하려면 윈도우 환경의 Docker나 가상환경이 필요하다. 그러나 아래와 같은 구조적인 차이로 인해 리눅스 환경에서는 윈도우 운영체제를 Docker로 사용할 수 없다. [Windows 컨테이..

::: IT인터넷 ::: 2021.07.30

exe 파일 Nexus에 배포하기

Visual Studio에서 빌드를 하면 EXE 또는 DLL 파일이 생성된다. EXE 파일의 경우 바로 사용 가능하기 때문에 배포해야 하는데 방법은 여러가지가 있다. FTP 서버를 사용한다. 웹서버를 사용한다. 사설 저장소를 사용한다. 이미 Nexus를 구축하고 PyPi, Docker, APT, Conda 사설 저장소로 사용하고 있으므로, 생성한 EXE 파일도 Nexus로 배포하기로 했다. 생성하는 방법은 다른 저장소 생성 방법과 거의 동일하다. 저장소 타입이 Raw인 것만 다르다. PyPi 저장소 생성 방법은 다음 포스팅을 참고한다. Nexus3를 이용한 PyPi 사설 저장소 구축 Nexus3를 이용한 PyPi 사설 저장소 구축은 3개의 저장소가 필요하다. hosted (Local) - 내부에서 작성한..

::: IT인터넷 ::: 2021.07.28

Visual C++ 프로젝트 버전 정보 쉽게 관리하기

일반적으로 프로그램을 작성하면 해당 프로그램의 버전 정보를 입력해야 한다. 버전 정보는 해당 프로그램의 변경 이력을 나타내는 정보로 사용된다. Visual C++의 MFC로 프로그램을 작성할 때 버전 정보는 프로젝트명.rc 파일 - Version - VS_VERSION_INFO에 위치한다. 깊숙한 곳에 있고 rc 파일 형식이라 버전 정보를 찾거나 수정하기가 불편하다. 스칼라의 경우 build.sbt, 파이썬의 경우 setup.py에 버전을 기입할 수 있어 편리하다. 버전 정보를 별도의 헤더 파일로 분리하여 rc 파일에 전달하면 보다 쉽게 버전 관리를 할 수 있다. rc 파일 확인하기 프로젝트명.rc 파일에는 FILEVERSION, PRODUCTVERSION, FileVersion, ProductVersi..

::: IT인터넷 ::: 2021.07.26

Visual C++ 프로젝트 폴더 구성하기

NAS에 개발 환경을 구축하면서 약 7년 전에 MFC 공부하면서 만들었던 MD5를 추출하는 GUI 툴을 테스트 프로젝트로 활용했다. Visual Studio 2008의 Visual C++과 MFC를 사용해서 만들었다. Visual Studio Express 2010 (Visual C++ 2010)은 MFC가 포함되어 있지 않아 빌드에서 오류가 발생한다. (MFC 관련 SDK를 추가로 설치하면 사용 가능하다.) Visual Studio Community 2019는 MFC가 포함되어 있어서, MFC를 추가 설치하면 빌드가 가능하다. 최근엔 GUI 관련 개발도 Qt 또는 PyQt 같은 더 쉬운 방법 있어 MFC를 사용하는 경우는 많지 않은 것 같다. NAS에 구축한 GitLab과 Nexus에 해당 프로젝트를 ..

::: IT인터넷 ::: 2021.07.23

GitLab과 JIRA Cloud 연동하기

GitLab (직접설치)와 Jira Cloud에 연동이 가능하다. Commit이나 Pull Request 내역에 대해 Jira 이슈에 자동으로 기록을 남겨주는 정도이다. gitlab.com을 사용하는 경우에는 Jira Cloud에서 제공하는 3rd-party 앱을 사용하면 된다. 그러나 GitLab을 직접 설치해서 사용하기 때문에 패스! Jira Cloud 무료 계정은 GitLab과 기본 통합만 지원한다. GitLab Development Panel 통합은 Jira 유료 계정만 지원한다. 무료 계정은 OAuth 메뉴가 없어 적용이 안된다. 기본 통합은 Jira Cloud UI에서 Branch 생성 등을 지원하지 않는다. 하지만 무료로 Commit 로그를 자동으로 남겨주는 것에 만족하기로 했다. GitLa..

::: IT인터넷 ::: 2021.07.21

Visual Studio 2019 Community 개발 환경 구성

이전 포스팅에서도 다뤘지만, MS에서 제공해주는 무료 개발툴은 크게 3가지이다. Visual Studio Express 개인 목적은 완전 무료 기능을 제한하는 대신 회사에서도 사용 가능 상용 프로그램 제작 배포 가능 MS 제품 중심 2017 버전까지 제공 Visual Studio Community 개인 목적은 완전 무료 정식 버전과 기능상 차이 없음 개인과 PC 250대 이하 또는 연 매출 10억 이하인 회사/조직은 무제한 사용 가능 그 이상의 회사나 조직은 교육, 학술 연구, 오픈소스 기여 목적으로 사용 제한 (제품 개발에 사용 금지) 파이썬, JS 등 다양한 언어 지원 2013 버전부터 제공 Visual Studio Code 개인, 회사 모두 무료로 사용 가능 빌더가 내장되지 않아 사실상 코드 편집기..

::: IT인터넷 ::: 2021.07.19

Visual Studio Express 2010 개발 환경 구성

Visual Studio Express 버전은 MS에서 무료로 제공하는 개발툴이다. 현재는 Community Edition으로 제공하고 있으며, Visual Studio Code라는 별도 툴도 제공한다. VS Code가 코드 편집기의 성격이 강하다면, Visual Studio Expresss와 Community는 종합 개발 환경 (IDE, Integrated Development Environment)을 제공한다. Express 버전은 정식 버전보다 제공하는 기능이 적지만, 개발 공부와 간단한 도구 제작에는 부족함이 없다. Community 버전은 정식 버전과 기능 면에서 거의 차이가 없고, 회사에서 사용하거나 상용 프로그램 제작하는 것에 제한을 두는 것으로 알고 있다. 예전에 작성했던 간단한 툴이 Vi..

::: IT인터넷 ::: 2021.07.16

시놀로지 NAS에서 Docker로 GitLab 설정하기

DSM 7.0으로 업데이트 되면서 기존에 사용하던 gitlab 패키지가 3rd-party라고 지원을 중단했다. 그래서 gitlab을 삭제하고 DSM 7.0으로 업데이트를 진행했다. GitLab을 새로 설치하기 위해 Docker를 이용한 방법으로 진행해보았다. 생각보다 쉽지만 트러블슈팅은 복잡하다. DSM 6.x 버전에서 GitLab 패키지를 이용한 설치 방법은 아래 포스팅을 참고한다. 시놀로지 NAS에서 GitLab 설정 방법 참고1) 본 내용은 DSM 6.2.x 버전을 기준으로 작성되었습니다. . 참고2) sameersbn/gitlab Docker 이미지로 DSM 7.0.x에 설치했습니다. 다음 포스팅을 참고해주세요. 시놀로지 NAS에서 Docker로 GitLab 설정하기 D.. www.bearpooh..

::: IT인터넷 ::: 2021.07.14

윈도우 환경에서 git-scm 설정하기

우분투 환경에서는 sudo apt install git 명령만 실행하면 git 설치가 쉽게 진행되지만, 윈도우에서는 별도 설치 패키지가 필요하다. 일반적으로 윈도우 환경에서 가장 유명한 것은 git-scm으로 알려져 있어, 해당 패키지를 통해 git을 설치한다. git-scm 다운로드 git-scm 사이트에 접속한다. Git git-scm.com 우측 하단의 'Download 2.32.0 for Windows'를 클릭하고 설치 파일을 다운로드한다. 현재 2.32.0 버전이 최신 버전이다. git-scm 설치 다운로드한 설치 파일을 실행한다. GNU GPL 라이선스 동의 페이지에서 Next를 클릭한다. 설치 경로를 지정하고 Next를 클릭한다. 보통 기본 경로를 사용한다. 설치 구성 요소를 선택한다. On..

::: IT인터넷 ::: 2021.07.12

시놀로지 NAS DS220+ DSM 7.0 업데이트 적용

DS220+와 DS213에서 관리 화면인 DSM (Disk Station Manager)을 6.2.3-25556 버전으로 사용하고 있었다. 사실 7.0 버전에 대한 관심은 없었는데 최근에 7.0 버전이 정식 배포되었다. Synology Incorporated DiskStation Manager 7.0 간소화된 사용자 환경, 강화된 로그인 보안, 유연한 클라우드 저장소 및 클라우드에서 시스템 모니터링은 더욱 우수하고 빠른 저장소 기술의 결과입니다. DSM 7.0은 전반에 걸쳐 www.synology.com 업데이트는 꼬박꼬박 설치하는 직업병으로 인해 DSM 7.0도 업데이트를 진행했다. 아쉽게도 DS213은 DSM 7.0을 지원하지 않는다. 512MB 램이라 스펙이 이제 안되는 것 같다. DS220+에서 ..

::: IT인터넷 ::: 2021.07.10