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
370
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
Ruby on Rails と私
znz
0
20
riscv64.rubyci.org internal
znz
0
16
Rubyの日本語リファレンスマニュアルの現在と未来
znz
0
65
devise-two-factorを4.xから5.xに上げた話
znz
0
320
docs.ruby-lang.org/ja/ の生成方法を変えた
znz
0
80
Ubuntuのriscv64版をqemuで動かした
znz
0
97
lilo.linux.or.jpをbusterからbullseyeに上げた
znz
0
100
小規模個人アプリをRails 7.xにバージョンアップした話
znz
0
91
Ruby リファレンスマニュアル改善計画 2022 進捗報告
znz
0
150
Other Decks in Technology
See All in Technology
AI時代を生き抜くエンジニアキャリアの築き方 (AI-Native 時代、エンジニアという道は 「最大の挑戦の場」となる) / Building an Engineering Career to Thrive in the Age of AI (In the AI-Native Era, the Path of Engineering Becomes the Ultimate Arena of Challenge)
jeongjaesoon
0
160
BPaaSにおける人と協働する前提のAIエージェント-AWS登壇資料
kentarofujii
0
140
2つのフロントエンドと状態管理
mixi_engineers
PRO
3
110
CDK CLIで使ってたあの機能、CDK Toolkit Libraryではどうやるの?
smt7174
4
180
Autonomous Database - Dedicated 技術詳細 / adb-d_technical_detail_jp
oracle4engineer
PRO
4
10k
Agile PBL at New Grads Trainings
kawaguti
PRO
1
430
未経験者・初心者に贈る!40分でわかるAndroidアプリ開発の今と大事なポイント
operando
5
640
Snowflake Intelligenceにはこうやって立ち向かう!クラシルが考えるAI Readyなデータ基盤と活用のためのDataOps
gappy50
0
250
Automating Web Accessibility Testing with AI Agents
maminami373
0
1.3k
共有と分離 - Compose Multiplatform "本番導入" の設計指針
error96num
2
580
人工衛星のファームウェアをRustで書く理由
koba789
15
8k
2025年になってもまだMySQLが好き
yoku0825
8
4.8k
Featured
See All Featured
A better future with KSS
kneath
239
17k
Raft: Consensus for Rubyists
vanstee
140
7.1k
The Illustrated Children's Guide to Kubernetes
chrisshort
48
50k
Agile that works and the tools we love
rasmusluckow
330
21k
What’s in a name? Adding method to the madness
productmarketing
PRO
23
3.7k
GitHub's CSS Performance
jonrohan
1032
460k
4 Signs Your Business is Dying
shpigford
184
22k
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
49
3k
Making the Leap to Tech Lead
cromwellryan
135
9.5k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
229
22k
The World Runs on Bad Software
bkeepers
PRO
70
11k
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
234
17k
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