作为开发集成平台的GitLab以及其未来发展

作为一个开发集成平台,GitLab从Git仓库到CI/CD和容器化的综合应用,展示了未来的发展前景。

野口拓也
@tnir / 推特:@tn961ir
GitLab 东京见面会 #1 2017-03-02


@tnir:gitlab.com/tnir

    • 20y+ Software Engineer (Digital Transformation)

2006-: Git user
2008-: GitHub/Bitbucket user
2013-: GitLab CE user
2014-: GitLab CE admin
2015-: GitLab.com user/GitLab contributor


为什么选择现在参加GitLab Meetup?


为什么现在要举办GitLab Meetup活动?

    • 日本語の情報がなかったから

あっても古い


为什么现在要举办GitLab Meetup?

    • 日本語の情報がなかったから

 

    GitLab.comが話題になったから

为什么现在要举办GitLab Meetup?

    • 日本語の情報がなかったから

 

    • GitLab.comが話題になったから

 

    • (準備していたらGitLab.com事件が起きた)

 

    2016年3月のDocker MeetupでGitLabを使ったワークフローが思った以上に反応あったから

GitLab在日本。

    • 2016年11月に仙台で発足

 

    • 2015年12月/2016年12月にもGitLab/GitLab.com 勉強会が開催されている

 

    東京でもJPイベントをやろう!→今回

内容

    • 製品の位置付け

 

    • エディション

 

    • 歴史

 

    • 最近のトピック

 

    • 管理

 

    • ドキュメント

 

    • 開発

 

    • 管理者やってみた

 

    今後のコミュニティ

GitLab是一个版本控制系统和协作平台。


经常听到的GitLab形象

    インストールが大変

经常听到的GitLab图像

    • インストールが大変

 

    ウェブアプリが遅い

经常听到的GitLab的形象

    • インストールが大変

 

    • ウェブアプリが遅い

 

    2017年1月にGitLab.comでデータロストが発生した

GitLab的历史

    • Git: 2005

 

    • GitHub: 2008

 

    • Bitbucket (Git support): 2010

 

    • GitLab: 2011

 

    GitLab.com: 2012

GitLab.com的竞争对手

    • GitHub + it’s ecosystem (CI, linter etc.)

 

    • Bitbucket + it’s ecosystem

 

    • AWS CodeCommit (+α)

 

    • MS Visual Studio Team Services (VSTS)

 

    GCP Source Repositories

GitLab CE/EE 的竞争对手是什么?

    • GitHub Enterprise

 

    • Bitbucket Server

 

    • GitBucket

 

    Gogs

GitLab Community Edition/Enterprise Edition

    • Most starred Rails-based app on GitHub until 2016

discourse is now No.1


201702-gitlab-star-on-github.png

四种GitLab

    • GitLab Community Edition (CE)

 

    • GitLab Enterprise Edition (EE)

 

    • GitLab.com

 

    GitHost.io

码云

    • GitHost is acquired by GitLab Inc. in 2015.

https://about.gitlab.com/2015/04/26/gitlab-acquires-githost/

GitLab managed service

upgrade
security
starts at 80 USD/mo

PoC中…


GitLab CE/EE里程碑1

    • 1.0: 2011-10

 

    • 2.0: 2011-12

 

    • 3.0: 2012-10

 

    • 4.0: 2012-12

 

    • 5.0: 2013-03

 

    6.0: 2013-08

GitLab CE/EE的2号里程碑

    • 6.0: 2013-08

 

    • 7.0: 2014-06

 

    • (raised $0.12M)

 

    • (raised $1.5M)

 

    • 8.0: 2015-09

 

    • (raised $4M)

 

    • (raised $20M)

 

    9.0: 2017-03 (plan)

GitLab 社区版 2016年第一季度

2016年,共有12次主要发布(8.4-8.15)。

    • ビルドアーティファクトブラウザ, ファイルファインダ

 

    • TODO

 

    シークレットイシュー, ラベル購読

GitLab 社区版 2016 年第二季度

    • LICENSEテンプレート, 期日(Due Date), cherry-picking

 

    • CIのPipeline対応, GitLab Container Registry, .gitignoreテンプレート

 

    Environments, 優先的ラベル, ナビゲーションデザイン, U2F

GitLab CE 2016年第三季

    • ワイルドカードbranch保護, マニュアルCI実行

 

    • Issue Board(kanban), Merge Conflict修正UI, MR Dicsussion解決済みフラグ, Pipelineグラフ, Slashコマンド, Koding統合

 

    Cycle Analytics, Merge Requestバージョン管理

GitLab社区版 2016年第四季度

    • Merge Conflict修正エディタ

 

    • 工数管理, ChatOps w/Mattermost, Review Apps

 

    Auto Deploy (oc), Web Terminal (Kubernetes), LaTeX support in Markdown

