$30 off During Our Annual Pro Sale. View Details »

GitHub Actions の self-hosted runner と Amazon EKS を使った Docker のビルドパイプライン / secure-docker-build-pipeline

GitHub Actions の self-hosted runner と Amazon EKS を使った Docker のビルドパイプライン / secure-docker-build-pipeline

Kubernetes Meetup Tokyo #32 の登壇資料です。 https://k8sjp.connpass.com/event/181328/

Manabu Sakai

July 28, 2020
Tweet

More Decks by Manabu Sakai

Other Decks in Technology

Transcript

  1. GitHub Actions の self-hosted runner と

    Amazon EKS を使った Docker のビルドパイプライン
    ,VCFSOFUFT.FFUVQ5PLZP
    ࡔҪֶ!NBOBCVTBLBJ

    View Slide

  2. w GSFFFגࣜձࣾ43&νʔϜॴଐ
    w ೥͔ΒϓϨΠϯάϚωʔδϟʔ
    w ෳۀͰελʔτΞοϓͷٕज़ΞυόΠβʔ
    w 5XJUUFS
    w !NBOBCVTBLBJ
    w #MPH
    w NBOBCVTBLBJEFW
    ࡔҪֶ
    .BOBCV4BLBJ

    View Slide

  3. %PDLFSΠϝʔδͷηΩϡϦςΟ
    01
    Section

    View Slide

  4. PRODUCTS

    View Slide

  5. 5
    GSFFFͷϓϩμΫτ͸l͓ۚz΍lਓzʹ·ͭΘΔ৘ใ͕ଟ͍ɻ
    w ձܭGSFFFݸਓࣄۀ΍๏ਓͷࡒ຿৘ใ
    w ਃࠂGSFFF๏ਓͷܾࢉ৘ใ
    w ਓࣄ࿑຿GSFFFैۀһͷݸਓ৘ใ΍څ༩৘ใ
    w ϚΠφϯόʔ؅ཧGSFFFैۀһͷϚΠφϯόʔ৘ใ
    GSFFFͷϓϩμΫτ͕ѻ͏৘ใ

    View Slide

  6. ຊ൪؀ڥʹσϓϩΠ͞Ε͍ͯΔ
    %PDLFSΠϝʔδ͸҆શͳͷ͔ʁ
    SPPUϢʔβʔͰ࣮ߦ
    ͞Ε͍ͯΔʜ
    ϕʔεΠϝʔδΛߋ৽
    ͨ͠ͷ͸͍ͭʁ
    ϥϯλΠϜͷόʔδϣ
    ϯΞοϓͯ͠Δʁ
    ͲΜͳϛυϧ΢ΣΞ͕
    ؚ·Ε͚ͯͨͬʁ
    $01: "%%͍ͯ͠Δ
    ϑΝΠϧ͸҆શʁ

    View Slide

  7. 7
    Ծ૝Ϛγϯ؀ڥͷӡ༻͸43&$4*35͕୲౰͍ͯͨͨ͠Ίɺ੬ऑੑରԠͳͲ
    ͸ਝ଎ʹߦΘΕ͍ͯͨɻ
    %PDLFSGJMFΛΞϓϦέʔγϣϯ։ൃऀ͕ॻ͘Α͏ʹͳͬͨ͜ͱͰɺ͜Ε·Ͱͷ
    Α͏ͳରԠ͕೉͘͠ͳ͖ͬͯͨɻ
    ηΩϡϦςΟΛ୲อ͢Δͷ͕೉͘͠ͳͬͨ

    View Slide

  8. 8
    ΞϓϦέʔγϣϯ։ൃऀͷεΩϧ΍ҙࣝʹ͸όϥ͖͕ͭ͋Γɺ
    ৗʹηΩϡϦςΟͷ͜ͱΛҙࣝͯ͠΋Β͏ͷ͸ݱ࣮తͰ͸ͳ͍ɻ
    ͦͷͨΊʹॏྔͳͷ͕lࣗಈԽzͱlলྗԽzɻ
    ηΩϡϦςΟΛҙࣝͤ͞ͳ͍࢓૊Έͮ͘Γ

    View Slide

  9. ηΩϡΞͳ%PDLFSΠϝʔδΛҡ࣋͢Δ
    $*ύΠϓϥΠϯ
    02
    Section

    View Slide

  10. 10
    w Φʔϓϯιʔεͷίϯςφ੬ऑੑεΩϟφʔ
    w SFGझຯͰ࡞ͬͨιϑτ΢ΣΞ͕ւ֎اۀʹങΘΕΔ·Ͱͷ࿩
    w 04ͷύοέʔδͱ3VCZͳͲͷϥϯλΠϜͷύοέʔδΛΧόʔ
    w Φϓγϣϯ͕๛෋Ͱߴ଎ʹಈ࡞͢Δ
    w γϯάϧόΠφϦͰ࣮ߦͰ͖Δ
    w $ trivy image alpine:3.9
    5SJWZ

    View Slide

  11. 11
    5SJWZͷεΩϟϯ݁Ռ

    View Slide

  12. ϫʔΫϑϩʔͷఆٛʹ
    USJWZίϚϯυΛॻ͚͹ղܾʁ

    View Slide

  13. 13
    ϚΠΫϩαʔϏεԽʹΑͬͯ૿͑ଓ͚ΔϦϙδτϦΛूத؅ཧͰ͖ͳ͍ɻ
    w ઃఆ࿙Ε
    w ίϐϖͰྔ࢈͞ΕΔࣅ௨ͬͨίʔυ
    w FH4MBDL௨஌
    w ϝϯςφϯε͞Εͣʹෛ࠴Խ͢ΔύΠϓϥΠϯ
    εέʔϧ͢Δ࢓૊ΈΛ࡞Βͳ͍ͱɺ͋ͬͱ͍͏ؒʹෛ࠴Խ͢Δ
    ΂ͨॻ͖͢ΔϦεΫ

    View Slide

  14. 14
    w (JU)VC"DUJPOT͸ಠࣗͷ"DUJPOΛ࡞Δ͜ͱ͕Ͱ͖Δ
    w ެࣜͷςϯϓϨʔτ͕ϕʔεʹɺಠࣗͷॲཧΛ࣮૷
    w SFGIUUQTHJUIVCDPNBDUJPOTUZQFTDSJQUBDUJPO
    w ػೳ௥Ճ͢Δͱ͖͸NBTUFSʹϚʔδ͢Δ͚ͩͰ࿙Εͳ͘൓өͰ͖Δ
    w ϫʔΫϑϩʔ͔Β͸ͭͷ"DUJPOΛݺͿ͚ͩ
    "DUJPOԽͰंྠͷ࠶ൃ໌Λ๷͙

    View Slide

  15. 15
    ಠࣗʹ࡞ͬͨ"DUJPOͰɺ71$಺ͷTFMGIPTUFESVOOFSͰ࣮ߦ͞ΕΔɻ
    w JNBHF@BTTFNCMZ@MJOF͕୲͍ͬͯΔػೳ
    w EPDLFSCVJME
    w ੬ऑੑεΩϟϯ
    w MPHHJOH UP4

    w $4*35΁ͷ௨஌
    w EPDLFSQVTI
    w $*ͷϝτϦΫεऩू
    w Ϗϧυ࣌ؒɺ෮چ࣌ؒɺϏϧυͷࣦഊཧ༝
    JNBHF@BTTFNCMZ@MJOF

    View Slide

  16. 16
    $*͕҆ఆ͍ͯ͠Δ͜ͱ͸ॏཁͳࢦඪͳͷͰɺ࠷ॳ͔ΒϝτϦΫεΛऔΔઃܭʹ
    ͨ͠ɻ
    w 4ͷ+40/σʔλΛ"UIFOB 3FEBTI
    ͔Βࢀর
    w JNBHF@BTTFNCMZ@MJOFͷॲཧΛฏۉ෼Ҏ಺ʹऴΘΒ͍ͤͨ
    w ͜ͷσʔλΛݩʹߴ଎ԽʹऔΓ૊Ή༧ఆ
    w ϨΠϠʔΩϟογϡͷ׆༻
    w ඇޮ཰ͳ%PDLFSGJMFͷݕग़
    ଌఆͰ͖ͳ͍΋ͷ͸վળͰ͖ͳ͍

    View Slide

  17. ·ͱΊ
    03
    Section

    View Slide

  18. 18
    w εέʔϧ͢Δ࢓૊Έʹ͢ΔͨΊʹಠࣗͷ"DUJPOΛ࡞͍ͬͯΔ
    w "DUJPOΛ׆༻͢Δ͜ͱͰɺύΠϓϥΠϯͷෛ࠴ԽΛ๷͙
    w ηΩϡϦςΟͷ੹຿Λద੾ʹ෼͚Δ
    w ୯ʹ੬ऑੑεΩϟϯ͢Δ͚ͩͰͳ͘ɺϝτϦΫεΛ׆༻ͯ҆͠ఆԽΛ໨ࢦ͢
    ·ͱΊ

    View Slide

  19. @manabusakai

    View Slide