Windows Server 2019 WSL 설치하기

기본 Windows OS가 아닌 서버 용도인 Windows Server 2019에 WSL을 설치하는 방법을 알아봅시다.

 

 

관리자 권한으로 PowerShell을 실행하여 아래 명령어를 입력하여 "Linux용 Windows 하위 시스템" 기능을 사용할 수 있도록 합니다.

> Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Windows-Subsystem-Linux

실행 완료 후 서버 OS 재시작 작업을 진행합니다.

 

 

아래 배포판 다운로드 링크를 통해 설치하고자하는 Linux 배포판을 다운로드 받습니다.
https://learn.microsoft.com/ko-kr/windows/wsl/install-manual#downloading-distributions

 

 

다운로드 받은 배포판은 아래와 같이 압축 해제 후 설치하고자 하는 appx 파일을 확인할 수 있습니다.

> Rename-Item .\Ubuntu2204-221101.AppxBundle .\Ubuntu.zip
> Expand-Archive .\Ubuntu.zip .\Ubuntu
> cd .\Ubuntu
> ls

 

아랭 명령어로는 PowerShell 에서 직접 다운로드 받고자 하는 패키지를 다운로드 받으실 수 있습니다.

> Invoke-WebRequest -Uri https://aka.ms/wslubuntu2004 -OutFile Ubuntu.appx -UseBasicParsing

 

 

다운로드 받은 appx 파일을 Add-AppxPackage 명령어로 설치합니다.

> Add-AppPackage .\Ubuntu_2004.2021.825.0_x64.appx

 

 

설치를 진행하면 아래와 같이 설치 중임을 확인하실 수 있습니다.

 

설치가 완료된 후 appx 파일을 압축 해제하면 WSL 환경에서 실행할 수 있는 ubuntu.exe 파일을 확인하실 수 있습니다. 

> Rename-Item .\Ubuntu_2004.2021.825.0_x64.appx .\Ubuntu.zip
> Expand-Archive .\Ubuntu.zip .\Ubuntu
> cd .\Ubuntu
> ls

 

exe 파일을 실행하여 WSL 환경에서 사용할 OS를 실행합니다.

exe 파일 실행 시 아래와 같이 Ubuntu Installing 진행을 확인하실 수 있습니다.

 

설치 완료 후에는 계정을 생성 후 사용하시면 됩니다.

 

지금까지 Windows Server 2019에 WSL을 설치하는 방법을 알아보았습니다...! 끝...!

 

 

 

 

[Reference]

 

'기타' 카테고리의 다른 글

VMware OVF to OVA 변환 ovftool  (0) 2023.09.20
Ops로 끝나는 IT 업계 신규 용어  (3) 2023.05.31
VSCode 설치 및 사용법  (0) 2022.09.06
WSL2 Window 환경에서 Linux 사용하기  (0) 2022.08.23

[Jenkins] Cannot run program git.exe 에러

Window 환경의 Jenkins에서 Cannot run program git.exe 에러 발생 시 해결하는 방법입니다.

 

 

Jenkins에서 Pipeline 실행 시 git.exe를 실행하지 못할 경우 아래와 같이 에러가 발생합니다.

 

 

git.exe 파일의 경로를 찾지 못하는 것으로 Jenkins 웹 관리자 페이지에서 Jenkins 관리 -> Global Tool Configuration 설정을 통해 git.exe 경로를 추가해줍니다. Git installations 설정 중 Path to Git executable 설정을 Window 환경에 맞는 값으로 설정합니다.

 

 

설정 저장 후 다시 Pipeline 실행 시 정상적으로 git.exe를 실행하는 것을 확인하실 수 있습니다.

 

 

 

지금까지 Cannot run program git.exe 에러 발생 시 해결하는 방법을 알아보았습니다...! 끝...!

 

[Jenkins] Jenkins Window 환경에서 설치하기

Jenkins를 Window 환경에서 설치하는 방법을 알아봅시다.

 

 

설치 파일 다운로드

Jenkins 공식 페이지에서 Windows 전용 Jenkins 설치 파일을 다운로드 합니다.

https://www.jenkins.io/download/

 

 

설치 파일 실행

설치 파일 jenkins.msi 파일을 실행합니다.

 

설치 경로를 지정합니다. 저는 "D:" 드라이브에 저장하도록 설정하였습니다.

 

 

