狠狠撸

狠狠撸Share a Scribd company logo
とある受託ベンダの
開発環境
デジタルサーカス(株)長谷川智希
長谷川智希
とも き
@tomzoh?
とむぞう
Webサイト開発, iOSアプリ開発
レンタルカートレース, ビール, 電子工作, …
hasegawa?
tomoki
デジタルサーカス(株) 副団長CTO
趣味
( )
(iOS, Android)
(http://appbuilder.jp)
デジタルサーカス(株)
? Webサイト開発
? スマホアプリ開発
? 自社サービス
Twitter: @tomzoh
Twitter: @tomzoh
今日のテーマ今
とある受託ヘ?ンタ?の开発环境
デジタルサーカス(株)
Web
受託開発
+ スマホアプリ
デジタルサーカス(株)
Web スマホアプリ
?
デジタルサーカスの受託開発
開発チーム
? 2人?5人前後の構成が多い。
? Mgr + Web + iOS + Android + Design とか。
プロジェクト
? 新規開発プロジェクトは年間10ぐらい。
? 既存分含めて約30プロジェクトがアクティブ。
用ツール使
開発マシン / 開発サーバ
コラボレーション
インフラ
デジタルサーカス(株)
昨日(2/23)で18年目突入
デジタルサーカス(株)
18歳のひととかいそう
2000 2010
歴史
1999 2016
\オギャア/ \18年目/
2000 2010
歴史
1999 2016
2000年問題
\オギャア/ \18年目/
2000 2010
歴史
1999 2016
Web2.0
\オギャア/ \18年目/
2000 2010
歴史
1999 2016
\オギャア/ \18年目/
ライブドアショック
2000 2010
歴史
1999 2016
リーマンショック
\オギャア/ \18年目/
2000 2010
歴史
1999 2016
\オギャア/
VBA
業務システム Web
業務システム
コンシューマ向けWeb
スマホアプリ
\18年目/
2000 2010
歴史
1999 2016
\オギャア/
VBA
業務システム Web
業務システム
コンシューマ向けWeb
スマホアプリ
物理マシンで開発 仮想マシンで開発
仮想化
\18年目/
18年やってるとこうなる
18年やってるとこうなる
動作中の仮想サーバ50
18年やってるとこうなる
動作中の仮想サーバ50
保存中の仮想サーバ150
18年やってるとこうなる
動作中の仮想サーバ50
保存中の仮想サーバ150
ソースコードリポジトリ225
18年やってるとこうなる
動作中の仮想サーバ50
保存中の仮想サーバ150
ソースコードリポジトリ225 ソースコードリポジトリ225
今日はこのお話!
インフラ
インフラ
ソースコードリポジトリ
GitHub private repositories
? ふつう骋颈迟贬耻产でしょ!
GitHub private repositories
? ふつう骋颈迟贬耻产でしょ!
GitHub private repositories
? ふつう骋颈迟贬耻产でしょ!
ソースコードリポジトリ225
GitHub private repositories
? ふつう骋颈迟贬耻产でしょ!
足りない
ソースコードリポジトリ225
GitHub Enterprise
? ギ…GitHub Enterprise
GitHub Enterprise
? ギ…GitHub Enterprise
GitHub Enterprise
? ギ…GitHub Enterprise
約?70,000/月
機能を考えれば決して高くはない
GitHub enterprise
GitHub enterprise
!?
GitLab
Star, Fork, README.md
Star, Fork, README.md
README.md表示
おなじみの機能
Side-by-side di?
www
www
みんな大好き”草”
Line by line comment
GitLabの機能
? ユーザ, グループ, リポジトリの管理
? http / ssh経由でのリポジトリアクセス
? Fork, Star, Download Zip
Git
? Merge Request
? Issues, Snippets, Wiki
? Line by line comment
コラボレーション
Is it enough?
? 現実的な動作速度
? Sexyなルック&フィール
? Gitの基本的機能は問題無し
機能は十分か
? 公式のOmnibus packageが超優秀。バックアップ?アップグレード。
? バックアップの多重化には他ツールを使用。Dropboxとか。
運用コストは?
Is it enough?
? 現実的な動作速度
? Sexyなルック&フィール
? Gitの基本的機能は問題無し
機能は十分か
? 公式のOmnibus packageが超優秀。バックアップ?アップグレード。
? バックアップの多重化には他ツールを使用。Dropboxとか。
運用コストは? Rakeタスクあり
マイグレーションまで
全自動
GitLab CE Omnibus package
https://about.gitlab.com/downloads/
GitLab CE Omnibus package
https://about.gitlab.com/downloads/
弊社ではこれを使ってる
Easy install
Easy install
パッケージリポジトリがある
.debを手でインストールしてもOK
/etc/gitlab/gitlab.rb を編集して
コレ実行するとChefが走る。
インストール完了!
Omnibus
? なんと、nginxとかpostgresqlとかredisとかが内蔵されてる。
[root@gitlab /var/opt/gitlab]$ ls -alF
合計 68
drwxr-xr-x 14 root root 4096 2? 24 18:34 ./
drwxr-xr-x 3 root root 4096 2? 15 02:28 ../
-rw-r--r-- 1 git git 264 2? 16 19:58 .gitconfig
drwx------ 2 git git 4096 2? 15 02:29 .ssh/
drwx------ 2 git root 4096 2? 24 07:30 backups/
-rw------- 1 root root 38 2? 15 02:28 bootstrapped
drwx------ 4 git root 4096 2? 15 02:29 git-data/
drwxr-xr-x 4 git root 4096 2? 15 02:29 gitlab-ci/
drwxr-x--- 2 git gitlab-www 4096 2? 15 02:29 gitlab-git-http-server/
drwxr-xr-x 9 git root 4096 2? 16 19:58 gitlab-rails/
drwx------ 2 git root 4096 2? 16 19:58 gitlab-shell/
drwxr-x--- 2 git gitlab-www 4096 2? 18 23:55 gitlab-workhorse/
drwx------ 3 root root 4096 2? 24 18:05 logrotate/
drwxr-x--- 8 root gitlab-www 4096 2? 18 23:54 nginx/
drwxr-xr-x 3 gitlab-psql root 4096 2? 18 23:55 postgresql/
drwxr-x--- 2 gitlab-redis git 4096 2? 24 18:32 redis/
Omnibus
? なんと、nginxとかpostgresqlとかredisとかが内蔵されてる。
[root@gitlab /var/opt/gitlab]$ ls -alF
合計 68
drwxr-xr-x 14 root root 4096 2? 24 18:34 ./
drwxr-xr-x 3 root root 4096 2? 15 02:28 ../
-rw-r--r-- 1 git git 264 2? 16 19:58 .gitconfig
drwx------ 2 git git 4096 2? 15 02:29 .ssh/
drwx------ 2 git root 4096 2? 24 07:30 backups/
-rw------- 1 root root 38 2? 15 02:28 bootstrapped
drwx------ 4 git root 4096 2? 15 02:29 git-data/
drwxr-xr-x 4 git root 4096 2? 15 02:29 gitlab-ci/
drwxr-x--- 2 git gitlab-www 4096 2? 15 02:29 gitlab-git-http-server/
drwxr-xr-x 9 git root 4096 2? 16 19:58 gitlab-rails/
drwx------ 2 git root 4096 2? 16 19:58 gitlab-shell/
drwxr-x--- 2 git gitlab-www 4096 2? 18 23:55 gitlab-workhorse/
drwx------ 3 root root 4096 2? 24 18:05 logrotate/
drwxr-x--- 8 root gitlab-www 4096 2? 18 23:54 nginx/
drwxr-xr-x 3 gitlab-psql root 4096 2? 18 23:55 postgresql/
drwxr-x--- 2 gitlab-redis git 4096 2? 24 18:32 redis/
!?
Chef!?
? /etc/gitlab/gitlab.rb
? GitLabの設定ファイル
? 編集して $ sudo gitlab-ctr recon?gure
Chef!?
? /etc/gitlab/gitlab.rb
? GitLabの設定ファイル
? 編集して $ sudo gitlab-ctr recon?gure
Chefが走ってGitLabとかnginxとかに
設定ファイルが撒かれる
All your …
[root@gitlab /var/opt/gitlab]$ ls -alF
合計 68
drwxr-xr-x 14 root root 4096 2? 24 18:34 ./
drwxr-xr-x 3 root root 4096 2? 15 02:28 ../
-rw-r--r-- 1 git git 264 2? 16 19:58 .gitconfig
drwx------ 2 git git 4096 2? 15 02:29 .ssh/
drwx------ 2 git root 4096 2? 24 07:30 backups/
-rw------- 1 root root 38 2? 15 02:28 bootstrapped
drwx------ 4 git root 4096 2? 15 02:29 git-data/
drwxr-xr-x 4 git root 4096 2? 15 02:29 gitlab-ci/
drwxr-x--- 2 git gitlab-www 4096 2? 15 02:29 gitlab-git-http-server/
drwxr-xr-x 9 git root 4096 2? 16 19:58 gitlab-rails/
drwx------ 2 git root 4096 2? 16 19:58 gitlab-shell/
drwxr-x--- 2 git gitlab-www 4096 2? 18 23:55 gitlab-workhorse/
drwx------ 3 root root 4096 2? 24 18:05 logrotate/
drwxr-x--- 8 root gitlab-www 4096 2? 18 23:54 nginx/
drwxr-xr-x 3 gitlab-psql root 4096 2? 18 23:55 postgresql/
drwxr-x--- 2 gitlab-redis git 4096 2? 24 18:32 redis/
All your …
[root@gitlab /var/opt/gitlab]$ ls -alF
合計 68
drwxr-xr-x 14 root root 4096 2? 24 18:34 ./
drwxr-xr-x 3 root root 4096 2? 15 02:28 ../
-rw-r--r-- 1 git git 264 2? 16 19:58 .gitconfig
drwx------ 2 git git 4096 2? 15 02:29 .ssh/
drwx------ 2 git root 4096 2? 24 07:30 backups/
-rw------- 1 root root 38 2? 15 02:28 bootstrapped
drwx------ 4 git root 4096 2? 15 02:29 git-data/
drwxr-xr-x 4 git root 4096 2? 15 02:29 gitlab-ci/
drwxr-x--- 2 git gitlab-www 4096 2? 15 02:29 gitlab-git-http-server/
drwxr-xr-x 9 git root 4096 2? 16 19:58 gitlab-rails/
drwx------ 2 git root 4096 2? 16 19:58 gitlab-shell/
drwxr-x--- 2 git gitlab-www 4096 2? 18 23:55 gitlab-workhorse/
drwx------ 3 root root 4096 2? 24 18:05 logrotate/
drwxr-x--- 8 root gitlab-www 4096 2? 18 23:54 nginx/
drwxr-xr-x 3 gitlab-psql root 4096 2? 18 23:55 postgresql/
drwxr-x--- 2 gitlab-redis git 4096 2? 24 18:32 redis/
All your …
[root@gitlab /var/opt/gitlab]$ ls -alF
合計 68
drwxr-xr-x 14 root root 4096 2? 24 18:34 ./
drwxr-xr-x 3 root root 4096 2? 15 02:28 ../
-rw-r--r-- 1 git git 264 2? 16 19:58 .gitconfig
drwx------ 2 git git 4096 2? 15 02:29 .ssh/
drwx------ 2 git root 4096 2? 24 07:30 backups/
-rw------- 1 root root 38 2? 15 02:28 bootstrapped
drwx------ 4 git root 4096 2? 15 02:29 git-data/
drwxr-xr-x 4 git root 4096 2? 15 02:29 gitlab-ci/
drwxr-x--- 2 git gitlab-www 4096 2? 15 02:29 gitlab-git-http-server/
drwxr-xr-x 9 git root 4096 2? 16 19:58 gitlab-rails/
drwx------ 2 git root 4096 2? 16 19:58 gitlab-shell/
drwxr-x--- 2 git gitlab-www 4096 2? 18 23:55 gitlab-workhorse/
drwx------ 3 root root 4096 2? 24 18:05 logrotate/
drwxr-x--- 8 root gitlab-www 4096 2? 18 23:54 nginx/
drwxr-xr-x 3 gitlab-psql root 4096 2? 18 23:55 postgresql/
drwxr-x--- 2 gitlab-redis git 4096 2? 24 18:32 redis/
All your …
[root@gitlab /var/opt/gitlab]$ ls -alF
合計 68
drwxr-xr-x 14 root root 4096 2? 24 18:34 ./
drwxr-xr-x 3 root root 4096 2? 15 02:28 ../
-rw-r--r-- 1 git git 264 2? 16 19:58 .gitconfig
drwx------ 2 git git 4096 2? 15 02:29 .ssh/
drwx------ 2 git root 4096 2? 24 07:30 backups/
-rw------- 1 root root 38 2? 15 02:28 bootstrapped
drwx------ 4 git root 4096 2? 15 02:29 git-data/
drwxr-xr-x 4 git root 4096 2? 15 02:29 gitlab-ci/
drwxr-x--- 2 git gitlab-www 4096 2? 15 02:29 gitlab-git-http-server/
drwxr-xr-x 9 git root 4096 2? 16 19:58 gitlab-rails/
drwx------ 2 git root 4096 2? 16 19:58 gitlab-shell/
drwxr-x--- 2 git gitlab-www 4096 2? 18 23:55 gitlab-workhorse/
drwx------ 3 root root 4096 2? 24 18:05 logrotate/
drwxr-x--- 8 root gitlab-www 4096 2? 18 23:54 nginx/
drwxr-xr-x 3 gitlab-psql root 4096 2? 18 23:55 postgresql/
drwxr-x--- 2 gitlab-redis git 4096 2? 24 18:32 redis/
まとめ
? GitでのコラボレーションツールとしてのGitLab。
? デジタルサーカス(株)的にはアリです。
? 手間をかけるかお金をかけるか。
? GitLab vs GitHub Enterprise ではどちらにしても「箱」は必要
? バックアップの二重化だけ独自にケアしましょう。
余谈
告知
iOS Developers Conference Japan 2016
2016.08.20 https://iosdc.jp
5月 チケット販売開始 /トーク募集開始?
6月上旬 トーク募集〆切?
6月下旬 タイムテーブル決定
iOS Developers Conference Japan 2016
2016.08.20 https://iosdc.jp
5月 チケット販売開始 /トーク募集開始?
6月上旬 トーク募集〆切?
6月下旬 タイムテーブル決定
iOS Developers Conference Japan 2016
2016.08.20 https://iosdc.jp
スポンサー企業さま、大絶賛募集中
5月 チケット販売開始 /トーク募集開始?
6月上旬 トーク募集〆切?
6月下旬 タイムテーブル決定
iOS Developers Conference Japan 2016
2016.08.20 https://iosdc.jp
スポンサー企業さま、大絶賛募集中
2次会
?勉強会終了後
?ここから渋谷駅の間にあるお店で
?1?2杯ぐらい
?長谷川までお声がけください
?後で再度アナウンスします
ありがとうございました
@tomzoh
デジタルサーカス(株)
Drupal / スマホエンジニア
超絶募集中!
とりあえず1回遊びに来てください

More Related Content

とある受託ヘ?ンタ?の开発环境