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
アプリケーションエンジニアが既存のマルチコンテナ環境をRancher管理に移行しようとしてハマった話
Search
machshev
October 13, 2017
Programming
670
0
Share
アプリケーションエンジニアが既存のマルチコンテナ環境をRancher管理に移行しようとしてハマった話
RancherJP Meetup #2 in Sapporo LT
machshev
October 13, 2017
More Decks by machshev
See All by machshev
Rancher2.1で、GitLabとの連携が簡単になったみたいなので、試してみた。
machshev
0
380
カスタムCordovaプラグインの作り方
machshev
0
420
Other Decks in Programming
See All in Programming
生成AI時代にこそ効くGo | Why Go Works in the Age of Generative AI
mom0tomo
8
3.1k
軽量Java基盤の設計 DIコンテナに頼らない、長期保守と1秒起動の実現 JJUG CCC 2026 Spring
macha64
0
300
The Arts and Crafts of Work in the AI Era — Toward Mastery in Software Development
kuranuki
1
690
JJUG CCC 2026 Spring: JSpecify で実現する Kotlin フレンドリーな Java API 設計
ternbusty
1
120
Migrations : C'est une question d'hygiène !
vinceamstoutz
0
2.7k
AI 時代のソフトウェア設計の学び方
masuda220
PRO
29
11k
SPMマルチモジュールで テストカバレッジを取得する技法
yosshi4486
0
140
初めてのRubyKaigiはこう見えた
jellyfish700
0
390
PHPで使える日時の表現と、その知り方 #frontend_phpcon_do
o0h
PRO
0
160
作って学ぶ、 JSX (TSX) ランタイムの基本
syumai
7
1.4k
AIとRubyの静的型付け
ukin0k0
0
490
AI時代の仕事技芸論 — ソフトウェア開発で「遊ぶように働く」職人的熟達のすすめ
kuranuki
1
560
Featured
See All Featured
[RailsConf 2023] Rails as a piece of cake
palkan
59
6.6k
The Impact of AI in SEO - AI Overviews June 2024 Edition
aleyda
5
1.1k
No one is an island. Learnings from fostering a developers community.
thoeni
21
3.7k
Making the Leap to Tech Lead
cromwellryan
135
9.9k
SEO for Brand Visibility & Recognition
aleyda
0
4.6k
Large-scale JavaScript Application Architecture
addyosmani
515
110k
Bootstrapping a Software Product
garrettdimon
PRO
307
120k
SEO Brein meetup: CTRL+C is not how to scale international SEO
lindahogenes
1
2.7k
Joys of Absence: A Defence of Solitary Play
codingconduct
1
380
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
162
16k
A Soul's Torment
seathinner
6
2.9k
WENDY [Excerpt]
tessaabrams
11
38k
Transcript
ΞϓϦέʔγϣϯΤϯδχΞ͕ طଘͷϚϧνίϯςφڥΛ RancherཧʹҠߦ͠Α͏ͱͯ͠ ϋϚͬͨ 2017/10/12 ϥςϥϧɾγϯΩϯάʢגʣɹ୩
ࣗݾհ u ໊લɿ୩ u ॴଐɿϥςϥϧɾγϯΩϯάגࣜձࣾ ɹɹɹγεςϜ։ൃ෦ u ଐੑɿΞϓϦέʔγϣϯɾΤϯδχΞ ɹɹɹʢࣗশɿࣾҊ݅ͷ͖ཷΊʣ u
झຯɿࣗసंʢϩʔυόΠΫɾMTBʣ ɹɹɹΨϯμϜΑΓϚΫϩεͰ͢ɻ ɹɹɹSNS΄ͱΜͲFacebook OnlyͰ͢ɻ
Rancherͱࢲʢ1ʣ u ࣾͰओʹडୗ։ൃΛ͍ͯͯ͠ɺҊ݅ຖʹ ຖճಉ͡Α͏ͳߏͰαʔόʔΛߏங͠ͳ͚Ε ͳΒͳ͍ͨΊɺن͕େ͖͘ͳΔͱ͔ʹ ͳΒͳ͍ɻ u ϝϯόʔ͕֤ࣗͰखಈͰΠϯετʔϧ͍ͯͨͨ͠Ίɺ ڥ͕ࠩൃੜ͠ɺͬͪ͜Ͱಈ͕͋ͬͪ͘Ͱ ಈ͔ͳ͍ͱ͍͏Α͏ͳ͜ͱ͕ىͬͨ͜ɻ
Rancherͱࢲʢ2ʣ ͍͍ͪͪڥΛ࡞Βͳ͍͍ͯ͘ํ๏ͳ͍͔ʁ ɹ㱺ChefΛࢼ͢ ɹ㱺ڥߏஙஈ֊Ͱ࠳ં orz ɹ㱺ɹɹɹɹɹɹɹɹɹΛͬͯΈΔ ɹ㱺WindowsҎ֎ͳΒԿͱ͔͍͚ͦ͏ʢޙʹղܾʣ
Rancherͱࢲʢ3ʣ u ͱΓ͋͑ͣɺࣾͰΑ͘͏LAMPߏͷϚϧν ίϯςφڥΛDockerΛͬͯߏஙͯ͠Έͨɻ Apacheʢnginxʣ+ FuelPHP + MySQL
Rancherͱࢲʢ4ʣ u ͱΓ͋͑ͣɺࣾͰ։ൃʹ༻Ͱ͖Δఔͷ ίϯςφ͕࡞Ͱ͖ͨͷͰɺখ͞ͳҊ͔݅Β ӡ༻։࢝ɻ u Ͱɺࠓʮ࡞ͬͨίϯςφͷཧΛͲ͏͠Α͏ʯ ͕ൃੜɻ u DockerfileͦͷଞͷιʔεΛGitཧʁ
u Docker ImageࣗମΛGitཧʁ u DockerHubͳͲͷdocker registryʹอʁ
Rancherͱࢲʢ5ʣ u Rancherͱ͔͍͏αʔϏεΛ͏ͱίϯςφͷߏ ΛؚΊͯཧͰ͖ΔΒ͍͠… u ͱ͍͏ΛࣾͰݟ͔͚ͨ࣌ʹɺࡳຈͰRancher Meetup #1 in Sapporo͕։࠵͞ΕΔͷΛͬͯ
ࢀՃͨ͠ͷͰͨ͠ɻ
ɹɹɹɹɹɹɹɹɹɹɹΛͬͯΈͨ u DocumentΛಡΈͳ͕ΒɺڥߏஙΛߦͬͯΈΔɻ 㱺Rancherࣗମͷىಈʹޭʢޙड़ʣ u Ͱɺ͔͜͜Β͍Ζ͍Ζͱ͕… ʢલͬͯએݴ͓͖ͯ͠·͕͢ɺDocumentΛ ɹͪΌΜͱಡΊͱ͍͏ۤड͚͚·ͤΜʣ
ɹɹɹɹɹɹɹɹɹɹɹͰϋϚͬͨᶃ u ͦͦDocker-compose.yml͕Ver.1ॻࣜͰॻ͔Ε ͍ͯΔɻ 㱺ͦͷ··Ͱߦ͚ͨͷ͔͠Ε·ͤΜ͕ɺෆ҆ͩͬ ͨͷͰɺVer.2ॻࣜʹमਖ਼͠·ͨ͠ɻ
ɹɹɹɹɹɹɹɹɹɹɹͰϋϚͬͨᶄ u ͦͦImageϑΝΠϧ͕PullͰ͖Δঢ়گʹͳ͍ɻ 㱺RancherʹAdd StackͰDocker-compose.ymlϑΝ ΠϧΛొ͠Α͏ͱ͢ΔͱImageλά͕ͳ͍ͱౖΒ Εͨɻ ͦͦDockerfileΛ࡞͔ͬͯͦ͜Β࡞ۀͯ͠ Β͍ͬͯͨͷͰɺDocker ImageΛ࡞͍ͯ͠ͳ͍ɻ
ํ͕ͳ͍ͷͰɺDockerHubʹΞΧϯτΛ༻ҙ͠ ͯɺΞοϓՄೳͳͷશͯDocker ImageΛ࡞͠ ͯొɻʢGitLab CEΛ͑ͬͯ…ʣ
ɹɹɹɹɹɹɹɹɹɹɹͰϋϚͬͨᶅ u RancherʹAdd StackͰDocker-compose.ymlϑΝΠ ϧΛొ͠Α͏ͱ͢ΔͱผͷΤϥʔ͕ൃੜͨ͠ɻ 㱺ImageλάΛՃͨ͠Docker-compose.ymlϑΝΠ ϧΛ࠶Rancherʹొ͠Α͏ͱͨ͠ͱ͜Ζɺొ ࣌ʹcattleؔͷΤϥʔʢError (open /var/lib/
cattle/xxxxʢ͜ͷ͋ͨΓ͕ෆ໌ʣ: no such file or directory) ʣ͕ൃੜͨ͠ɻ u 㱺࣍ϖʔδ
ɹɹɹɹɹɹɹɹɹɹɹͰϋϚͬͨᶆ u RancherʹDocker-compose.ymlϑΝΠϧΛొ͠Α ͏ͱ͢ΔͱΤϥʔ͕ൃੜͨ͠ɻ 㱺ݱࡏͷͱ͜ΖݪҼෆ໌͕ͩɺڪΒ͘ݕূ༻͔ͩΒ ͱ͍ͬͯɺແਫ਼ͯ͠Mac্ͷDockerʹߏஙͨ͠ͷ͕ ݪҼͱࢥΘΕΔʢͪΖΜඇਪͰ͢ʣ 㱺ํ͕ͳ͍ͷͰɺVirtualBoxͰUbuntuڥΛ࡞ ͠ɺͦΕͰRancherڥΛ࠶ߏஙத…
·ͱΊ u ͱ͍͏Θ͚Ͱɺ ·ͩಈ͔ͤΔڥ͕Ͱ͖͍ͯ·ͤΜ u ͨͩ։ൃऀʹͱ͍ͬͯ͜ͳͤΕɺඇৗʹ༗ ༻ͳߏཧπʔϧʹͳΓ͏Δͱࢥ͍·͢ͷͰɺ Ver2ग़ͦ͏Ͱ͢͠ɺ͜Ε͔ΒऔΓΜͰߦ͖ͨ ͍ͱࢥ͍·͢ɻ u
ͱ͍͏Θ͚Ͱ…
·ͱΊ uউखʹ࣍ճͷLTʹଓ͖·͢ʂ ΑΖ͓͘͠ئ͍͍ͨ͠·͢ʂ طଘͷDocker-compose.ymlʹ߆ΒͣʹɺΠν͔Β࡞Γͨ͠ํ͕ૣ͍͔ͱ ࢥ͍ͬͯΔͷφΠγϣͰ͢
͝੩ௌ͋Γ͕ͱ͏͍͟͝·ͨ͠ʂ