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
Docker_OSS_ホスティング入門
Search
satokoki
May 01, 2024
Programming
0
270
Docker_OSS_ホスティング入門
MIENRUNE BBQ #8
satokoki
May 01, 2024
Tweet
Share
More Decks by satokoki
See All by satokoki
Re:ゼロから始めるドメイン駆動設計
kxuxl
0
120
誤解 クリーンアーキテクチャ
kxuxl
0
180
事例で学ぶ プロダクト開発
kxuxl
0
71
WEBフロントエンドの秩序を保つ
kxuxl
0
97
Other Decks in Programming
See All in Programming
新卒から4年間、20年もののWebサービスと 向き合って学んだソフトウェア考古学
oguri
8
6.9k
Day0 初心者向けワークショップ実践!ソフトウェアテストの第一歩
satohiroyuki
0
440
PHPでお金を扱う時、終わりのない 謎の1円調査の旅にでなくて済む方法
nakka
4
1.4k
Coding Experience Cpp vs Csharp - meetup app osaka@9
harukasao
0
130
英語 × の私が、生成AIの力を借りて、OSSに初コントリビュートした話
personabb
0
130
Preact、HooksとSignalsの両立 / Preact: Harmonizing Hooks and Signals
ssssota
1
790
Develop Faster With FrankenPHP
dunglas
2
2.7k
PHPer's Guide to Daemon Crafting Taming and Summoning
uzulla
2
1.1k
remix + cloudflare workers (DO) docker上でいい感じに開発する
yoshidatomoaki
0
120
snacks.nvim内のセットアップ不要なプラグインを紹介 / introduce_snacks_nvim
uhooi
0
350
ベクトル検索システムの気持ち
monochromegane
30
9.2k
SQL Server ベクトル検索
odashinsuke
0
120
Featured
See All Featured
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
32
2.2k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
102
18k
RailsConf 2023
tenderlove
29
1k
Large-scale JavaScript Application Architecture
addyosmani
511
110k
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
3.8k
Unsuck your backbone
ammeep
670
57k
Site-Speed That Sticks
csswizardry
4
450
Designing Dashboards & Data Visualisations in Web Apps
destraynor
231
53k
Product Roadmaps are Hard
iamctodd
PRO
52
11k
What’s in a name? Adding method to the madness
productmarketing
PRO
22
3.4k
Documentation Writing (for coders)
carmenintech
69
4.7k
jQuery: Nuts, Bolts and Bling
dougneiner
63
7.7k
Transcript
%PDLFSʷ 044 ϗεςΟϯάೖ .*&36/&##2
චऀͷใ ࠤ౻ ޭथ 🏢 👨💻 💛 גࣜձࣾΠϯϓϧ 8&#ΤϯδχΞ 75VCFS$PGGFF5FB
චऀͷΩϟϦΞ 2019 ୈࡾࠤ౻࢈ۀʢ࣮Ոʣʹब৬͢Δ 🧑🌾 2021 גࣜձࣾΠϯϓϧʹೖࣾ 🧑💻 2022 ϞόΠϧΤϯδχΞͰΩϟϦΞελʔτ📱 2023
8FCܥΤϯδχΞͱͯ͠ϑϧελοΫ👀 2024 BOENPSFʜ👨💻
ٕज़ࢦඪ ͱ͍͘ ͖͢
νΣοΫΠϯ %PDLFSͬͯͬͯ·͔͢ʁ
͘͡ ࠓੲ%PDLFSͷ͕ͨΓ %PDLFSʹ͍ͭͯ 044ʹ͍ͭͯ ͍͟ʂ͓ͨΊ͠
ࠓੲ%PDLFSͷ͕ͨΓ
ຐ๏ͷๅശ ੲʑɺ͋Δͱ͜Ζʹ ຐ๏ͷๅശ͕͋Γ·ͨ͠
ຐ๏ͷๅശ ੲʑɺ͋Δͱ͜Ζʹ ຐ๏ͷๅശ͕͋Γ·ͨ͠ ͦͷശɺԿΛೖΕͯ ҆શʹಈ͔͠ͳ͕Β ӡΔͷͰͨ͠
̍ຕͷࢴ ͜ͷശʹ̍ຕͷ ࢴ͕ೖ͍ͬͯ·ͨ͠
̍ຕͷࢴ ͜ͷശʹ̍ຕͷ ࢴ͕ೖ͍ͬͯ·ͨ͠ ͜ͷࢴʹ͜ͷശͷ ࢦࣔ༰͕ॻ͔Ε͍ͯ·ͨ͠
͜ͲΛͭ͘Δ ͕ͯࢠๅശ͕ ੜ·Ε·ͨ͠
͜ͲΛͭ͘Δ ͕ͯࢠๅശ͕ ੜ·Ε·ͨ͠ ൴ΒͦΕͧΕڵຯؔ৺͕ ͔Ε͍ͯ·ͨ͠
%PDLFS)VC %PDLFS)VCͱ͍͏໊ͷ ͕͋Γ·ͨ͠
%PDLFS)VC %PDLFS)VCͱ͍͏໊ͷ ͕͋Γ·ͨ͠ ๅശͨͪͷ׆ಈΑΓ ׆ൃʹͳΓ·ͨ͠
%PDLFS%BFNPO ޠͷཪଆͰɺ ࠇນ͕͍·ͨ͠
%PDLFS%BFNPO ޠͷཪଆͰɺ ࠇນ͕͍·ͨ͠ ͦͷ໊%PDLFS%BFNPO
%PDLFS%BFNPO ຐ๏ͷಜऀͰ͋Γ ശͷྗΛकΔͷͰ͢ ൴ͷଘࡏͷ͓͔͛Ͱɺ ׆ಈͷ҆શ͕อো͞Ε·͢
ΊͰͨ͠ ͜Ε͔ΒͣͬͱๅശʹΑͬͯ ശͷڥ͕อͨΕ͍ͯ͘ͷͰͨ͠ɻ
%PDLFSͱʁ %PDLFSͱ044ͷؔʹ͍ͭͯΓͨ͘ͳ͔ͬͨʁ σʔϞϯͨΔԶ͕ڭ͑ͯΖ͏ɾɾɾ
ొਓ %PDLFS 3FENJOF
%PDLFSʹ͍ͭͯ %PDLFSɺԾతͳڥΛఏڙͯ͘͠ΕΔ ྑ͍ϠπͰ͢ɻ γεςϜͦͷґଘؔΛίϯςφʹด͡ ࠐΊΔ͜ͱͰύοέʔδԽͰ͖·͢ɻ ͜ΕʹΑΓɺҟͳΔڥԼͰίϯςφ͞ ͑͋Εಈ࡞͕อো͞Ε·͢ɻ δΦϥϚΈ͍ͨͰ͢Ͷʂ
3FENJOFʹ͍ͭͯ 3FENJOFɺϓϩδΣΫτཧλεΫͷ ঢ়ଶͷࢹɺνʔϜ։ൃͰͷ৭ʑͳΓͱ ΓͳͲΛࢧԉ͢ΔͷιϑτΣΞͰ͢ɻ ͦͷ࣮ଶɺ044Ͱ͋Γɺ୭ʹͰجຊత ʹແঈͰఏڙ͞Ε͍ͯ·͢ɻ
αΫοͱ%PDLFSڥΛ࡞Δ %PDLFSΛμϯϩʔυ %PDLFS$PNQPTF GJMFΛ࡞
αΫοͱ%PDLFSڥΛ࡞Δ %PDLFSΛμϯϩʔυ %PDLFS$PNQPTFGJMFΛ࡞ ͓Εͷ໊લɺʮڥߏங %BFNPOʯɻ ͓લͷ %PDLFSڥߏஙΛαϙʔτ͢Δͧʂ
%PDLFSΛμϯϩʔυ͢Δͧʂ
%PDLFSͷެࣜαΠτ͔Βμϯϩʔυ͠·͢ɻ %PDLFSΛμϯϩʔυ͢Δͧʂ https://www.docker.com/products/docker-desktop/ ˞͓͍ͷڥʹԊͬͨͷΛΠϯετʔϧ͍ͯͩ͘͠͞ɻ
%PDLFSͷެࣜαΠτ͔Βμϯϩʔυ͠·͢ɻ %PDLFSΛμϯϩʔυ͢Δͧʂ https://www.docker.com/products/docker-desktop/ -JOVYڥͰ͋ΕΠϯετʔϧͷΈͰྃ͠·͢ɻ 8JOEPXTʹؔͯ͠ɺॾʑઃఆ͕ඞཁͷͨΊ֤ࣗͰઃఆΛ͓ئ͍͠·͢ 🙇 💡 ͓͍ͷڥʹԊͬͨͷΛબ͍ͯͩ͘͠͞ɻ
%PDLFS$PNQPTFதʹ͍ͭͯΓ͍ͨΑͳʂ
💡 ࠓճ3FENJOFͰ͕͢ɺ͓͍ͷπʔϧʹԊͬͨͷΛઃఆ͍ͯͩ͘͠͞ɻ %PDLFS$PNQPTFதʹ͍ͭͯΓ͍ͨΑͳʂ
💡 ࠓճ3FENJOFͰ͕͢ɺ͓͍ͷπʔϧʹԊͬͨͷΛઃఆ͍ͯͩ͘͠͞ɻ ӈهͰઃఆ͠·ͨ͠ɻ ৄࡉʹ͍ͭͯ͜Ε͔Βղઆ ͠·͕͢ɺͬ͘͟Γίϯςφ ͷࢦࣔ༰͕ॻ͔Ε͍ͯΔ ϑΝΠϧͱࢥ͍ͬͯͩ͘͞ɻ %PDLFS$PNQPTFதʹ͍ͭͯΓ͍ͨΑͳʂ ͳΜͱ͜ΕΛॻ͚ͩ͘Ͱɺ ઃఆ΄΅ऴΘΓͰ͢ɻ
ىಈ͢Δલʹɺͪΐͬͱ͚ͩ %BFNPO͘ΜͷղઆΛݟ·͢ɻ
ͦΕͧΕΛɺ͞Β͍ͬͯͧ͘ʂ
%PDLFS$PNQPTFϑΝΠϧͰɺ֤αʔϏεʢίϯςφʣΛఆٛ͠·͢ɻ ࠓճɺ3FENJOFͱ.Z42-ͷͭͷαʔϏε͕ఆٛ͞Ε͍ͯ·͢ɻ TFSWJDFT ͦΕͧΕΛɺ͞Β͍ͬͯͧ͘ʂ
%PDLFS$PNQPTFϑΝΠϧͰɺ֤αʔϏεʢίϯςφʣΛఆٛ͠·͢ɻ ࠓճɺ3FENJOFͱ.Z42-ͷͭͷαʔϏε͕ఆٛ͞Ε͍ͯ·͢ɻ TFSWJDFT ίϯςφͰ༻͢Δ%PDLFSΠϝʔδΛࢦఆ͠·͢ɻ 3FENJOFͷ߹ɺSFENJOFMBUFTUͱ͍͏ΠϝʔδΛ༻͍ͯ͠·͢ɻ .Z42-ͷ߹ɺNZTRMͱ͍͏ΠϝʔδΛ༻͍ͯ͠·͢ɻ JNBHF ͦΕͧΕΛɺ͞Β͍ͬͯͧ͘ʂ
ͬͱΓ͍ͨΑͳʂ
ϗετϚγϯͱίϯςφͷؒͷϙʔτϚοϐϯάΛఆٛ͠·͢ɻ ࠓճɺ3FENJOFίϯςφͷϙʔτ͕ϗετϚγϯͷϙʔτʹϚοϐϯάɻ QPSUT ͬͱΓ͍ͨΑͳʂ
ϗετϚγϯͱίϯςφͷؒͷϙʔτϚοϐϯάΛఆٛ͠·͢ɻ ࠓճɺ3FENJOFίϯςφͷϙʔτ͕ϗετϚγϯͷϙʔτʹϚοϐϯάɻ QPSUT ίϯςφͷڥมΛઃఆ͠·͢ɻ 3FENJOFίϯςφͰɺ.Z42-σʔλϕʔεͷઃఆ͕ڥมͱͯ͠ࢦఆ͞Ε͍ͯ·͢ɻ FOWJSPNFOU ͬͱΓ͍ͨΑͳʂ
͞Βʹʂ
ϗετϚγϯͱίϯςφؒͰσʔλͷӬଓԽΛ࣮ݱ͢ΔͨΊͷϚϯτϙΠϯτΛࢦఆ ͠·͢ɻ ࠓճɺ3FENJOFίϯςφͷϑΝΠϧΛϗετͷSFENJOF@EBUBσΟϨΫτϦʹӬଓԽ ͍ͯ͠·͢ɻ WPMVNFT ͞Βʹʂ
ϗετϚγϯͱίϯςφؒͰσʔλͷӬଓԽΛ࣮ݱ͢ΔͨΊͷϚϯτϙΠϯτΛࢦఆ ͠·͢ɻ ࠓճɺ3FENJOFίϯςφͷϑΝΠϧΛϗετͷSFENJOF@EBUBσΟϨΫτϦʹӬଓԽ ͍ͯ͠·͢ɻ WPMVNFT .Z42-༻ͷઃఆΛߦ͍·͢ɻ 3FENJOFͷ࣌ͱɺಉ༷ʹઃఆ͍͖ͯ͠·͢ɻ EBUBCBTF ͞Βʹʂ
Կ͌ɾɾɾʁ044ʹ͍ͭͯΓ͍ͨͩͱʁ
Կ͌ɾɾɾʁ044ʹ͍ͭͯΓ͍ͨͩͱʁ 044 ͷΈ ΦʔϓϯιʔειϑτΣΞͱɺϥΠηϯεͳͲͷن͋Γ·͕͢ɺجຊతʹ ແྉͰఏڙ͞Ε͍ͯΔγεςϜͷ͜ͱΛࢦ͠·͢ɻ͜ΕʹΑΓɺଟ͘ͷΤϯδχΞ͕ ڞಉͯ͠ιϑτΣΞΛվྑ͠ɺ৽͍͠ػೳΛՃ͢Δ͜ͱ͕Ͱ͖·͢ɻ ͨͩɺ࣮ࡍͷιϑτΣΞͱಉ͡Α͏ʹ͏ͨΊʹɺαʔόʔ্ʹσʔλϕʔε υϝΠϯΛߏ͢Δඞཁ͕͋Γɺผ్༻ҙͯ͋͛͠Δඞཁ͕͋Γ·͢ɻ ΦϯϓϨϛεͰߏͨ͠ΓɺΫϥυ্ʹ্͛ͯεϚϗ͔ΒݟΔ͜ͱՄೳͰ͢ɻ
💡 طͷΓͳ͍ͱ͜ΖΛɺࣗલͰ༻ҙ͢ΔΧϯδͰ͢ɻ Կ͌ɾɾɾʁ044ʹ͍ͭͯΓ͍ͨͩͱʁ 044ͷΈ ΦʔϓϯιʔειϑτΣΞͱɺϥΠηϯεͳͲͷن͋Γ·͕͢ɺجຊతʹ ແྉͰఏڙ͞Ε͍ͯΔγεςϜͷ͜ͱΛࢦ͠·͢ɻ͜ΕʹΑΓɺଟ͘ͷΤϯδχΞ͕ ڞಉͯ͠ιϑτΣΞΛվྑ͠ɺ৽͍͠ػೳΛՃ͢Δ͜ͱ͕Ͱ͖·͢ɻ ͨͩɺ࣮ࡍͷιϑτΣΞͱಉ͡Α͏ʹ͏ͨΊʹɺαʔόʔ্ʹσʔλϕʔε υϝΠϯΛߏ͢Δඞཁ͕͋Γɺผ్༻ҙͯ͋͛͠Δඞཁ͕͋Γ·͢ɻ ΦϯϓϨϛεͰߏͨ͠ΓɺΫϥυ্ʹ্͛ͯεϚϗ͔ΒݟΔ͜ͱՄೳͰ͢ɻ
্ཱͪ͛ͯΈΔ
$ sudo apt install docker-compose //インストールコマンド ࣄલ४උ ·ͣɺEPDLFSDPNQPTFΛΠϯετʔϧ͠·͢ɻ ࠓճ.BD04Λఆ͍ͯ͠·͢ɻ ্ཱͪ͛ͯΈΔ
$ sudo apt install docker-compose //インストールコマンド ࣄલ४උ ·ͣɺEPDLFSDPNQPTFΛΠϯετʔϧ͠·͢ɻ ࠓճ.BD04Λఆ͍ͯ͠·͢ɻ ্ཱͪ͛ͯΈΔ
$ mkdir docker-redmine // ディレクトリの作成 $ cd docker-redmine // ディレクトリ直下に移動する ࡞ۀσΟϨΫτϦΛ࡞Δ ҙͷσΟϨΫτϦͰ࡞ۀ༻ͷͷΛ࡞͠·͢ɻ ࠓճʮEPDLFSSFENJOFʯʹ͠·ͨ͠ɻ
EPDLFSϑΝΠϧΛஔ ઌ΄Ͳݟͨ͜ΕΛԼʹஔ͖·͢ɻ ϑΝΠϧ໊EPDLFSDPNQPTFZNMͰ͢ɻ ্ཱͪ͛ͯΈΔ ىಈॲཧΛ࣮ߦ͢Δ ͍Α͍ΑىಈͰ͢ʂ ҎԼɺ্ཱͪ͛ͷίϚϯυͰ͢ɻ $ docker-compose up
–d // 魔法の呪文 ίϚϯυ͕ͬͱΓ͍ͨํެࣜυΩϡϝϯτΛࢀর͍ͩ͘͞ɻ https://docs.docker.jp/compose/reference/docker-compose.html $ touch docker-compose.yml
্ཱ͕ͪͬͨʂ ͍͍ײ͡ʹͰ͖·ͨ͠ʂ ͬͨʙʂ ͖ͳΑ͏ʹվมՄೳ ΧϯόϯͷϓϥάΠϯͱ͔ೖΕΔͱ خ͍͠ײ͡ʹͳΔ
৭ʑํ๏͋Δ͕ɾɾɾ αʔόʔ্Ͱ࡞ۀ͢Δͷ͕͍͍͔ͳͱʂ ͓͖ͳΠϯϑϥͰ͓ࢼ͠ՄೳͰ͢ɻ αʔόʔʹ͋͛Δ߹ ݸਓతʹɾɾɾ "-#Ͱෛՙࢄͭͭ͠ɺ&$4্ͰΔͷ ͕αʔόʔϨεͰ͍͍Μ͡Όͳ͍͔ͳͱ ࢥͬͯ·͢ɻ