Logon Type을 LocalSystem을 사용하도록 설정합니다.

 

 

사용할 포트를 설정합니다.

전 기본 포트인 "8080"을 사용하도록 설정하였으며 Test Port 버튼 클링 후 Next로 넘어갈 수 있습니다.

 

 

Java JDK 경로를 지정합니다. 저는 JDK를 "D:" 드라이브에 설치하였으므로 해당 경로를 설정하였습니다.

 

 

Jenkins 2.387.2 버전에서는 JDK 버전이 11버전 또는 17버전을 설정하도록 나와있으며 다른 버전 선택 시 아래와 같이 나올 수 있습니다.

 

 

Custom Setup 을 설정 후 설치를 진행합니다.

 

 

Jenkins 설치를 완료하면 웹 브라우저를 통해 서버 IP와 설정한 포트로 접속합니다.


최초 패스워드는 화면에 표시되는 경로를 통해 확인 가능합니다.

 

 

기본 플러그인을 설치하고 계정을 생성하는 것으로 설치를 마무리합니다.

 

설치 완료 후 설정한 계정을 통해 jenkins를 사용할 수 있습니다.

 

지금까지 Jenkins를 Window 환경에서 설치하는 방법을 알았습니다...! 끝...!

 

 

 

[Reference]

[Jenkins] Jenkins GitLab 프로젝트 연동하기 03

GitLab 프로젝트 연동과 간단히 Pipeline을 동작하는 설정을 완료하였고,
이제 WebHook을 연동하여 Commit 등의 Event 시 자동으로 Jenkins Pipeline이 동작되도록 설정해봅시다.

 

 

 

WebHook 설정

설정하고자하는 Pipeline의 상세 설정의 Build Triggers 설정합니다.


Trigger 받고자하는 Event를 선택하고 자동으로 생성되는 WebHook URL을 복사해둡니다.

 

 

하단의 고급 버튼을 클릭하여 상세 설정을 확인합니다.

 

 

Secret token 항목에서 Generate 버튼을 클릭하여 GitLab WebHook과 연동할 token 값을 생성합니다.
해당 token 값은 이후에 사용해야하므로 복사해둡니다.

설정을 완료하면 Pipeline 설정을 저장합니다.

 

 

 

이제 GitLab 프로젝트에서 WebHook 설정을 추가해봅시다.
GitLab 프로젝트 Settings -> Webhooks 메뉴를 클릭합니다.

아까 복사해둔 WebHook URL 값과 Secret token 값을 URL, Secret token 항목에 붙여 넣습니다.

그리고 사용하고자 하는 Trigger Event를 선택해주시면 됩니다.

 

 

WebHook 설정을 추가하면 아래와 같이 추가된 설정을 확인하실 수 있습니다.

 

Test를 통해 WebHook이 정상적으로 연결되었는지 확인합니다.

 

정상적으로 WebHook 설정이 완료되었으면 상단에 "Hook executed successfully: HTTP 200" 메시지가 출력된 것을 확인하실 수 있습니다.

 

 

WebHook 테스트

WebHook 연동 설정이 완료되었으므로 해당 프로젝트에서 소스 코드 수정 및 Commit 후 자동으로 Pipeline이 동작하는지 확인합니다. Pipeline 관리 페이지를 열어둔 상태에서 프로젝트에 Commit을 해봅니다.
WebHook 연동 설정을 통해 자동으로 Pipeline 빌드가 실행됩니다.

 

Pipeline 빌드가 완료되면 해당하는 Build ID 클릭 후 아래와 같이 빌드 상태를 확인할 수 있습니다.

 

 

지금까지 Jenkins에서 GitLab 프로젝트와의 연동과 WebHook을 통한 Pipeline 자동화 구축 작업을 완료하였습니다...! 끝...!

[Jenkins] Jenkins GitLab 프로젝트 연동하기 02

Project Access Tokens 발급 후 해당 Tokens으로 GitLab 서버를 추가하는 작업을 완료하였고,
이제 GitLab 프로젝트 연동과 간단히 Pipeline을 동작하는 설정을 진행해보도록 하겠습니다.

 

 

 

Pipeline 생성

Jenkins의 Pipeline을 통해 프로젝트 소스코드 빌드 및 배포를 설정할 수 있습니다.

새로운 Item을 Pipeline으로 추가합니다.

 

 

사전에 추가한 GitLab 서버 연결 설정을 지정합니다.

 

 

