「GitレポジトリからCI/CD・コンテナ化を含めた開発統合プラットフォームとしてのGitLabと今後の展開」聴講レポート #gitlabjp

発表資料

qiita.com

自己紹介

  • @tnir
  • Takuya Noguchi
  • Git利用歴10年
  • GitLabはパブリック公開した日から使っていた
  • 所属していた会社で2013年から使っていた
  • 2014年から管理者として利用
  • 2015年からはGitlab.comの混んとりビューア

なぜMeetupを開くのか

  • 日本語の情報がなかったから
    • あっても古い
  • Gitlab.comが話題になったから…ではなく、準備していたら事件が起きた

GitLab.JP

  • 仙台で発足して、3,4回やっていた
  • 鹿児島でも勉強会が開催されていた
  • 東京でもやろう

よく聞くGitLabのイメージ

  • インストールが大変
  • ウェブアプリが遅い
  • GitLab.comでデータがロストした

GitLabの歴史

  • GitLabは後発のサービス
    • 後発の製品でどうやって優位性を持たせるか

GitLab.comの競合

  • GitHub + ecosystem
  • BitBukket + ecosystem

GitLab CE/EEの競合

  • GitHub Enterprise
  • GitBucket
  • Gogs
    • GO言語で出来ている

GitLab CE/EE

  • RailsベースのソースではGitHubの中でスターが一番だった(2016年)

4種のGitLab

  • CE
    • 一番ユーザーが多い
  • EE
    • 有償版
  • .com
  • GitHust.io
    • Saasではなくプライベートで運用したい
    • デジタルオーシャン上で
    • アップグレードやセキュリティを担保
    • $80/月

GitLabマイルストーン

  • 半年ごとにVerUpしていた
  • Ver6からは1年半に1回ぐらいのVerUp頻度
  • 現在はVer8
  • その間に4回資金調達して40億円調達した
  • 3/22のVer9が出る

2016年を振り返る

  • 8.4〜8.15をメジャーリリース
  • 機能がどんどん追加されて

パフォーマンス面

  • 2014から2015年あたりにパフォーマンス劣化が著しくなった
  • 2016年はパフォーマンス改善した
    • 1月にInfluxDBを利用したモニタリング開始
    • 後半はPrometheus導入

管理面

  • omnibus-gitlabが一番手軽なインストール
    • 色々な個人ブログではソースでのインストールも書かれているけど、オススメしない
  • Dockerでもサポート
    • まだまだ巨大なイメージなので、デフォルトの状態だときついかも

PostgreSQL

  • 登壇する人はMySQLユーザーが多いみたい

Radis

  • 現在、2.8から3.2に上げるMRを出しているところ

コンテナレジストリ

  • これもGitLabが提供している

モニタリング

  • 改善はしているがGithub.comに比べるといまいちな部分も

Docs

  • ドキュメント大事
  • docs.gitlab.comがリニューアルされた
  • 英語さえできれば貢献は可能

開発

  • OSSなのでGitLab.com上でコントリビュート可能
  • 日本人は少なそう
  • GitLab Development Kitで簡単に構築可能

Backend

  • 普通のRailsアプリだが、一部GOで書かれている

Frontend

  • jqueryが多い
  • テストはJasmine+Karma

UI/UX

  • 最初はデザイナーが少なかったが、最近増えた
  • GL社員がちょっと多すぎる気がする

パッケージング

  • chef/omnibusパッケージを使用している

コミット以外の貢献方法

  • イイねを押すことも貢献の一つ
  • GitLab Pagesもいいねが100を超えて実現した

個人的な野望

  • Cloud-native
  • Server-less
    • 現状だと難しいかも

250人のチームで運用してみてわかったこと

  • Gitの習熟度がバラバラ
  • 高品質化のためにトレーニングが有効的
    • GitLab Docsが有効
    • ただし日本語訳がない

バグフィックス

  • 昼、起票
  • 夜、修正
  • 時差があるので、夜活動が他国の人にとって良いみたい

今後に向けて

  • 組織の方針とGitLab.incの方針(技術選択)が合致したのでうまくやってこれた。
  • 組織毎に主体的な開発戦略が必要

今日伝えたかったこと

  • かなり改善されてきた
  • OSSに貢献してよりよいツール・プラットフォームを使いましょう
    • 社内でパッチを当てるとかではなくMRを!

宣伝

  • 第2回を開催決定しました。
  • 4/11にリクルートでやります!