본문 바로가기

카테고리 없음

Gitlab과 Portainer oauth 연동하기

728x90

드디어 묵은 과제를 해냈습니다. 기존에 사용하던 yona에서 gitlab으로 갈아타고 새로운 dev-ops 환경을 구축하였습니다.

gitlab으로 갈아타고 가장 먼저 한 일은 oauth를 이용해 계정들을 묶는 작업이었습니다.

그 중 portainer 와의 연동은 자료가 적어 설정에 애를 좀 먹었는데요. 그 방법을 정리합니다.

 

1. Gitlab에 application 추가하기

먼저 gitlab에 application을 추가해야겠죠

Admin Area > Applications 로 이동하여 New application 정보를 등록합니다.

 

다음으로 생성한 Application을 클릭하여 Application ID와 Secret를 확인해두세요. 포테이너 설정 시 필요합니다.

 

 

 

2. Portainer에서 oauth 설정하기

포네이너의 Settings > Authentication 으로 이동합니다.

아래와 같이 Authentication method 를 OAuth로 설정, Provider를 Custom으로 설정합니다.

 

다음으로 하단의 OAuth Configuration 을 아래와 같이 설정해줍니다.

항목 값(설명)
Client ID gitlab에서 생성한 Application의 Application ID
Client secret gitlab에서 생성한 Application의 Secret
Authorization URL https://{gitlab 도메인}/oauth/authorize
Access token URL https://{gitlab 도메인}/oauth/token
Resource URL https://{gitlab 도메인}/api/v4/user
Redirect URL Portainer의 URL
Logout URL Portainer의 URL
User identifier username
Scopes read_user

 

 

3. OAuth 로그인하기

이제 포테이너에서 로그아웃을 하면 아래와 같이 Login with OAuth 버튼을 확인하실 수 있습니다.

(만약 기존에 만들어진 사용자가 있는 경우 username이 동일하면 자동으로 연계됩니다.)

728x90