Jenkinsfile을 사용하여 Pipeline을 설정하기 위해 Pipeline script from SCM 설정을 추가합니다.
연동할 GitLab 프로젝트의 URL을 입력 후 연동 시 사용할 Credentials을 추가 등록하기 위해 Add 버튼을 클릭합니다.

 

 

Username with password 항목에 GitLab 계정과 Token 값을 입력 후 추가합니다.

 

 

정상적으로 Token 값으로 인증이 완료되면 Repository URL 항목에 에러가 팝업되지 않습니다.

 

 

Jenkinsfile을 사용하도록 설정 후 저장하면 GitLab 프로젝트와 연동된 Pipeline 생성이 완료됩니다.

 

 

Pipeline 테스트

Jenkinsfile에 간단히 테스트 코드를 작성하여 연동한 GitLab 프로젝트에서 Pipeline이 동작하는지 확인합니다.

 

Jenkinsfile 이름의 파일을 생성 후 프로젝트에 추가하고, 아래와 같이 간단히 echo 명령어로 TEST를 출력하도록 Jenkinsfile에 코드를 추가하였습니다.

pipeline {
	agent any

	stages {
		stage('test') {
			steps {
				sh '''
					echo "TEST"
				'''
			}
		}
	}
}

 

Jenkins Pipeline 화면에서 지금 빌드 버튼을 클릭하여 빌드를 테스트합니다.

왼쪽하단에 진행상태가 표시되며 정상적으로 완료되면 체크 표시가 나옵니다.



해당하는 빌드의 Console Output을 확인하면 아래와 같이 상세 동작 로그를 확인하실 수 있습니다.

 

 

Jenkins에서 GitLab 프로젝트와 연동 후 간단히 Pipeline이 동작하는 것을 확인해보았습니다.
다음 설정에서는 WebHook 설정을 통해 Event를 받으면 자동으로 빌드되도록 설정을 진행해보도록 하겠습니다...! 끝...!

 

 

 

[Jenkins] Jenkins GitLab 프로젝트 연동하기 01

Jenkins에서 GitLab, GitHub과 같은 Git Repository와 연동하여 프로젝트를 관리할 수 있습니다.
그중 GitLab 프로젝트와 연동하기 위해서는 어떤 설정이 필요한지 알아보고, 간단히 Pipeline을 작성하여 구동시켜보는 것까지 해보도록 하겠습니다.

 

 

Project Access Tokens 생성

GitLab 서버와 연동하기 위한 Project Access Tokens이 필요하며 GitLab 프로젝트 관리 페이지에서 발급합니다.

 

GitLab 프로젝트의 Settings 메뉴에서 Access Tokens 메뉴를 선택합니다.

Token name과 Expiration date를 설정하고 Select scopes는 api를 선택 후 발급 버튼을 클립합니다.

 

 

발급한 Token은 복사 후 Jenkins에서 GitLab 서버를 등록할 때 사용합니다.

 

 

GitLab 서버 추가

Jenkins 관리 페이지에서 GitLab 서버를 추가해줍니다.

 

시스템 설정 페이지 하단에 있는 GitLab 설정에서 서버를 추가할 수 있습니다.
GitLab 서버와 연동 시 Credentials이 필요하며 별도로 추가한 Credentials이 있다면 사용하고 없다면 추가 등록하기 위해 Add 버튼을 클릭합니다.

 

 

사전에 발급한 Project Access Tokens을 GitLab API token으로 설정하고 등록합니다.

 

 

설정이 완료되면 Test Connection 버튼을 클릭하여 정상적으로 Success 로그가 출력되는지 확인합니다.

 

 

Project Access Tokens 발급 후 해당 Token으로 GitLab 서버를 추가하는 작업을 완료하였습니다.

다음에는 GitLab 프로젝트와 연동하는 설정을 진행해보도록 하겠습니다...! 끝...!

 

 

 

[Jenkins] Jenkins GitHub 프로젝트 연동하기 03

GitLab 프로젝트 연동과 간단히 Pipeline을 동작하는 설정을 완료하였고, 이제 WebHook을 연동하여 Commit 등의 Event 시 자동으로 Jenkins Pipeline이 동작되도록 설정해보도록 하겠습니다.

 

 

 

WebHook 설정

Jenkins에서 GitHub WebHook 연동을 위해 GitHub Integration 플러그인을 설치합니다.

 

 

