GitLab에서 Libravatar 서비스 사용하기

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

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

Libravatar는 다른 웹사이트로 당신의 아바타(프로필 사진)를 전달하는 또 다른 서비스입니다. Libravatar API는 Gravatar를 강하게 기반으로 하고 있어, Libravatar 아바타 서비스로 변경하거나 자체 Libravatar 서버를 사용할 수 있습니다.

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

gitlab.yml 그라바타 섹션에서 다음과 같이 구성 옵션을 설정하세요:

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
        # default: https://www.gravatar.com/avatar/%{hash}?s=%{size}&d=identicon
        plain_url: "http://cdn.libravatar.org/avatar/%{hash}?s=%{size}&d=identicon"
        # default: 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 서비스 비활성화

예를 들어, 타사 서비스를 금지하려면 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 서비스에서 찾을 수 없는 사용자 이메일 주소의 경우 다른 지원되는 세트로 &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'