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
June 20, 2015
Programming
0
270
dokku を本番環境で使ってみた話
dokku を本番環境で使ってみて、はまった点などの話です。
Kazuhiro NISHIYAMA
June 20, 2015
Tweet
Share
More Decks by Kazuhiro NISHIYAMA
See All by Kazuhiro NISHIYAMA
Ruby on Rails と私
znz
0
34
riscv64.rubyci.org internal
znz
0
29
Rubyの日本語リファレンスマニュアルの現在と未来
znz
0
71
devise-two-factorを4.xから5.xに上げた話
znz
0
350
docs.ruby-lang.org/ja/ の生成方法を変えた
znz
0
87
Ubuntuのriscv64版をqemuで動かした
znz
0
110
lilo.linux.or.jpをbusterからbullseyeに上げた
znz
0
110
小規模個人アプリをRails 7.xにバージョンアップした話
znz
0
100
Ruby リファレンスマニュアル改善計画 2022 進捗報告
znz
0
160
Other Decks in Programming
See All in Programming
30分でDoctrineの仕組みと使い方を完全にマスターする / phpconkagawa 2025 Doctrine
ttskch
1
170
Agentに至る道 〜なぜLLMは自動でコードを書けるようになったのか〜
mackee
5
1.9k
予防に勝る防御なし(2025年版) - 堅牢なコードを導く様々な設計のヒント / Growing Reliable Code PHP Conference Fukuoka 2025
twada
PRO
39
13k
AIと協働し、イベントソーシングとアクターモデルで作る後悔しないアーキテクチャ Regret-Free Architecture with AI, Event Sourcing, and Actors
tomohisa
2
6.7k
無秩序からの脱却 / Emergence from chaos
nrslib
1
6.7k
CSC509 Lecture 13
javiergs
PRO
0
260
全員アーキテクトで挑む、 巨大で高密度なドメインの紐解き方
agatan
5
7k
Vueで学ぶデータ構造入門 リンクリストとキューでリアクティビティを捉える / Vue Data Structures: Linked Lists and Queues for Reactivity
konkarin
1
320
スタートアップを支える技術戦略と組織づくり
pospome
8
9.1k
例外処理を理解して、設計段階からエラーを見つけやすく、起こりにくく #phpconfuk
kajitack
12
6.3k
社内オペレーション改善のためのTypeScript / TSKaigi Hokuriku 2025
dachi023
1
110
Micro Frontendsで築いた 共通基盤と運用の試行錯誤 / Building a Shared Platform with Micro Frontends: Operational Learnings
kyntk
0
110
Featured
See All Featured
How to train your dragon (web standard)
notwaldorf
97
6.4k
Embracing the Ebb and Flow
colly
88
4.9k
Building Flexible Design Systems
yeseniaperezcruz
329
39k
Site-Speed That Sticks
csswizardry
13
970
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
140
34k
Bash Introduction
62gerente
615
210k
Stop Working from a Prison Cell
hatefulcrawdad
272
21k
Producing Creativity
orderedlist
PRO
348
40k
What’s in a name? Adding method to the madness
productmarketing
PRO
24
3.8k
Product Roadmaps are Hard
iamctodd
PRO
55
12k
Fashionably flexible responsive web design (full day workshop)
malarkey
407
66k
Learning to Love Humans: Emotional Interface Design
aarron
274
41k
Transcript
dokku� を本番環 境で使ってみた話 Kazuhiro� NISHIYAMA 第7回� コンテナ型仮想化の情報交換会@大阪 2015/06/20
自⼰紹介 twitter� や� github� では� @znz
Ruby� 関連 Ruby� (CRuby)� のコミッター Ruby� 関係でいろいろ るびま� (Rubyist� Magazine)�
とか http://magazine.rubyist.net/ るりま� (Ruby� リファレンスマニュア ル)� とか http://docs.ruby-lang.org/ja/ Ruby� 関連のイベントでの発表
その他 Debian� 関係 関⻄� Debian� 勉強会や大統⼀� Debian� 勉強会での発表 各種勉強会 この勉強会などでの発表
dokku� とは? docker� による� mini� Heroku� ク ローン git� で�
deploy 単独サーバーで実⾏ スケーラビリティはない� (スケールア ウトできない)
dokku� の歴史� (知っている 範囲で) 0.2.x� で開発が停滞していた dokku-alt� という� fork� ができた
開発がまた活発になっていた Deis� というスポンサーがついていた
使い⽅ クリーンな� Ubuntu� 14.04� x64� でインストール heroku� のようにコマンド操作 dokku� コマンドで操作
リモートから� ssh� で操作 ssh� 経由の� git� で� deploy
使ってみた感想 安定して動いているときは安定 している 細かい不満はいくつかある デフォルトのタイムアウトが短い ログが悩ましい プラグインの対応バージョンがわかり にくい
タイムアウトを伸ばす /home/dokku/ENVで増やす CURL̲CONNECT̲TIMEOUT CURL̲TIMEOUT
永続的ストレージ docker-options� プラグイン� (標 準添付)� を利用 ログをホスト側に記録 dokku� docker-options:add� demo-app�
deploy,run� "-v� /srv/demo-app/log:/app/ log" ファイルアップロード dokku� docker-options:add� demo-app� deploy,run� "-v� /srv/demo-app/uploads:/ app/uploads"
プラグイン ドキュメントに⼀覧がある http://progrium.viewdocs.io/ dokku/plugins 古いバージョンとの互換は今で も使えるのかが不明 標準に取り込まれた機能もある� (末尾に⼀覧)
PostgreSQL� プラグイン Compatible� with� 0.3.16� のもの を使ってみた https://github.com/Flink/dokku- psql-single-container dokku�
の� deb� 更新時に問題あ り https://github.com/Flink/dokku- psql-single-container/issues/5
sshcommand� 書き換え PostgreSQL� プラグインのため� chown� のところを書き換えた chown� -R� dokku� /home/dokku�
相 当 chown� 999� -R� /home/dokku/.psql- sc/data� が必要 chown� -R� /home/dokku/.ssh� / home/dokku/*� 相当に変更
deb� パッケージ 0.3.17� から� deb� パッケージイ ンストールが標準になった
memcached プラグインは使わず、ホスト側 にインストール ufw� で制限した上で� lo� 以外も� listen� するように変更 docker�
用の� interface� は起動 のタイミングで存在しなかった
環境変数 タブを含む環境変数はうまく設 定できなかった heroku� ではできた LTSV� が設定したかった 結局「,」区切りにした
dokku� run cron� で2個同時に動かすとエラ ーになることがあった 1分ずらした 標準⼊⼒をリダイレクトで受け 取れなかった .forward� でメール処理ができなかっ
た
まとめ dokku� は用途によっては使える ソースまで読む気がないと使い こなすのは難しい heroku� はやっぱりすごい