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
250
Docker_OSS_ホスティング入門
MIENRUNE BBQ #8
satokoki
May 01, 2024
Tweet
Share
More Decks by satokoki
See All by satokoki
Re:ゼロから始めるドメイン駆動設計
kxuxl
0
70
誤解 クリーンアーキテクチャ
kxuxl
0
140
事例で学ぶ プロダクト開発
kxuxl
0
66
WEBフロントエンドの秩序を保つ
kxuxl
0
88
Other Decks in Programming
See All in Programming
シェーダーで魅せるMapLibreの動的ラスタータイル
satoshi7190
1
440
イベント駆動で成長して委員会
happymana
1
270
CSC509 Lecture 09
javiergs
PRO
0
140
ふかぼれ!CSSセレクターモジュール / Fukabore! CSS Selectors Module
petamoriken
0
120
リリース8年目のサービスの1800個のERBファイルをViewComponentに移行した方法とその結果
katty0324
5
4.2k
Tuning GraphQL on Rails
pyama86
2
1.2k
約9000個の自動テストの 時間を50分->10分に短縮 Flakyテストを1%以下に抑えた話
hatsu38
24
12k
弊社の「意識チョット低いアーキテクチャ」10選
texmeijin
5
24k
2024/11/8 関西Kaggler会 2024 #3 / Kaggle Kernel で Gemma 2 × vLLM を動かす。
kohecchi
4
570
Webの技術スタックで マルチプラットフォームアプリ開発を可能にするElixirDesktopの紹介
thehaigo
2
1k
ActiveSupport::Notifications supporting instrumentation of Rails apps with OpenTelemetry
ymtdzzz
1
180
Dev ContainersとGitHub Codespacesの素敵な関係
ymd65536
1
140
Featured
See All Featured
Optimising Largest Contentful Paint
csswizardry
33
2.9k
The Invisible Side of Design
smashingmag
297
50k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
38
1.8k
KATA
mclloyd
29
14k
jQuery: Nuts, Bolts and Bling
dougneiner
61
7.5k
The MySQL Ecosystem @ GitHub 2015
samlambert
250
12k
StorybookのUI Testing Handbookを読んだ
zakiyama
26
5.2k
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
29
2.3k
GraphQLの誤解/rethinking-graphql
sonatard
67
10k
Mobile First: as difficult as doing things right
swwweet
222
8.9k
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
131
33k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
159
15k
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্ͰΔͷ ͕αʔόʔϨεͰ͍͍Μ͡Όͳ͍͔ͳͱ ࢥͬͯ·͢ɻ