카테고리 없음
                
              Gitlab과 Portainer oauth 연동하기
                유저인사이트 강윤구
                 2022. 12. 13. 16:50
              
              
                    
        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