Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Dokku の紹介
Search
Kazuhiro NISHIYAMA
August 23, 2019
Technology
0
390
Dokku の紹介
[Docker Meetup Kansai #4 (19.08)](
https://dockerkansai.connpass.com/event/141875/
) での LT の発表資料です。
Kazuhiro NISHIYAMA
August 23, 2019
Tweet
Share
More Decks by Kazuhiro NISHIYAMA
See All by Kazuhiro NISHIYAMA
Headscale + Tailscale に移行中
znz
0
34
Ruby on Rails と私
znz
0
56
riscv64.rubyci.org internal
znz
0
46
Rubyの日本語リファレンスマニュアルの現在と未来
znz
0
92
devise-two-factorを4.xから5.xに上げた話
znz
0
390
docs.ruby-lang.org/ja/ の生成方法を変えた
znz
0
100
Ubuntuのriscv64版をqemuで動かした
znz
0
120
lilo.linux.or.jpをbusterからbullseyeに上げた
znz
0
120
小規模個人アプリをRails 7.xにバージョンアップした話
znz
0
120
Other Decks in Technology
See All in Technology
社内レビューは機能しているのか
matsuba
0
170
"作る"から"使われる"へ:Backstage 活用の現在地
sbtechnight
0
220
Kiroで見直す開発プロセスとAI-DLC
k_adachi_01
0
100
エンジニアリングマネージャーの仕事
yuheinakasaka
0
120
20260321_エンベディングってなに?RAGってなに?エンベディングの説明とGemini Embedding 2 の紹介
tsho
0
130
スケールアップ企業でQA組織が機能し続けるための組織設計と仕組み〜ボトムアップとトップダウンを両輪としたアプローチ〜
tarappo
3
250
AlloyDB 奮闘記
hatappi
0
170
楽しく学ぼう!ネットワーク入門
shotashiratori
1
490
OSC仙台プレ勉強会 AlmaLinuxとは
koedoyoshida
0
200
Lambda Web AdapterでLambdaをWEBフレームワーク利用する
sahou909
0
180
大規模ECサイトのあるバッチのパフォーマンスを改善するために僕たちのチームがしてきたこと
panda_program
1
290
「お金で解決」が全てではない!大規模WebアプリのCI高速化 #phperkaigi
stefafafan
4
1.9k
Featured
See All Featured
Lessons Learnt from Crawling 1000+ Websites
charlesmeaden
PRO
1
1.1k
JAMstack: Web Apps at Ludicrous Speed - All Things Open 2022
reverentgeek
1
400
Building Adaptive Systems
keathley
44
3k
Everyday Curiosity
cassininazir
0
170
Collaborative Software Design: How to facilitate domain modelling decisions
baasie
0
160
Writing Fast Ruby
sferik
630
63k
Impact Scores and Hybrid Strategies: The future of link building
tamaranovitovic
0
230
How to build a perfect <img>
jonoalderson
1
5.3k
svc-hook: hooking system calls on ARM64 by binary rewriting
retrage
2
180
Thoughts on Productivity
jonyablonski
75
5.1k
A Modern Web Designer's Workflow
chriscoyier
698
190k
The SEO identity crisis: Don't let AI make you average
varn
0
420
Transcript
Dokku の紹介 Kazuhiro NISHIYAMA Docker Meetup Kansai #4 (19.08) 2019/08/23
Powered by Rabbit 2.2.1
自己紹介 西山 和広 Ruby コミッター twitter, github など: @znz 株式会社Ruby開発
www.ruby-dev.jp https://github.com/dokku/dokku/ graphs/contributors で #5 (2019-08 現 在) 1/13
contributors 2/13
Dokku とは? http://dokku.viewdocs.io/dokku/ The smallest PaaS implementation you’ve ever seen
mini-Heroku といっていたこともあった 3/13
向いているもの 1 台のサーバーで収まるアプリに向いている buildpacks を使っているので規模が大きく なったときに Heroku などのクラウドに移 行しやすい データベースなどは別サーバーでも良い
(Heroku と同様) 4/13
向いていないもの 複数台にまたがるスケールアウト ロードバランサーとか別途用意する必要がある? ロールバックを考慮した運用 イメージにタグをつければ可能だが標準では古 いイメージは気にしない git reset で戻すような運用よりも git
revert で積んでいくような運用に向いている 5/13
動作環境 x64 の Ubuntu, Debian, CentOS, Arch こだわりがなければ Ubuntu がオススメ
Dokku 専用の VM を用意 動作をわかっていないと nginx や docker を他 のものと共有するのは難しい メモリは 1GB 以上 (少ないとアプリのビルドに 失敗するなどのトラブルの原因に) 6/13
インストール bootstrap.sh で docker も含めてインス トール Azure, DigitalOcean, ConoHa などはテン
プレートあり 7/13
Web UI から初期設定 8/13
初期設定項目 ssh の公開鍵を登録 ホスト名設定 サブドメインを使うか、アプリごとのポー トを使うか hello.example.com, test.example.com example.com:48890, example.com:21835
9/13
アプリのデプロイ データベースを使わないアプリなら git push するだけ (Heroku と同様) データベースを使うアプリならアプリを作 成してデータベースとリンク buildpacks
以外に Dockerfile にも対応 10/13
https 設定 dokku-letsencrypt プラグインで自動設定 ダウンタイムなしで更新可能 自動更新も可能 wildcard は未対応 (DNS との連携が必要なの
で難しい) CRT と KEY を用意して dokku certs:add で設定 11/13
更新 sudo dokku-update ですべて更新 yaourt (arch), apt-get (debian, ubuntu), (centos,
opensuse では何もしない) プラグインの更新 dokku ps:rebuildall でアプリのリビルド 12/13
まとめなど Dokku を使えば Heroku のように git push だけで更新できる PaaS を自前で構築
できる 前の会社では社内向け Rails アプリを動か すのに使っていた 今は自分専用の Rails アプリを動かすのに 使っている 13/13 Powered by Rabbit 2.2.1