설정하고자하는 프로젝트 Pipeline 상세 설정의 Build Triggers 설정 중 GitHub hook trigger for GITScm polling 항목을 체크 후 저장합니다. 해당 설정은 GitHub으로부터 WebHook 이벤트를 받고자하는 설정입니다.

 

 

GitHub에서는 설정하고자하는 프로젝트의 Webhooks 설정을 추가합니다.

 

 

Playload URL 주소는 "http://{{Jenkins 서버 주소}}/github-webhook/" 값으로 설정합니다.

 

 

설정 완료 후 정상적으로 Webhook 연결이 완료되면 Webhooks 설정에 정상(체크) 표시가 활성화됩니다.

 

 

Webhook 연결의 상세로그를 확인하려면 Webhook 선택 후 Recent Deliveries를 선택하면 Ping Check에 대한 상세로그를 확인할 수 있습니다.

 

 

 

 

WebHook 테스트

WebHook 연동 설정이 완료되었으므로 해당 프로젝트에서 소스 코드 수정 및 Commit 후 자동으로 Pipeline이 동작하는지 확인합니다. Pipeline 관리 페이지를 열어둔 상태에서 프로젝트에 Commit을 해봅니다.


WebHook 연동 설정을 통해 자동으로 Pipeline 빌드가 실행됩니다.

 

Pipeline 빌드가 완료되면 아래와 같이 빌드 상태를 확인할 수 있습니다. 별도로 지금 빌드 버튼을 클릭하지 않고도 자동으로 빌드가 실행되고 성공했음을 확인할 수 있습니다.

 

 

 

지금까지 Jenkins에서 GitHub 프로젝트와의 연동과 WebHook을 통한 Pipeline 자동화 구축 작업을 완료하였습니다...! 끝...!

 

 

 

 

[Jenkins] Jenkins GitHub 프로젝트 연동하기 02

Personal Access Tokens 발급 후 해당 Tokens으로 GitHub 서버를 추가하는 작업을 완료하였고,

이제 GitHub 프로젝트 연동과 간단히 Pipeline을 동작하는 설정을 진행해보도록 하겠습니다.

 

 

 

Pipeline 생성

Jenkins의 Pipeline을 통해 프로젝트 소스코드 빌드 및 배포를 설정할 수 있습니다.
새로운 Item을 Pipeline으로 추가합니다.

 

설정하고자하는 GitHub 프로젝트를 등록합니다.

 

 

Jenkinsfile을 사용하여 Pipeline을 설정하기 위해 Pipeline script from SCM 설정을 추가합니다.
연동할 GitHub 프로젝트의 URL을 입력 후 연동 시 사용할 Credentials을 추가 등록하기 위해 Add 버튼을 클릭합니다.

 

 

Username with password 항목에 GitHub 계정과 Token 값을 입력 후 추가합니다.

 

 

Jenkinsfile을 사용하도록 설정 후 저장하면 GitHub 프로젝트와 연동된 Pipeline 생성이 완료됩니다.

 

 

Pipeline 테스트

Jenkinsfile에 간단히 테스트 코드를 작성하여 연동한 GitHub 프로젝트에서 Pipeline이 동작하는지 확인합니다.


Jenkinsfile 이름의 파일을 생성 후 프로젝트에 추가하고, 아래와 같이 간단히 echo 명령어로 TEST를 출력하도록 Jenkinsfile에 코드를 추가하였습니다.

pipeline {
     agent any

     stages {
          stage('test') {
               steps {
                    sh '''
                         echo "TEST"
                    '''
               }
          }
     }
}

 

 

Jenkins Pipeline 화면에서 지금 빌드 버튼을 클릭하여 빌드를 테스트합니다.
빌드 진행상태는 Stage View 화면에 출력되며 정상적으로 빌드되는 것을 확인하실 수 있습니다.

 

 

해당하는 빌드의 Console Output을 확인하면 아래와 같이 상세 동작 로그를 확인하실 수 있습니다.

 

 

Jenkins에서 GitHub 프로젝트와 연동 후 간단히 Pipeline이 동작하는 것을 확인해보았습니다.
다음 설정에서는 WebHook 설정을 통해 Event를 받으면 자동으로 빌드되도록 설정을 진행해보도록 하겠습니다...! 끝...!

 

 

 

[Reference]

+ Recent posts