表演

    • 2014年後半/2015年くらいからパフォーマンス劣化が著しくなってきた。

 

    • 2016年1月にInfluxDBを利用したPerformance Monitoringが導入された。

 

    • 2016年はかなりパフォーマンスが改善した。

 

    • 2016年後半: Prometheus導入。

 

    .comのメトリクスは monitor.gitlab.net で確認できる。

行政管理


管理员提示

omnibus-gitlabが一番手軽なインストール

RPM/debパッケージ
Dockerもサポート

でもまだ巨大コンテナイメージ

アップグレードのケアもある

ソースコードからのインストールは止めたほうがいい


PostgreSQL – 后续关系数据库

    • デフォルトのデータベース

 

    • (MySQLで運用されている例も多いと聞く)

 

    • pg 9.2が利用されてきた。pg 9.6へのアップグレードプランを用意

 

    来月のGL 9.0で9.6がデフォルトに

Redis (中文:雷迪斯)

    • Update Redis from 2.8.x to 3.2

 

    クラスタ化への道が広がった?

容器注册表

    • GitLab Container Registry

docker/distribution-backed


监控

    • かなり改善されたもののまだパフォーマンスの問題は残っている。

front: Grafana
back: InfluxDB/Prometheus

gitlab-monitoring-ci.png

医生

    • ドキュメント大事

docs.gitlab.comが最近リニューアル
改善ポイントあり
英語さえできれば貢献できる


研发

    • OSSなので、GitLab.com上でコントリビュート可

 

    • 累計1,500人以上のコミット

 

    • 日本人らしきコントリビュータは少ない

GitLab Development Kitで簡単に環境構築できる


开发(2)手机应用/后端

    • 普通のRailsアプリ

 

    • 一部Go

 

    Ruby/Goエンジニアなら貢献できる

前端开发 (3)

    • 歴史の長い一般的なRailsアプリケーションの通り、JSはjQueryも数多く残るが、ES2015ify、Vue.jsへの移行もどんどん進んでいる

 

    • テスト: Jasmine+Karma

 

    • あとは普通にSCSS, HAML

 

    今Vue.js乗せ換えたい人に特にオススメ

设计(4)UI/UX/界面开发

    • 資金調達後かなりデザイナー/UI/UXエンジニアが増えて改善が進んだ

 

    GL社員がちょっと多すぎ感も否めない

开发 (5) 包装/ 中间件

    • パッケージングはchef/omnibusパッケージを利用

 

    ChefエンジニアやDevOpsエンジニアなら貢献できる

不提交任何代码的贡献方式


GitLab Pages 的示例

    • プライベート版GitHub Pagesが構築可能

 

    • (GitLab.comでは以前から提供中)

 

    • EEのみで導入されたが、100 votesによりCEにやってきた。

大事


个人的野心

    • Cloud-native

 

    Serverless

在实际运营中,我们通过一个由250人组成的团队发现了以下事实。


前提 (qian2 ti2)

    • 社員、常駐業務委託、社外パートナー多数

 

    • サーバサイド:iOS/Androidアプリ=50%:50%

 

    • 250 users

 

    • 600 projects

 

    100 groups

我明白了

    • Gitの習熟度が人それぞれ

 

    • (サーバサイド)DockerやRegistryの理解も人それぞれ

 

    • CI/CDについても人それぞれ

 

    • 高品質・均質化のためにトレーニングが効果的

GitLab Docsが有効
でも日本語訳がない


修复错误

    • 昼、レポートを受けて起票

 

    • 夜、家で修正・MRを出す

 

    (繰り返し)

未来的展望

    • 組織の方針とGitLab Inc.の方針が合致した結果、GitLabに乗ってうまくやってこれた

CI/CD
Docker/Kubernetes/OpenShift(/Web Terminal)
InfluxDB(/Prometheus)

組織ごとに主体的な開発戦略が必要


我今天想表达的事情

    • ネガティブなイメージもあったGitLabはかなり改善されて大規模な導入ケースもでてきた。

 

    • OSSに対して貢献してよりよいツール・プラットフォームを使いましょう。

 

    社内パッチはぜひMRの形にしてください。

推广


广告 1

艾里奇正在招聘工程师(特别是SRE/CPE)。

201703_iridge-rec-cpe.png
    • SRE: https://www.wantedly.com/projects/89855

CPE: https://www.wantedly.com/projects/89861


2号広告:4月11日(火)にGitLab Meetup Tokyo #2を開催することが決まりました。

    • 於: リクルート 41F アカデミーホール

 

    • https://gitlab-jp.connpass.com/event/52276/

 

    • 今から募集開始

トーク 4件
LT 5件
スポンサー 4社

一般参加は明日から募集(予定)だったけど、会場の熱気に押されて今日から募集開始しました。


bannerAds