GitLab에서 Libravatar 서비스 사용하기

Tier: Free, Premium, Ultimate Offering: Self-Managed

기본적으로 GitLab은 Gravatar 아바타 서비스를 지원합니다.

Libravatar는 다른 웹사이트로 자신의 아바타(프로필 사진)를 전달하는 또 다른 서비스입니다. Libravatar API는 Gravatar를 기반으로 만들어져 있으므로 Libravatar 아바타 서비스로 전환하거나 고유의 Libravatar 서버를 사용할 수도 있습니다.

Libravatar 서비스를 자체 서비스로 변경하기

gitlab.yml의 gravatar 섹션를 다음과 같이 구성 옵션으로 설정합니다.

Linux 패키지 설치의 경우:

  1. /etc/gitlab/gitlab.rb 파일을 수정합니다:

     gitlab_rails['gravatar_enabled'] = true
     #### HTTPS를 사용하는 경우
     gitlab_rails['gravatar_ssl_url'] = "https://seccdn.libravatar.org/avatar/%{hash}?s=%{size}&d=identicon"
     #### HTTP를 사용하는 경우에는 이 라인을 사용하세요.
     # gitlab_rails['gravatar_plain_url'] = "http://cdn.libravatar.org/avatar/%{hash}?s=%{size}&d=identicon"
    
  2. 변경 사항을 적용하려면 sudo gitlab-ctl reconfigure 명령을 실행합니다.

자체 컴파일된 설치의 경우:

  1. config/gitlab.yml 파일을 편집합니다:

     gravatar:
       enabled: true
       # 기본: https://www.gravatar.com/avatar/%{hash}?s=%{size}&d=identicon
       plain_url: "http://cdn.libravatar.org/avatar/%{hash}?s=%{size}&d=identicon"
       # 기본: https://secure.gravatar.com/avatar/%{hash}?s=%{size}&d=identicon
       ssl_url: https://seccdn.libravatar.org/avatar/%{hash}?s=%{size}&d=identicon"
    
  2. 파일을 저장한 후 변경 사항이 적용되도록 GitLab을 다시 시작합니다.

Libravatar 서비스를 기본값으로 설정하기 (Gravatar로)

Linux 패키지 설치의 경우:

  1. /etc/gitlab/gitlab.rb에서 gitlab_rails['gravatar_ssl_url'] 또는 gitlab_rails['gravatar_plain_url']을 삭제합니다.
  2. 변경 사항을 적용하려면 sudo gitlab-ctl reconfigure 명령을 실행합니다.

자체 컴파일된 설치의 경우:

  1. config/gitlab.yml에서 gravatar: 섹션을 제거합니다.
  2. 파일을 저장한 후 변경 사항이 적용되도록 GitLab을 다시 시작합니다.

Gravatar 서비스 비활성화

예를 들어, 제3자 서비스를 금지하려면 Gravatar를 비활성화하려면 다음 단계를 완료하세요:

Linux 패키지 설치의 경우:

  1. /etc/gitlab/gitlab.rb 파일을 수정합니다:

     gitlab_rails['gravatar_enabled'] = false
    
  2. 변경 사항을 적용하려면 sudo gitlab-ctl reconfigure 명령을 실행합니다.

자체 컴파일된 설치의 경우:

  1. config/gitlab.yml 파일을 편집합니다:

     gravatar:
       enabled: false
    
  2. 파일을 저장한 후 변경 사항이 적용되도록 GitLab을 다시 시작합니다.

나만의 Libravatar 서버

만약 나만의 Libravatar 서비스를 실행 중이라면 구성에서 URL이 다르지만 GitLab이 URL을 올바르게 구문 분석할 수 있도록 동일한 자리 표시자를 제공해야 합니다.

예를 들어, https://libravatar.example.com에서 서비스를 호스트하고 있다면 gitlab.yml에 제공해야 하는 ssl_url은 다음과 같습니다:

https://libravatar.example.com/avatar/%{hash}?s=%{size}&d=identicon

누락된 이미지를 위한 기본 URL

Libravatar는 Libravatar 서비스에서 찾을 수 없는 사용자 이메일 주소를 위한 이미지의 다양한 집합을 지원합니다.

identicon 대신 다른 지원되는 집합을 사용하려면 URL의 &d=identicon 부분을 다른 지원되는 집합으로 교체합니다. 예를 들어, retro 집합을 사용하려면 URL은 다음과 같이 됩니다: ssl_url: "https://seccdn.libravatar.org/avatar/%{hash}?s=%{size}&d=retro"

Microsoft Office 365의 사용 예시

사용자가 Office 365 사용자인 경우 GetPersonaPhoto 서비스를 사용할 수 있습니다. 이 서비스는 로그인이 필요하므로 이 경우는 모든 사용자가 Office 365에 액세스할 수 있는 기업 설치에서 가장 유용합니다.

gitlab_rails['gravatar_plain_url'] = 'http://outlook.office.com/owa/service.svc/s/GetPersonaPhoto?email=%{email}&size=HR120x120'
gitlab_rails['gravatar_ssl_url'] = 'https://outlook.office.com/owa/service.svc/s/GetPersonaPhoto?email=%{email}&size=HR120x120'