Remote-Containersの接続先ホストにFedora CoreOSを使う / Using Fedora CoreOS for Remote-Containers
by
Shion Tanaka
×
Copy
Open
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Slide 1
Slide 1 text
WTDPEFKQ 3FNPUF$POUBJOFSTͷଓઌ ϗετʹ'FEPSB$PSF04Λ͏ +VM W 74$PEF.FFUVQ 4IJPO5BOBLB !UOLPO 1
Slide 2
Slide 2 text
WTDPEFKQ ΞδΣϯμ • ݩωλͷհ • ϦϞʔτଓઌͷϗετΛ͏త • ϦϞʔτଓઌͷϗετΛ͏࣌ͷ՝ • 'FEPSB$PSF04 • 'FEPSB$PSF04ΛͬͯΈΔ • ΦϚέ • ࢀߟϦϯΫ 2
Slide 3
Slide 3 text
WTDPEFKQ ࣗݾհ 3 • ాத࢘ԸʢλφΧ γΦϯʣ!UOLPO • ϨουϋοτגࣜձࣾɿιϦϡʔγϣϯΞʔΩςΫτ • ίϛϡχςΟɿ Ø0QFO4IJGU+BQBO$PNNVOJUZɺଞ • Կऀ͔ʁ Ø0QFO4IJGU0,%ΛͬͨΓ ØϥΠϒ৴ͬͨΓ ØԻͷݚڀΛͬͨΓ ˠৄࡉ+VMZ5FDI'FTUʢʣ $ɿߨԋʮΤϯδχΞͳΒ୭Ͱ৴Λʯ
Slide 4
Slide 4 text
WTDPEFKQ ݩωλͷհ • هࣄɿ74$PEFͷ3FNPUF$POUBJOFSTͰϦϞʔταʔόʔ্ͷ ίϯςφʔͷ։ൃΛߦ͏ํ๏ • ਖ਼݄ʹΰιΰιͱʮ74$PEF3FNPUF$POUBJOFSTʯͷ։ൃ ڥΛ.BD্ʹ࡞ Ø%PDLFS%FTLUPQGPS.BDͷಋೖͰτϥϒϧʢޙड़ʣ ˠϦϞʔτઌϗετʹ3)&-%PDLFSͰߏங • 44)ͰϦϞʔτઌϗετʹ%PDLFSͰܨ͙͚ͩͳΒઃఆ؆୯ Ø74$PEFͷTFUUJOHTKTPOʹԼهઃఆΛՃ 4 “docker.host”: “ssh://username@FQDN or IP address" ˞3FE)BU&OUFSQSJTF-JOVYʢ3)&-ʣ
Slide 5
Slide 5 text
WTDPEFKQ ݩωλͷհʢߏਤʣ 5 ! %PDLFSσʔϞϯ 74$PEF 3FNPUF$POUBJOFST コンテナー %PDLFS$-* ʻϩʔΧϧ࣮ߦͷ߹ʼ ! 74$PEF 3FNPUF$POUBJOFST 3FNPUF44) %PDLFS$-* %PDLFSσʔϞϯ WTDPEFTFSWFS コンテナー %PDLFS$-* 44) ʻϦϞʔτ࣮ߦͷ߹ʼ ϩʔΧϧ ϩʔΧϧ ϦϞʔτଓઌϗετ ˞%PDLFS%FTLUPQGPS.BD࣮ࡍԾϚγϯ ͷ-JOVY্Ͱ%PDLFSσʔϞϯΛ࣮ߦ
Slide 6
Slide 6 text
WTDPEFKQ ϦϞʔτଓઌͷϗετΛ͏త ˠʰϩʔΧϧͰ%PDLFSσʔϞϯΛಈ͔ͨ͘͠ͳ͍ʂʱ • %PDLFS%FTLUPQGPS.BDಋೖͷτϥϒϧ Ø ʮNBD04$BUBMJOBͰ%PDLFS%FTLUPQ͕ىಈ͠ͳ͍ʯͱ͔ Ø ʮDPNEPDLFSIZQFSLJUͷϓϩηε͕$16ͰுΓ͘ʯͱ͔ ˠ ʘ$16ϑΝϯ͕രԻʗ • ͬͱௐΔͱʜ Ø *TTVFT͕ࢁɿ *TTVFTuEPDLFSGPSNBD Ø 74$PEFͷυΩϡϝϯτʹɿ %PDLFSMJNJUBUJPOT ଟ͜Εμϝͳͭͩʜ 6
Slide 7
Slide 7 text
WTDPEFKQ ʢࢀߟʣ3)&-͔Β%PDLFS͕আ • ެ͔ࣜΒ%PDLFSͷύοέʔδఏڙ͞Εͳ͍ Ø“docker コマンドと Docker コンテナーエンジンも、Red Hat Enterprise Linux 8 から完全に削除しました。”(引⽤:RHEL8ドキュメント) • %PDLFS3FE)BUͷαϙʔτର֎ Ø“RHEL 8 には Docker が含まれず、Red Hat のサポート対象外になります” (引⽤:RHEL8ドキュメント) ˠʘ1PENBOΛ͓͏ʗ ˠଓઌϗετʹ3)&-͕͑ͳ͍ ʢʜͪͳΈʹɺ3)&-ͷΫϩʔϯͷ$FOU04ಉ͡ʣ 7 l044ͷ%PDLFSޓͷίϯςφʔΤϯδϯz
Slide 8
Slide 8 text
WTDPEFKQ ϦϞʔτଓઌϗετΛ͏࣌ͷ՝ • 3FNPUF$POUBJOFST͕%PDLFS༻લఏ Ø8JOEPXTͳΒ84-͕͋Δ͚Ͳɺ.BDͳ͍ʜ • ଓઌϗετͰ%PDLFSΛಈ͔ͨ͢Ίʹ͋Ε͜ΕखؒΛ ͔͚Δඞཁ͕͋Δ Ø%PDLFS͕͑Δ04Λ͏ʜ Øखܰʹ͍͍ͨɺڥΛԚͨ͘͠ͳ͍ʜ ˠίϯςφ࣮ߦʹಛԽͨ͠04ΛͬͯΈΑ͏ʂ 8
Slide 9
Slide 9 text
WTDPEFKQ 'FEPSB$PSF04ʢ'$04ʣ • 'FEPSB1SPKFDUͰ։ൃ͞Ε͍ͯΔ&EJUJPOͰɺίϯςφʔԽ͞ ΕͨϫʔΫϩʔυΛ࣮ߦ͢Δ͜ͱʹಛԽͨ͠04ɻ • 'FEPSB"UPNJD)PTUͱ$PSF04$POUBJOFS-JOVYͷޙܧͱ͠ ݄ͯʹਖ਼ࣜϦϦʔε ˠએɿ4PGUXBSF%FTJHO݄߸ͷ݄ץ'FEPSBδϟʔφϧʹɺ 'FEPSB$PSF040,%Λհ͢Δهࣄ͕ܝࡌ༧ఆ 9
Slide 10
Slide 10 text
WTDPEFKQ 'FEPSB$PSF04ɿಛ • ܰྔͳ04ɿ ØίϯςφʔΛಈ͔͢తҎ֎ͷ༨ܭͳͷ͕ͳ͍ • Πϯετʔϧɺ04ઃఆ͕؆୯ɿ Ø*HOJUJPOͱ͍͏ΈΛར༻ • %PDLFSʢNPCZFOHJOFʣɺ1PENBOඪ४ࡌɿ ØΠϯετʔϧͷखؒޓੑΛؾʹ͙ͤͣ͢ʹίϯςφʔΛ࣮ߦՄೳ ˠ*40ɺ֤छԾڥ༻Πϝʔδͷଞɺ"84($1ެ։Πϝʔδ͋Γ 10
Slide 11
Slide 11 text
WTDPEFKQ 'FEPSB$PSF04ɿߏྫ 11 ! 74$PEF 3FNPUF$POUBJOFST 3FNPUF44) %PDLFS$-* %PDLFSσʔϞϯ WTDPEFTFSWFS コンテナー %PDLFS$-* 44) ϩʔΧϧ ϦϞʔτଓઌϗετ ͦͷଞɺωοτϫʔΫཁ݅ • %)$1 • 8FC • 19&#PPUʢPQUJPOʣ
Slide 12
Slide 12 text
WTDPEFKQ 'FEPSB$PSF04ΛͬͯΈΔ • 44)ݤϖΞΛ࡞Γɺެ։ݤೝূͷηοτΞοϓ • *HOJUJPOϑΝΠϧͷ࡞ɺ8FCαʔόʔஔ • '$04Ϛγϯىಈ • ΠϯετʔϧίϚϯυ࣮ߦ • ࠶ىಈ • ྃɻˠ44)ଓͯ͠ར༻ 12 $ curl -LO https://example.com/example.ign $ sudo coreos-installer install /dev/sda --ignition-file example.ign 19&CPPUར༻࣌ ͜ͷ෦ࣗಈ࣮ߦ
Slide 13
Slide 13 text
WTDPEFKQ ʢࢀߟʣ*HOJUJPOϑΝΠϧͷ࡞ • JHOJUJPOͷݩͱͳΔ'$$ϑΝΠϧΛ:".-ܗࣜͰهड़͢Δ ྫFYBNQMFJHO • ίϯςφʔͰ'$$5πʔϧΛ࣮ߦ͠JHOJUJPOϑΝΠϧΛ࡞ 13 variant: fcos version: 1.0.0 passwd: users: - name: core ssh_authorized_keys: - ssh-rsa AAAA... (<-----事前に作成したSSH公開鍵ファイルの内容を記載) $ podman pull quay.io/coreos/fcct:release $ podman run -i --rm quay.io/coreos/fcct:release --pretty --strict < example.fcc > example.ign (<-----example.ignはFCOSからアクセスできるWebサーバーに配置)
Slide 14
Slide 14 text
WTDPEFKQ 'FEPSB$PSF04ΛͬͯΈΔ 14 '$04ىಈ • *HOJUJPOϑΝΠϧͷμϯϩʔυ • ΠϯετʔϧίϚϯυ࣮ߦ • ࠶ىಈ ࠶ىಈޙ44)ଓͯ͠ར༻
Slide 15
Slide 15 text
WTDPEFKQ 'FEPSB$PSF04ΛͬͯΈΔ 15 $ sudo docker version Client: Version: 19.03.11 API version: 1.40 Go version: go1.14.3 Git commit: 42e35e6 Built: Sun Jun 7 21:16:58 2020 OS/Arch: linux/amd64 Experimental: false Server: Engine: Version: 19.03.11 API version: 1.40 (minimum version 1.12) Go version: go1.14.3 Git commit: 42e35e6 Built: Sun Jun 7 00:00:00 2020 OS/Arch: linux/amd64 Experimental: false containerd: Version: 1.3.3 GitCommit: runc: Version: 1.0.0-rc10+dev GitCommit: fbdbaf85ecbc0e077f336c03062710435607dbf1 docker-init: Version: 0.18.0 GitCommit: $ podman version Version: 1.9.3 RemoteAPI Version: 1 Go Version: go1.14.2 OS/Arch: linux/amd64 ˞࣌ 'FEPSB$PSF04
Slide 16
Slide 16 text
WTDPEFKQ ·ͱΊ • '$04Λ͏ͱ؆୯ʹϦϞʔτଓઌϗετͷߏங͕Մೳ • ࡞Γ͕͠؆୯ͳͷͰ͍ࣺͯӡ༻Մೳ • ඪ४Ͱ%PDLFS͕͑Δ • ࠓޙ1PENBO͑Δ '$04Ͱշదͳʮ74$PEF3FNPUF$POUBJOFSTʯϥΠϑΛʂ 16
Slide 17
Slide 17 text
WTDPEFKQ ΦϚέ • ʮ74$PEF3FNPUF$POUBJOFSTʯͰ1PENBOΛ ͏ํ๏Λݕূ͍ͯ͠·͢ Øهࣄɿ3FNPUF$POUBJOFSTͰ1PENBOΛ͏ಈ࡞ݕূʢਵ࣌ߋ৽ʣ Øݱ࣌ͷ֬ೝ04ɿ'FEPSBɺ$FOU04ɺNBD04ɺ8JOEPXT • %PDLFSͷΘΓʹ1PENBOΛ͍͍ͨํ্ههࣄΛ ࢀߟʹͯ͠Έ͍ͯͩ͘͞ 17
Slide 18
Slide 18 text
WTDPEFKQ ࢀߟϦϯΫ • 3)&-υΩϡϝϯτ Øίϯςφʔͷߏஙɺ࣮ߦɺ͓Αͼཧ 3FE )BU&OUFSQSJTF -JOVY • 'FEPSB$PSF04 Ø'FEPSB$PSF04 Ø*OTUBMMJOH$PSF04PO#BSF.FUBMɿɿ 'FEPSB%PDT4JUF • ؔ࿈هࣄ • 74$PEFͷ3FNPUF$POUBJOFSTͰϦϞʔταʔόʔ্ͷίϯςφʔͷ։ ൃΛߦ͏ํ๏ • 3FNPUF$POUBJOFSTͰ1PENBOΛ͏ಈ࡞ݕূʢਵ࣌ߋ৽ʣ 18
Slide 19
Slide 19 text
WTDPEFKQ Thank you 19