Download free for 30 days
Sign in
Upload
Language (EN)
Support
Business
Mobile
Social Media
Marketing
Technology
Art & Photos
Career
Design
Education
Presentations & Public Speaking
Government & Nonprofit
Healthcare
Internet
Law
Leadership & Management
Automotive
Engineering
Software
Recruiting & HR
Retail
Sales
Services
Science
Small Business & Entrepreneurship
Food
Environment
Economy & Finance
Data & Analytics
Investor Relations
Sports
Spiritual
News & Politics
Travel
Self Improvement
Real Estate
Entertainment & Humor
Health & Medicine
Devices & Hardware
Lifestyle
Change Language
Language
English
Español
Português
Français
Deutsche
Cancel
Save
EN
Uploaded by
Uchio Kondo
PDF, PPTX
32,195 views
Drone.io のご紹介
http://connpass.com/event/12120/ はっぴょうしりょう
Technology
◦
Read more
84
Save
Share
Embed
Embed presentation
Download
Download as PDF, PPTX
1
/ 66
2
/ 66
3
/ 66
4
/ 66
5
/ 66
6
/ 66
7
/ 66
8
/ 66
9
/ 66
10
/ 66
11
/ 66
12
/ 66
13
/ 66
14
/ 66
15
/ 66
16
/ 66
17
/ 66
18
/ 66
19
/ 66
20
/ 66
21
/ 66
22
/ 66
23
/ 66
24
/ 66
25
/ 66
26
/ 66
27
/ 66
28
/ 66
29
/ 66
30
/ 66
31
/ 66
32
/ 66
33
/ 66
34
/ 66
35
/ 66
36
/ 66
37
/ 66
38
/ 66
39
/ 66
40
/ 66
41
/ 66
42
/ 66
43
/ 66
44
/ 66
45
/ 66
46
/ 66
47
/ 66
48
/ 66
49
/ 66
50
/ 66
51
/ 66
52
/ 66
53
/ 66
54
/ 66
55
/ 66
56
/ 66
57
/ 66
58
/ 66
59
/ 66
60
/ 66
61
/ 66
62
/ 66
63
/ 66
64
/ 66
65
/ 66
66
/ 66
More Related Content
PDF
Cognitive Complexity でコードの複雑さを定量的に計測しよう
by
Shuto Suzuki
PDF
導入から 10 年、PHP の trait は滅びるべきなのか その適切な使いどころと弱点、将来について
by
shinjiigarashi
PDF
今日からできる!簡単 .NET 高速化 Tips
by
Takaaki Suzuki
PDF
PFN のオンプレML基盤の取り組み / オンプレML基盤 on Kubernetes 〜PFN、ヤフー〜
by
Preferred Networks
PDF
Marp Tutorial
by
Rui Watanabe
PDF
MediaPipeの紹介
by
emakryo
PDF
強いて言えば「集約どう実装するのかな、を考える」な話
by
Yoshitaka Kawashima
PPTX
C++ tips 3 カンマ演算子編
by
道化師 堂華
Cognitive Complexity でコードの複雑さを定量的に計測しよう
by
Shuto Suzuki
導入から 10 年、PHP の trait は滅びるべきなのか その適切な使いどころと弱点、将来について
by
shinjiigarashi
今日からできる!簡単 .NET 高速化 Tips
by
Takaaki Suzuki
PFN のオンプレML基盤の取り組み / オンプレML基盤 on Kubernetes 〜PFN、ヤフー〜
by
Preferred Networks
Marp Tutorial
by
Rui Watanabe
MediaPipeの紹介
by
emakryo
強いて言えば「集約どう実装するのかな、を考える」な話
by
Yoshitaka Kawashima
C++ tips 3 カンマ演算子編
by
道化師 堂華
What's hot
PDF
gRPC入門
by
Kenjiro Kubota
PDF
ネットワークOS野郎 ~ インフラ野郎Night 20160414
by
Kentaro Ebisawa
PDF
Dockerfile を書くためのベストプラクティス解説編
by
Masahito Zembutsu
PDF
分散システムの限界について知ろう
by
Shingo Omura
PPTX
Docker Tokyo
by
cyberblack28 Ichikawa
PPTX
冬のLock free祭り safe
by
Kumazaki Hiroki
PDF
CTF for ビギナーズ バイナリ講習資料
by
SECCON Beginners
PDF
ゲーム開発者のための C++11/C++14
by
Ryo Suzuki
PDF
MesonでPostgreSQLをビルドしてみよう!(第39回PostgreSQLアンカンファレンス@オンライン 発表資料)
by
NTT DATA Technology & Innovation
PPTX
生成系ニューラルネットワークまとめ Summary of Generative Neural Network
by
Youichiro Miyake
PDF
初心者向けCTFのWeb分野の強化法
by
kazkiti
PPTX
【DL輪読会】事前学習用データセットについて
by
Deep Learning JP
PDF
スペクトラルグラフ理論入門
by
irrrrr
PDF
C#でもメタプログラミングがしたい!!
by
TATSUYA HAYAMIZU
PDF
マイクロサービス 4つの分割アプローチ
by
増田 亨
PDF
TensorFlow XLAは、 中で何をやっているのか?
by
Mr. Vengineer
PDF
ARMアーキテクチャにおけるセキュリティ機構の紹介
by
sounakano
PDF
組み込みでこそC++を使う10の理由
by
kikairoya
PDF
1891件以上のカーネルの不具合修正に貢献した再現用プログラムを自動生成するsyzkallerのテスト自動化技術(NTT Tech Conference ...
by
NTT DATA Technology & Innovation
PDF
つながるロボット 〜分散協調ロボットの開発を加速化するROSの紹介〜
by
Hideki Takase
gRPC入門
by
Kenjiro Kubota
ネットワークOS野郎 ~ インフラ野郎Night 20160414
by
Kentaro Ebisawa
Dockerfile を書くためのベストプラクティス解説編
by
Masahito Zembutsu
分散システムの限界について知ろう
by
Shingo Omura
Docker Tokyo
by
cyberblack28 Ichikawa
冬のLock free祭り safe
by
Kumazaki Hiroki
CTF for ビギナーズ バイナリ講習資料
by
SECCON Beginners
ゲーム開発者のための C++11/C++14
by
Ryo Suzuki
MesonでPostgreSQLをビルドしてみよう!(第39回PostgreSQLアンカンファレンス@オンライン 発表資料)
by
NTT DATA Technology & Innovation
生成系ニューラルネットワークまとめ Summary of Generative Neural Network
by
Youichiro Miyake
初心者向けCTFのWeb分野の強化法
by
kazkiti
【DL輪読会】事前学習用データセットについて
by
Deep Learning JP
スペクトラルグラフ理論入門
by
irrrrr
C#でもメタプログラミングがしたい!!
by
TATSUYA HAYAMIZU
マイクロサービス 4つの分割アプローチ
by
増田 亨
TensorFlow XLAは、 中で何をやっているのか?
by
Mr. Vengineer
ARMアーキテクチャにおけるセキュリティ機構の紹介
by
sounakano
組み込みでこそC++を使う10の理由
by
kikairoya
1891件以上のカーネルの不具合修正に貢献した再現用プログラムを自動生成するsyzkallerのテスト自動化技術(NTT Tech Conference ...
by
NTT DATA Technology & Innovation
つながるロボット 〜分散協調ロボットの開発を加速化するROSの紹介〜
by
Hideki Takase
Viewers also liked
PPTX
Jenkinsとamazon ecsで コンテナCI
by
shigeyuki azuchi
PDF
捕鯨!詳解docker
by
雄哉 吉田
PDF
Dockerの仕組みとIIJ社内での利用例
by
maebashi
PDF
Dockerの利用事例
by
maebashi
PDF
モニタリングシステムのこれまでとこれから (2015-01-30)
by
YOSHIKAWA Ryota
PDF
ヒカルのGo 資料 Webアプリケーションの作り方
by
Yosuke Furukawa
PDF
Light and shadow of microservices
by
Nobuhiro Sue
Jenkinsとamazon ecsで コンテナCI
by
shigeyuki azuchi
捕鯨!詳解docker
by
雄哉 吉田
Dockerの仕組みとIIJ社内での利用例
by
maebashi
Dockerの利用事例
by
maebashi
モニタリングシステムのこれまでとこれから (2015-01-30)
by
YOSHIKAWA Ryota
ヒカルのGo 資料 Webアプリケーションの作り方
by
Yosuke Furukawa
Light and shadow of microservices
by
Nobuhiro Sue
Similar to Drone.io のご紹介
PDF
Bitbucket Pipelinesについて
by
グロースエクスパートナーズ株式会社/Growth xPartners Incorporated.
PDF
クラウド開発に役立つ OSS あれこれ
by
Masataka MIZUNO
PDF
CI/CD Pipeline を考える 〜KubeCon 2017 + CyberAgent の最大公倍数〜
by
Masaya Aoyama
KEY
SnapDishの事例
by
Fumikazu Kiyota
PDF
はてなにおける継続的デプロイメントの現状と Docker の導入
by
Yu Nobuoka
PDF
Ansible の CI を drone/Dokcker で試してみた
by
Kenta Nishimura
PDF
真Drone入門
by
Yutaka Matsubara
PDF
cloudstack devcloud
by
Kimihiko Kitase
PDF
成長を加速する minne の技術基盤戦略
by
Hiroshi SHIBATA
PPTX
JAWS-UG Santo 2014-07-05 Drupal on PaaS Cloud
by
ANNAI_LLC
PDF
Azure DevOps と開発管理
by
Tsukasa Kato
PDF
ドリコムJenkins勉強会資料
by
Go Sueyoshi (a.k.a sue445)
PDF
Mina 20130417
by
Naotoshi Seo
PDF
AWS Black Belt Tech シリーズ 2015 - AWS CodeCommit & AWS CodePipeline & AWS CodeD...
by
Amazon Web Services Japan
PDF
DOO-003_Jenkins 作者が語る、Docker コンテナによる継続的デリバリのオススメと新機能のご紹介
by
decode2016
PDF
Devops @ Gengo -- AWS日本語初会議
by
Matthew Romaine
PDF
2014_0206 aws startup_tech
by
Yosuke Tomita
PPTX
オープンソースによるドローン開発の概要( #ABC2015S )
by
博宣 今村
PDF
What i feel when began use AWS CodePipeline as GitLab Ci user
by
Yukiya Hayashi
PPTX
オープンソースのドローン用フライトコントローラ「Dronecode」の概要( #OSC15tk)
by
博宣 今村
Bitbucket Pipelinesについて
by
グロースエクスパートナーズ株式会社/Growth xPartners Incorporated.
クラウド開発に役立つ OSS あれこれ
by
Masataka MIZUNO
CI/CD Pipeline を考える 〜KubeCon 2017 + CyberAgent の最大公倍数〜
by
Masaya Aoyama
SnapDishの事例
by
Fumikazu Kiyota
はてなにおける継続的デプロイメントの現状と Docker の導入
by
Yu Nobuoka
Ansible の CI を drone/Dokcker で試してみた
by
Kenta Nishimura
真Drone入門
by
Yutaka Matsubara
cloudstack devcloud
by
Kimihiko Kitase
成長を加速する minne の技術基盤戦略
by
Hiroshi SHIBATA
JAWS-UG Santo 2014-07-05 Drupal on PaaS Cloud
by
ANNAI_LLC
Azure DevOps と開発管理
by
Tsukasa Kato
ドリコムJenkins勉強会資料
by
Go Sueyoshi (a.k.a sue445)
Mina 20130417
by
Naotoshi Seo
AWS Black Belt Tech シリーズ 2015 - AWS CodeCommit & AWS CodePipeline & AWS CodeD...
by
Amazon Web Services Japan
DOO-003_Jenkins 作者が語る、Docker コンテナによる継続的デリバリのオススメと新機能のご紹介
by
decode2016
Devops @ Gengo -- AWS日本語初会議
by
Matthew Romaine
2014_0206 aws startup_tech
by
Yosuke Tomita
オープンソースによるドローン開発の概要( #ABC2015S )
by
博宣 今村
What i feel when began use AWS CodePipeline as GitLab Ci user
by
Yukiya Hayashi
オープンソースのドローン用フライトコントローラ「Dronecode」の概要( #OSC15tk)
by
博宣 今村
More from Uchio Kondo
PDF
人間たちとsystemd
by
Uchio Kondo
PDF
ペパボのサービスとRuby
by
Uchio Kondo
PDF
minneで学ぶクラウド脳
by
Uchio Kondo
PDF
Ruby way-openstack.keynote
by
Uchio Kondo
PDF
インフラ自動化とHashicorp tools
by
Uchio Kondo
PDF
Puppet of-2015-forupload
by
Uchio Kondo
PDF
Hashicorpツールズ
by
Uchio Kondo
PDF
Consul は 全自動オーケストレーションの 夢を見るか?
by
Uchio Kondo
PDF
ペパボ福岡支社におけるRubyの活用事例
by
Uchio Kondo
PDF
Testing in Sinatra
by
Uchio Kondo
PDF
Start-padrino
by
Uchio Kondo
PDF
Rubyist started to learn Groovy - things important to leran new LL
by
Uchio Kondo
PDF
otomodachi-kakumei
by
Uchio Kondo
人間たちとsystemd
by
Uchio Kondo
ペパボのサービスとRuby
by
Uchio Kondo
minneで学ぶクラウド脳
by
Uchio Kondo
Ruby way-openstack.keynote
by
Uchio Kondo
インフラ自動化とHashicorp tools
by
Uchio Kondo
Puppet of-2015-forupload
by
Uchio Kondo
Hashicorpツールズ
by
Uchio Kondo
Consul は 全自動オーケストレーションの 夢を見るか?
by
Uchio Kondo
ペパボ福岡支社におけるRubyの活用事例
by
Uchio Kondo
Testing in Sinatra
by
Uchio Kondo
Start-padrino
by
Uchio Kondo
Rubyist started to learn Groovy - things important to leran new LL
by
Uchio Kondo
otomodachi-kakumei
by
Uchio Kondo
Drone.io のご紹介
1.
GMO Pepabo, Inc. 技術基盤チーム
Advanced Senior 近藤うちお 2015/03/13 CIツール勉強会@福岡 Drone.ioのご紹介
2.
こんにちは
3.
me
8.
Contributor of Drone.io
10.
Drone.io
11.
CIツール第三世代? > 第一: とにかく自動で実行する奴 >
第二: Jenkins > 第三: Travis-CI に代表される ・設定がyamlなどで簡潔 ・ビルド環境をクリーンに都度作成 なやつ
12.
Drone.io > Hosting版とOSS版がある ! ! ! ! > https://drone.io/
13.
特徴 > 毎回ビルド環境をDockerで作る > サービスコンテナを別途立ち上げられる >
意外と豊富な外部サービス連携 > SlackやWebhook通知、s3やHerokuなどへの デプロイ > OSS/Apache License v2 > Go製/debやrpmも提供
14.
基本、Drone.io version 0.3の話をします
15.
導入の経緯
16.
Jenkinsよ…… > CI自体は全社的に普及していた > しかし >
各チームでJenkinsを立てていてダブってる感 > 一部の人しか触れないJenkins > Jenkinsでは通るけどローカルでどうすれば良 いのか不明なテスト > などなど…
17.
ナウいCIしたいんや! > 外部サービスは割と高額 > まずは効果検証のため導入したい >
Drone.io ってのがあるよ? > 0.2ぐらいの頃は機能不足…… > 0.3になったらサクっと動いた
18.
じゃあ、Drone.io しませんか
20.
インストール
21.
deb一発 ! ! > 事前にDockerを入れること > 実はDockerは同じホストでなくても良い >
rpmはCentOS >= 7向けのようだ > 未検証… # Ubuntu, Debian wget downloads.drone.io/master/drone.deb sudo dpkg -i drone.deb
22.
データベース > SQLite3, MySQL,
PostgreSQL > SQLite3はさすがにテスト用っぽい のでMySQLかポスグレで > ペパボはMySQL
23.
その他設定 > /etc/drone/drone.toml です >
詳細はドキュメント > デフォルトのコメントで空気は分かる…… > 環境変数でも良い > 不便だけど
24.
リポジトリの設定 > GitHubなりGH:Eなり設定を有効化 > tomlに項目を追加し、
open=true をセット > ログイン > sync > enable > .drone.yml をプロジェクトルートに配置 してプッシュ→完了
25.
.drone.yml 便利機能
26.
ビルドイメージのカスタマイズ > 既存で用意されている言語 > ruby,
php, node, go, erlangにdartも > バージョンのそろい方が微妙。 Dockerfileはあるので自作で…… > → https://github.com/drone/drone/blob/master/shared/build/images.go#L174 > ないものは作ればいい > 2パターン > 全く独自にイメージを作る > bradrydzewski/base をベースに作る
27.
ビルドのコツ > bradrydzewski/base ベースだと >
デフォでrubyとかnode、build-essential、等入り > ubuntuユーザ > drone/* と言う名前でないと正しく使えない > 独自だと、結構自分で色々入れないといけな いっぽい(特にsocatコマンド) > Qiitaにもう書いちゃった… > 「OSS版 Drone.io を社内で使い始めてる話」
28.
サービス立ち上げ > テストの実行に必要な外部サービスを指 定できる > MySQL、Redisなど有名どころは組み 込みでサポート ! ! >
→ https://github.com/drone/drone/blob/master/shared/build/images.go#L20 service: - mysql - redis - mongodb:2.2
29.
特別なサービスが必要なとき > 自分でコンテナを作って指定可能 > コンテナでは、EXPOSEで ポートを指定すれば検知してくれる >
ポートフォワーディングに socat コマンドを使っている模様 service: - udzura/custom-mysql:5.6
30.
通知 > notify: ディレクティブで指定 >
email(しょぼい……) > slack > hipchat > webhook
31.
Webhook便利 > 組み込みの通知は、 フォーマットがあまり柔軟じゃない > JSONを食べて別のサービスに渡す だけの簡単なproxyを書いた
32.
JSONの様子 > Goで雑にWeb APIを書いた
33.
デプロイ系 > publish: と
deploy: がある > deploy > Heroku, CloudFoundry, その他git repo, ssh > publish > s3/Swift, Azure, Github Release
34.
s3に上げる > 雑に成果物をぶち上げる ! ! ! > 意外と便利 >
AWS Keyはハードコードしなくても、 settingで別途指定可能 publish: s3: acl: public-read region: ap-northeast-1 bucket: hoge-bucket access_key: $$AWS_KEY secret_key: $$AWS_SECRET source: hoge.zip target: hoge/production/$DRONE_BRANCH/ recursive: false when: branch: master
35.
Dokkuにプッシュ > Heroku以外にも、git push
がで きるということで利用 > 普通にプッシュすれば良い
36.
when: 句 > ブランチ、pushした人、などで デプロイするしないを判定可能 publish: s3: acl:
public-read region: ap-northeast-1 bucket: hoge-bucket access_key: $$AWS_KEY secret_key: $$AWS_SECRET source: hoge.zip target: hoge/production/$DRONE_BRANCH/ recursive: false when: branch: master
37.
Hack: Capistrano…… > 対応してないので ビルドコマンド側の最後に…… script: #
…… - '[ "${DRONE_BRANCH}" != "master" ] && exit 0' # master以外の場合この下は実行しないぞ! - sudo chown -R ubuntu:ubuntu /var/tmp/bundle - mkdir -p vendor - ln -s /var/tmp/bundle vendor/bundle - bundle install --path vendor/bundle - bundle exec cap production deploy ! cache: - /var/tmp/bundle
38.
.drone.ymlの便利ドキュメント > https://godoc.org/ github.com/drone/drone/ shared/build/script#Build > godocやんけ…… >
しかし一番詳しいし最新だ
39.
運用の実際
40.
オンプレツール運用のイメージ > 基本厳しい > インストール困難 >
落ちてエンジニアが一日取られる > 大変ですね…… > 主にGitl○bと言うインストール型ツールが 培ったイメージ…ごにょごにょ
41.
Drone.ioは? > インストール楽(1バイナリ最高) > ほぼ全く落ちない >
Goって凄いんだな、と思わざるを得ない ……
42.
とは言え > バグや機能不足はそれなりにある > 結構どんどん直る >
マシンパワーは、まあ要るっすな …… 最近の LA の様子です
43.
困ってる/たこと
44.
fdがリークしていた > https://github.com/drone/drone/ issues/644 > 定期的に再起動しないと、too
many open files がめっちゃ出てた > 直った → https://github.com/drone/drone/ pull/762
45.
ハードディスクが足りない! > イメージやコンテナもそうだが、 > 一番でかいのはファイルキャッシュ機能 >
リポジトリ ブランチごとに残すので、 github-flowだととんでもないことに > cronで定期的に消すように > GitHubのdelete webhookを検知してディレクトリ 消せばいいんじゃないかと思うが分散環境じゃ難しいか ……
46.
秘伝のスクリプト $ find /tmp/drone/*/*/*/*
-type d -maxdepth 0 | # ディレクトリのみ > grep -v master | # master のキャッシュは消さない > xargs -n 5 --verbose rm -rf # 5件ずつじゃないと進 が…… これを毎週末回して解決(...)
47.
並列数/分散ビルド > workerを追加すればできる > デフォルトでは >
同ホストのdocker.sockを見る > 2つできる(ハードコード) > 同じエントリを追加すれば、エント リの数だけworkerを増やしてくれる
48.
8workerにする例
49.
分散で困ること > どのworkerでビルドするかは選べない > 独自イメージを使ってると 全台で同期する必要が…… >
インハウスなDocker registoryで解決するが それはそれで別の、ねえ… > Drone用のDockerfileをリポジトリ管理し、そ のCDをDroneで行う、みたいなのを考えている
50.
率直な感想
51.
強いマシンさえあれば何とかなる? > 運用自体はそこまで難しくない印象 > だいぶ地雷を踏み抜いた >
LAは高いが、これ多分 今も「実験的運用」なのでVM上で 走らせてるからです……
52.
テストのポータブル化が進む > これは非常に大きい > Jenkins上にしかない秘伝のタレを はがす >
手順がリポジトリに必ず入る > 再現可能なテストになる
53.
テストがポータブルになると > 将来、「やっぱdroneだめだね…」 となっても、TravisCI/Wercker/ CircleCIなどへ移行するのは手間で はない > それが、とにかくまずDroneを入れ てみる最大のメリットと思う
54.
他の第三世代CIと比べて > CircleCIの方が使いやすいかも…… > 未経験なですが画面等を見た印象 >
最大の違いはオープンソース > 困ったらソースを見れば良い
55.
困ったらソースを 見れば良い
56.
便利
57.
総括
58.
CIをナウくしたいなら > Drone.ioは参入障壁が低い > OSSで無料です
59.
CIをナウくしたいなら > Drone.ioは参入障壁が低い > OSSで無料です >
まあ、余ったサーバがあればだけど…… > まあ、Dockerの扱いにある程度慣れていれ ば…… > まあ、Goのコードをある程度(ry
60.
自信があるんなら いいんじゃないすかね……
61.
テストのポータブル化が重要 > ツールでやりたいのは、そういうこと > 秘伝のタレはがし >
手順をリポジトリに入れる > クリーンな環境で通るようにする > そういう意味では、Drone.io は 良いきっかけになるのでは?
62.
記事広告
63.
Drone.ioを全力で使える仕事あります > GMOペパボは 福岡/東京ともにエンジニアを 募集中です。 > アプリケーション/インフラ両方です! >
詳細は: http://pepabo.com/recruit/ career/
64.
注目の求人 minne 基盤エンジニア
65.
ペパランチョン > カジュアルにエンジニアの話を聞ける制度です 福岡ではガレリア様のご協力のもと開催中! http://pepabo.com/recruit/pepaluncheon/
66.
ご清聴 ありがとうございました!
Download