Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Dockerを使ったレガシーシステムの開発環境の改善 / #RAKUSMeetup

Dockerを使ったレガシーシステムの開発環境の改善 / #RAKUSMeetup

JSP サーブレットの開発環境をDockerを使って改善した話をしました。
【大阪】カイゼンNight / RAKUS Meetup Osaka( https://rakus.connpass.com/event/134123/ )

Masashi Hirano

June 26, 2019
Tweet

More Decks by Masashi Hirano

Other Decks in Programming

Transcript

  1. DockerΛ࢖ͬͨ
    ϨΨγʔγεςϜͷ։ൃ؀ڥͷվળ
    ΧΠθϯNight / RAKUS Meetup Osaka
    Masashi Hirano(@shisama)

    View Slide

  2. ฏ໺ ণ࢜ / Masashi Hirano
    @shisama_
    @shisama
    Node.js Core Collaborator
    ؔ੢NodeֶԂOrganizer

    View Slide

  3. Agenda
    • ϨΨγʔγεςϜͷ։ൃ؀ڥͷ໰୊఺
    • DockerΛ࢖ͬͨվળ
    • ͭ·͍ͮͨͱ͜Ζ

    View Slide

  4. 10೥Քಇ͍ͯ͠ΔJSP & αʔϒϨοτͷ
    WebαʔϏεΛ։ൃɾӡ༻͍ͯ͠·͢ʂ

    View Slide

  5. ϨΨγʔγεςϜͷ։ൃͷݱ৔
    • ϥΠϒϥϦ؅ཧ͕खಈɻlibͬͯϑΥϧμʹjar͕͍ͯΔ
    • σϓϩΠ͸खಈͷ෦෼͕ଟ͍ɻsshͰαʔόʔʹೖͬͯrsync
    • ։ൃ؀ڥͷߏங͕ਏ͗͢Δ

    View Slide

  6. ϨΨγʔγεςϜͷ։ൃͷݱ৔
    • ϥΠϒϥϦ؅ཧ͕खಈɻlibͬͯϑΥϧμʹjar͕͍ͯΔ
    • σϓϩΠ͸खಈͷ෦෼͕ଟ͍ɻsshͰαʔόʔʹೖͬͯrsync
    • ։ൃ؀ڥͷߏங͕ਏ͗͢Δ

    View Slide

  7. ։ൃ؀ڥͷߏஙਏ͍఺
    • ϩʔΧϧͱຊ൪ͰOS͕ҧ͏
    • ಛఆͷOSͷखॱॻ͔͠ͳ͍
    • ઃఆϑΝΠϧͷखಈͰͷฤू͕ଟ͍
    • ؀ڥߏஙʹ͕͔͔࣌ؒΔ

    ⇛Javaʹෆ׳Εͩͱؙ2೔௵͢͜ͱʹͳΔ

    View Slide

  8. ϩʔΧϧͷ؀ڥߏஙվળ͍ͨ͜͠ͱ
    • ࣮ߦ؀ڥͷ౷Ұ
    • खॱͷࣗಈԽ
    • ޻਺ͷ࡟ݮ

    View Slide

  9. ϩʔΧϧͷ؀ڥߏஙվળ͍ͨ͜͠ͱ
    • ࣮ߦ؀ڥͷ౷Ұ
    • खॱͷࣗಈԽ
    • ޻਺ͷ࡟ݮ
    %PDLFSͰશ෦վળͰ͖ͦ͏ʂ

    View Slide

  10. ࣮ߦ؀ڥͷ౷Ұ
    • ຊ൪ͱಉ͡CentOSͷDockerΠϝʔδΛ࢖͏
    • JavaɺTomcatͷόʔδϣϯΛݻఆ
    • ؀ڥม਺ͷઃఆ͸͢΂ͯDockerfileʹॻ͍ͯࣗಈԽ

    ⇛作成したイメージを社内DockerϨδετϦʹpush(ޙड़)

    View Slide

  11. 1VTI
    1VMM 1VMM 1VMM
    ։ൃऀ"
    ։ൃऀ# ։ൃऀ$ ։ൃऀ%

    View Slide

  12. खॱͷࣗಈԽ
    • ΞϓϦέʔγϣϯݻ༗ͷઃఆ͕ॻ͔ΕͨϑΝΠϧΛ্ॻ͖͢Δ
    γΣϧΛ༻ҙ

    ⇛DB઀ଓઌͳͲͷconfigɺweb.xmlɺetc…
    • JavaͷϏϧυ΍Tomcatͷىಈ΋ίϯςφىಈ࣌ʹߦ͏

    ⇛entrypointͷγΣϧͰ࣮ߦ

    View Slide

  13. ޻਺ͷ࡟ݮ
    • jdk΍TomcatͷΠϯετʔϧ࡞ۀΛ࡟ݮ

    ⇛ίϯύΠϧ΋Dockerίϯςφ಺Ͱߦ͏ͨΊ
    • લड़ͷͱ͓ΓΞϓϦέʔγϣϯݻ༗ͷઃఆฤू΋ෆཁ
    • 1೔ʙ2೔͔͔Δ؀ڥߏங͕5෼Ͱ׬ྃ͢ΔΑ͏ʹͳͬͨ

    View Slide

  14. ͭ·͍ͮͨͱ͜Ζ΋͋Γ·ͨ͠

    View Slide

  15. ϗετ͕WindowsͩͱΤϥʔͳΔ
    • ৽نϑΝΠϧΛ࡞੒͢Δͱύʔϛογϣϯ͕644ʹͳ͍ͬͯΔ

    ⇛ίϯςφ͸LinuxͳͷͰ࣮ߦݖݶ͕ͳ͍ͱΤϥʔʹͳΔ

    ⇛WindowsͰϑΝΠϧ࡞੒ͨ͠Β755ʹ͢Δ
    • GitͰνΣοΫΞ΢τͨ͠ͱ͖ʹվߦίʔυ͕CRLFʹͳΔ

    ⇛Git for windowsͰൃੜ

    ⇛ίϯςφ͸LinuxͳͷͰLF͡Όͳ͍ͱ࣮ߦ࣌ʹΤϥʔʹͳΔ

    ⇛git config core.autocrlf=false

    View Slide

  16. https://qiita.com/uggds/items/00a1974ec4f115616580

    View Slide

  17. σόοά࣮ߦͷઃఆ͕ඞཁ
    • DockerίϯςφͩͱϦϞʔτσόοά͢Δඞཁ͕͋Δ
    • ϦϞʔτσόοά༻ͷϙʔτΛDockerfile಺Ͱ؀ڥม਺ʹઃఆ

    ENV JPDA_ADDRESS=“8000”
    • Tomcatىಈ࣌ʹjpdaΛ࢖͏

    /usr/local/tomcat/bin/catalina.sh jdpa start
    • ϗετ͔ΒϦϞʔτσόοά༻ͷϙʔτʹ઀ଓ

    View Slide

  18. View Slide

  19. ͦͷଞʹ΋…
    • TomcatͷόΠφϦ͕μ΢ϯϩʔυͰ͖ͳ͍

    ⇛riken.jpͷFTPͷTomcat͸ݹ͍όʔδϣϯ͸͙͢࡟আ͞ΕΔ
    • λΠϜκʔϯ͕ຊ൪ͱҧ͏

    ⇛Dockerfile಺Ͱઃఆ
    • etc…

    View Slide

  20. DockerԽͨ͠੒Ռ
    • ։ൃ؀ڥߏஙͷ޻਺Λ࡟ݮ
    • ؀ڥͷ࠶ݱ͕༰қʹͳͬͨ
    • खॱॻΛ؆ུԽ

    View Slide

  21. ·ͱΊ
    • ϨΨγʔγεςϜͰ΋खॱԽ͞Ε͍ͯΔ΋ͷ͸ࣗಈԽͰ͖Δ
    • ։ൃ؀ڥʹDockerΛ࢖͏ͱେ෯ʹޮ཰ԽͰ͖Δ

    DockerfileͳͲ࡞ΔίετΛ͔͚ΔՁ஋͸େ͍ʹ͋Δʂʂ

    View Slide

  22. Thanks.
    @shisama_
    @shisama

    View Slide