Slide 1

Slide 1 text

$JSDMF$* Λ࢖͍౗ͦ͏ QIQDPOGFSFODF,BOTBJ LVOJU

Slide 2

Slide 2 text

ࣗݾ঺հ ✓ !LVOJU ✓ߴڮ๜඙ ✓OFDPNPSJ--$ ✓ʮ1)1ϚχϡΞϧΛಡ΋͏ʯQPEDBTU ✓IUUQQIQNBOVBMOFDPNPSJBTJB ✓QIQPOEPD ✓ฌݿݝग़਎

Slide 3

Slide 3 text

Կ͸͓͍ͯ΋ ✓ݱࡏɺདྷ೥ͷ$BLF'FTUΛͲ͜Ͱ։࠵͢ Δ͔ͱ͍͏։࠵஍ͷ౤ථ͕ߦΘΕ͍ͯ·͢ ✓ͦͷީิʹͳΜͱ೔ຊؚ͕·Ε͓ͯΓ·͢ ͷͰͥͻօ͞Μ౤ථΛ͓ئ͍͠·͢ʂ ✓IUUQTDBLFGFTUPSH ✓౤ථʹ͸.Z$BLF1)1αΠτ΁ͷొ࿥ ͕ඞཁͱͳΔͷͰͦͷ఺͚͓ͩؾΛ͚ͭͩ͘ ͍͞ʂ

Slide 4

Slide 4 text

ͦ΋ͦ΋$*ͱ͸ ✓8JLJQFEJB͞ΜʹΑΕ͹ ✓$POUJOVPVT*OUFHSBUJPOͷུ ✓ܧଓతΠϯςάϨʔγϣϯ ✓ओʹϓϩάϥϚʔͷΞϓϦέʔγϣϯ࡞੒࣌ͷ ඼࣭վળ΍ೲظͷ୹ॖͷͨΊͷश׳ͷ͜ͱͰ͋Δɻ ΤΫετϦʔϜɾϓϩάϥϛϯά 91 ͷϓϥΫ ςΟεͷҰͭͰɺڱٛʹ͸Ϗϧυ΍ςετɺΠϯ εϖΫγϣϯͳͲΛܧଓతʹ࣮ߦ͍ͯ͘͜͠ͱΛ ҙຯ͢Δ

Slide 5

Slide 5 text

݁ہ$*ͬͯͳʹ͢Μͩʁ ✓ԿΒ͔ͷτϦΨʔΛड͚ͯ ✓ܾΊΒΕͨॲཧΛߦ͏

Slide 6

Slide 6 text

τϦΨʔͱͳΔͷ͸ ✓(JU)VC౳ʹίʔυΛ QVTIͨ͠ͱ͖ʹىಈ ✓ܾΊΒΕͨ࣌ؒʹىಈ ✓खಈͰىಈ

Slide 7

Slide 7 text

࣮ߦ͢Δॲཧྫ ✓ඞཁͳϥΠϒϥϦͷΠϯετʔϧ ✓DPNQPTFSJOTUBMMతͳ ✓ίʔσΟϯάελΠϧνΣοΫ ✓৔߹ʹΑͬͯ͸ίʔυϑΥϚοτ΋͔͚ͯ͠·͏ ✓จ๏νΣοΫ ✓ίϯύΠϧϦϯΫ 1)1Ͱ͸ͳ͍͚Ͳ  ✓ςετ ୯ମ&&  ✓σϓϩΠ

Slide 8

Slide 8 text

$JSDMF$*ʹ͍ͭͯ ✓ͱͱ͍͏όʔδϣϯҧ͍ͷαʔϏ ε͕͋Δ ✓͸དྷ݄  ຤ʹऴྃ͢Δ ✓͸೉͍͠ͱ͍͏࿩ΛΑ͘ฉ͘ ✓͍ͭ࠷ۙ$JSDMF$*+BQBO͕Ͱ͖ͯɺࠓ πΠολʔͰઈࢍΤΰαʔν͞ΕͯΔͷͰɺ ࣭໰ͨ͠Β͙͢ʹ৯͍͍ͭͯ΋Β͑Δ͔Βνϟ ϯεʂ

Slide 9

Slide 9 text

͞ΑͳΒ$JSDMF$* ✓6CVOUVͰͭ͘ΒΕͨશ෦ೖΓͷ7.্Ͱ ςετΛߦ͏ ✓QIQFOW͕࢖ΘΕ͍ͯͯඞཁʹԠͯ͡όʔ δϣϯΛ੾Γସ͑Δ ✓.Z42-΍3FEJT΋ඞཁʹԠͯ͡࢖͑Δ ✓σϑΥϧτͷڍಈ͕͋ΓɺͦΕΛͦͷ··࢖ ͑͹ྑ͍ͷͰ͋Ε͹ઃఆ͕͋·Γඞཁͳ͔ͬͨ ✓ͳΕͨਓ͔Β͢Δͱͱͯ΋؆୯

Slide 10

Slide 10 text

Α͏ͦ͜$JSDMF$* ✓ಉ༷ͷ7.ϕʔεͷॲཧ΋Ͱ͖Δ͕ਪ঑͞Εͯͳ ͍ ✓ਪ঑͞ΕΔͷ͸%PDLFSΠϝʔδΛ࢖͏΋ͷ ✓%PDLFSͷ஌͕ࣝඞཁͱͳΔͷͰ֮͑Δ͜ͱ͕૿͑ ͨ ✓.Z42-΍3FEJTΛ͔ͭ͏ͳΒ͹ɺͦΕ༻ͷ %PDLFSΠϝʔδΛ࢖͏ඞཁ͕͋Δ ✓Θ͔ͬͯ͠·͑͹ɺԿ΋͔΋ίϯτϩʔϧͰ͖ΔͷͰ ศརͳͷ͕ͩɺ֮͑Δ͜ͱ͕૿͑ͨͷͰͱ͖ͬͭʹ͍͘ ೉͍͠ͱ͍͍ͬͯΔͻͱ͕ଟ͍

Slide 11

Slide 11 text

$JSDMF$*ͷར༻ྉۚ͸ʁ ✓ແྉ࿮͕͋Δͷͬͯ͠·ͨ͠ʁ ✓ίϯςφ ✓ฒྻ࣮ߦͰ͖ͳ͍ ✓෼݄·ͰॲཧՄೳ ✓ຊ֨తʹ࢖͏ͱ͍͍ײ͡ʹ࢖͍੾Δ࣌ؒ ✓ର৅ϦϙδτϦ࣮ߦϢʔβ͕ෳ਺Ͱ΋͍͍ ✓ϓϥΠϕʔτϦϙδτϦͰ΋͍͍ ✓ฒྻ౓ɺ࣮ߦίϯςφ਺ʹԠͯ͡՝ۚ͞ΕΔ ✓ίϯςφ૿΍͢͝ͱʹ݄ ✓·ͩҰൠެ։͞Εͯͳ͍͕ɺैྔ՝ۚϓϥϯ΋௥Ճ͞ΕΔ༧ఆ

Slide 12

Slide 12 text

$JSDMF$*Ͱͷಈ࡞Πϝʔδ ✓%PDLFSΠϝʔδΛऔಘ͠ɺίϯςφΛىಈ ✓ىಈͨ͠ίϯςφ্ʹιʔεΛHJUDMPOF ✓ىಈͨ͠ίϯςφ্ͰDPNQPTFSJOTUBMMΛ࣮ߦ ✓ىಈͨ͠ίϯςφ্ͰQIQDTΛ࢖ͬͯίʔσΟϯά ελΠϧνΣοΫ ✓ىಈͨ͠ίϯςφ্Ͱ1IBOΛ࢖ͬͯ੩తղੳͯ͠จ ๏νΣοΫ ✓ىಈͨ͠ίϯςφ্Ͱ1)16OJUΛ࢖ͬͯ୯ମςετ ✓͜͜·Ͱͷॲཧ͕੒ޭ͔ͨ͠Ͳ͏͔ΛTMBDLʹ௨஌

Slide 13

Slide 13 text

$JSDMF$*ͱͷ࿈ܞํ๏ ✓ઃఆϑΝΠϧ͸ɺϦϙδτϦͷτο ϓʹDJSDMFDJͱ͍͏σΟϨΫτ ϦΛ࡞ΓɺͦͷதʹDPOpHZNM ͱ͍͏ϑΝΠϧΛஔ͘ͱͦΕΛ࢖ͬ ͯ$*͕࣮ߦ͞ΕΔ ✓DPOpHZNMͷॻ͖ํΛ؆୯ʹ આ໌͍͖ͯ͠·͢

Slide 14

Slide 14 text

DJSDMFDJDPOpHZNM version: 2 jobs: build: docker: - image: circleci/php:7.1-apache-browsers - image: circleci/mysql:5.7 steps: - checkout - restore_cache: keys: - composer-{{ arch }}—{{ checksum "composer.lock" }} - run: composer install - save_cache: key: composer-{{ arch }}—{{ checksum "composer.lock" }} paths: - ~/.composer/cache - run: ./vendor/bin/phpcs —standard=PSR2 ./app - run: mkdir ~/phpunit - run: ./vendor/bin/phpunit --log-junit ~/phpunit/junit.xml - store_test_results: path: ~/phpunit - store_artifacts: path: ~/phpunit

Slide 15

Slide 15 text

DJSDMFDJDPOpHZNM ✓ઃఆ͢ΔηΫγϣϯ ✓KPCT ✓ෳ਺ͷδϣϒΛઃఆ͢Δ ✓XPSLqPXT ✓ෳ਺ͷδϣϒΛͲͷΑ͏ʹ࣮ߦ ͢Δ͔Λઃఆ͢Δ

Slide 16

Slide 16 text

DJSDMFDJDPOpHZNM version: 2 jobs: build: docker: - image: circleci/php:7.1-apache-browsers - image: circleci/mysql:5.7 steps: - checkout - restore_cache: keys: - composer-{{ arch }}—{{ checksum "composer.lock" }} - run: composer install - save_cache: key: composer-{{ arch }}—{{ checksum "composer.lock" }} paths: - ~/.composer/cache - run: ./vendor/bin/phpcs —standard=PSR2 ./app - run: mkdir ~/phpunit - run: ./vendor/bin/phpunit --log-junit ~/phpunit/junit.xml - store_test_results: path: ~/phpunit - store_artifacts: path: ~/phpunit

Slide 17

Slide 17 text

KPCT ✓δϣϒΛઃఆ͢Δ δϣϒ͸ෳ਺͋ͬͯ΋ྑ͍  ✓δϣϒ໊ ௨ৗ͸CVJMEͱ͍͏໊લʹ͢Δ  ✓ޙ΄Ͳग़ͯ͘ΔXPSLqPXͰ࢖༻͢Δ ✓FYFDVUPSΛઃఆ ✓EPDLFS ✓NBDIJOF ಉ༷ͷ7.؀ڥ  ✓NBDPT ✓TUFQTͰࡉ͔͍࣮ߦ಺༰Λઃఆ͢Δ

Slide 18

Slide 18 text

DJSDMFDJDPOpHZNM version: 2 jobs: build: docker: - image: circleci/php:7.1-apache-browsers - image: circleci/mysql:5.7 steps: - checkout - restore_cache: keys: - composer-{{ arch }}—{{ checksum "composer.lock" }} - run: composer install - save_cache: key: composer-{{ arch }}—{{ checksum "composer.lock" }} paths: - ~/.composer/cache - run: ./vendor/bin/phpcs —standard=PSR2 ./app - run: mkdir ~/phpunit - run: ./vendor/bin/phpunit --log-junit ~/phpunit/junit.xml - store_test_results: path: ~/phpunit - store_artifacts: path: ~/phpunit

Slide 19

Slide 19 text

TUFQT ✓DIFDLPVU ✓ιʔεΛDIFDLPVU͢Δ ✓SVO ✓ίϚϯυΛ࣮ߦ͢Δ ✓SFTUPSF@DBDIFTBWF@DBDIF ✓DPNQPTFS΍CVOEMFSΛຖճ΍͍ͬͯΔͱ࣌ؒ ͷΉͩͳͷͰɺద౰ͳΩʔΛ࢖ͬͯΩϟογϡ͢Δ ✓TUPSF@UFTU@SFTVMUTTUPSF@BSUJGBDUT ✓ςετ݁ՌΛ$*ͷ݁Ռදࣔʹ൓өͤ͞Δ

Slide 20

Slide 20 text

DJSDMFDJDPOpHZNM version: 2 jobs: build: docker: - image: circleci/php:7.1-apache-browsers - image: circleci/mysql:5.7 steps: - checkout - restore_cache: keys: - composer-{{ arch }}—{{ checksum "composer.lock" }} - run: composer install - save_cache: key: composer-{{ arch }}—{{ checksum "composer.lock" }} paths: - ~/.composer/cache - run: ./vendor/bin/phpcs —standard=PSR2 ./app - run: mkdir ~/phpunit - run: ./vendor/bin/phpunit --log-junit ~/phpunit/junit.xml - store_test_results: path: ~/phpunit - store_artifacts: path: ~/phpunit

Slide 21

Slide 21 text

SVO ✓ίϚϯυΛ࣮ߦ͢Δ΋ͷͩ ͕ɺ࣮ߦը໘Ͱදࣔ͢Δจࣈ ྻΛઃఆͰ͖Δ - run: ./vendor/bin/phpunit --log-junit ~/phpunit/junit.xml - run: name: run tests command: ./vendor/bin/phpunit --log-junit ~/phpunit/junit.xml - run: name: run tests command: | ./vendor/bin/phpunit --log-junit ~/phpunit/junit.xml

Slide 22

Slide 22 text

ෳ਺ͷ%PDLFSΠϝʔδΛ࢖͏ ✓EPDLFSFYFDVUPSͷઃఆͰෳ਺ͷΠϝʔδΛࢦఆ͢Δ ✓ͭ໨ʹࢦఆͨ͠Πϝʔδ͕ϓϥΠϚϦΠϝʔδʹͳΓɺ TUFQTҎ߱ͷίϚϯυ͸ͦͷΠϝʔδʹର࣮ͯ͠ߦ͞ΕΔ ✓ͦͷଞͷίϯςφͷϓϩηεʹ͸ɺ ϙʔτ൪ ߸ ͰΞΫηεͰ͖Δ version: 2 jobs: build: docker: - image: php:7.1-apache - image: circleci/mysql:5.7 environment: MYSQL_ROOT_PASSWORD: root MYSQL_DATABASE: test_app MYSQL_USER: test MYSQL_PASSWORD: test - image: redis:3.2

Slide 23

Slide 23 text

XPSLqPX ✓ෳ਺ͷδϣϒΛͲͷΑ͏ͳґଘؔ ܎ ॱ൪ Ͱ࣮ߦ͢Δ͔ΛఆٛͰ͖Δ ✓ྫ͑͹ɺQIQDTͰΤϥʔ͕ͳ͍৔ ߹ͷΈɺQIQVOJUΛ૸Β͍ͤͨͱ͔ ✓ܾ·ͬͨ࣌ؒʹδϣϒΛ࣮ߦ͢Δ ػೳ΋͋Δ

Slide 24

Slide 24 text

DJSDMFDJDPOpHZNM version: 2 jobs: phpcs: ... test: ... deploy: ... workflows: version: 2 phpcs_test_deploy_workflow: jobs: - phpcs - test: requires: - phpcs - deploy filters: branches: only: - master requires: - test

Slide 25

Slide 25 text

DJSDMFDJDPOpHZNM version: 2 jobs: daily_job: ... workflows: version: 2 cron_workflow: triggers: - schedule: cron: “0 18 * * *” filters: branches: only: - develop jobs: - daily_job

Slide 26

Slide 26 text

$JSDMF$* ✓ઃఆʹؔͯ͠͸ɺ࣮ߦ͍ͨ͠ίϚϯυ ΛSVOͰฒ΂͍͚ͯ͹͍͍͚ͩͳͷͰ ͦΜͳʹ೉͘͠ͳ͍ ✓ϩʔΧϧͰಈ࡞νΣοΫ͢Δ DJSDMFDJίϚϯυ͕४උ͞Ε͍ͯΔ ✓ඍົʹڍಈ͕͓͔͍͠ ✓XPSLqPXʹରԠͯ͠ͳ͍ɾɾɾ

Slide 27

Slide 27 text

$JSDMF$* ✓ಈ࡞Πϝʔδͱઃఆํ๏͕ Θ͔ͬͯ΋؊৺ͷ%PDLFS ͷ͜ͱ͕Θ͔Βͳ͍ͷͰɺͲ ͏ͨ͠Βྑ͍͔Θ͔Βͳ͍ ✓ͱ͍͏͜ͱͰɺ͔͜͜Β͸ %PDLFSೖ໳

Slide 28

Slide 28 text

࣌ؒνΣοΫ ͜͜·Ͱ෼ ͩͱྑ͍ͳɾɾɾ

Slide 29

Slide 29 text

%PDLFSͷ೉қ౓ ✓%PDLFSͷ೉қ౓͸ஈ֊ʹ ෼͔ΕΔͷͰ͸ͳ͍͔ʁ ✓ୈҰஈ֊഑෍͞Ε͍ͯΔΠ ϝʔδΛར༻͢Δ͚ͩ ✓ୈೋஈ֊ࣗ෼ͰΠϝʔδΛ ࡞੒ͯͦ͠ΕΛར༻͢Δ

Slide 30

Slide 30 text

഑෍Πϝʔδ ✓%PDLFS)VCͱ͍͏࡞੒ࡁΈΠϝʔδ Λ഑෍͢Δ৔ॴ͕͋Δ ✓ͦ͜ʹͨ͘͞ΜͷΠϝʔδ͕ஔ͔Ε͍ͯ ΔͷͰͦΕΛར༻͢Δ͚ͩͰ΋͔ͳΓͷ͜ ͱ͕Ͱ͖Δ ✓ײ֮తʹ͸CSFXJOTUBMMͰNZTRM ΛϩʔΧϧʹೖΕΔΈ͍ͨͳؾ෼Ͱ͔ͭ͑ Δ

Slide 31

Slide 31 text

࣮ࡍʹ΍ͬͯΈΔ ✓1)1 BQBDIFΛ %PDLFSͰಈ͔ͯ͠ΈΔ ˞EPDLFSίϚϯυͷΦϓγϣϯ͕͓΅͑ΒΕΜͷΜ ͡Όʔͱ͍͏͝ҙݟʹ͸ಉҙ͠·͢ɻ͍͢͝਺͋Δͷ Ͱɾɾɾ docker container run -it --rm -p 80:80 -v ~/Study/phpkansai/ demo/htdocs:/var/www/html php:7.1-apache

Slide 32

Slide 32 text

഑෍Πϝʔδ ✓ͨͩ͠ɺࣗ෼ͷ༻్ʹ׬શʹ߹க͍ͯ͠Δͱ͸ݶΒͳ͍ ✓ྫ͑͹ɺ1)1ͷΦϑΟγϟϧΠϝʔδʹ͸JOUM֦ு΍ YEFCVH͸ೖͬͯͳ͍ ✓ΦϑΟγϟϧΠϝʔδ͸͋Δఔ౓৴༻Ͱ͖Δ͕ɺ໺ྑΠϝʔ δ͸جຊతʹ৴༻Ͱ͖ͳ͍ ✓͍ͭ࠷ۙɺ%PDLFS)VCͰ഑෍͞Ε͍ͯͨΠϝʔδʹʮ҉ ߸௨՟࠾۷Ϙοτʯ͕ೖ͍ͬͯͨ͜ͱ͕χϡʔεʹͳͬͯͨ ✓IUUQTKQUFDIDSVODIDPN UBJOUFEDSZQUP NJOJOHDPOUBJOFSTQVMMFEGSPNEPDLFSIVC

Slide 33

Slide 33 text

ͳΒ͹ࣗ෼Ͱͭ͘Ζ͏ ✓%PDLFSΠϝʔδΛࣗ෼Ͱͭ͘Ζ͏ͱ ͢ΔͱҎԼͷ஌͕ࣝඞཁ ✓%PDLFSࣗମͷཧղ ✓-JOVYσΟετϦϏϡʔγϣϯͷཧղ ✓ZVNͱ͔BQUͱ͔ ✓-JOVYίϚϯυͷཧղ ✓֤ιϑτ΢ΣΞͷNBLFํ๏ͷཧղ

Slide 34

Slide 34 text

ٸʹϋʔυϧ͕͕͋Δ ✓ઌఔ΋͍͕ͬͨɺ%PDLFS)VCͰ͸ΦϑΟγϟϧΠ ϝʔδ͕഑෍͞Ε͍ͯΔ ✓͋ΘͤͯΠϝʔδΛ࡞੒͢Δ΋ͱͱͳΔ%PDLFSpMF ͕ެ։͞Ε͍ͯΔ΋ͷ͕͋Δ ✓ެ։͞Ε͍ͯΔ%PDLFSpMFΛΈΔ͚ͩͰ΋͔ͳΓ ͷ஌͕ࣝಘΒΕΔ ✓ͳͷͰ࠷ॳ͸ΦϑΟγϟϧΠϝʔδΛݩʹɺখมߋͨ͠ ΠϝʔδΛ࡞Δͱ͜Ζ͔Β࢝ΊΔͷ͕͍͍ ✓1)1ͷΦϑΟγϟϧΠϝʔδʹYEFCVH֦ுΛ͍ Ε͚ͨͩͷΠϝʔδΛ࡞Δͱ͔

Slide 35

Slide 35 text

ࣗ෼ͰΠϝʔδΛ࡞ΔϝϦοτ ✓ྫ͑͹ɺ$JSDMS$*Ͱɺ1)1ͷΦϑΟ γϟϧΠϝʔδΛͦͷ··࢖͏ͱɺຖճ$* Λճͨ͢ͼʹJOUM֦ுΛೖΕΔॲཧΛ૸ ΒͤΔඞཁ͕͋Δ ✓$*ͷ͕࣌ؒ৳ͼΔ ✓༧ΊJOUM֦ு͕ೖͬͨΠϝʔδΛ࡞ͬͯ ͓͚͹ɺͦͷ͚࣌ؒͩ$*ͷ͕࣌ؒ୹ॖͰ ͖Δ

Slide 36

Slide 36 text

%PDLFSʹ͍ͭͯ͸ ✓ࠓճͷηογϣϯͰΑ͘Θ͔ΒΜ͔ͬͨ ํ͸ɺͥͻͱ΋͘͞ΒΠϯλʔωοτॴଐ ͷલဠ͞ΜͷࢿྉΛࢀর͍ͯͨͩ͘͠ͷ͕ ͍͍͔ͱࢥ͍·͢ ✓લဠ͞Μͷࢿྉ͸%PDLFSʹֶ͍ͭͯͿ ͷʹ࠷దͩͱࢥ͍·͢ ࢲ΋େม͓ੈ࿩ʹ ͳ͓ͬͯΓ·͢  ✓IUUQTXXXTMJEFTIBSFOFU[FNCVUTV

Slide 37

Slide 37 text

ϚϯΨͰΘ͔Δ%PDLFS ✓ື઒͍͋͞Μ͕ϚϯΨͰΘ͔Δ %PDLFSͱ͍͏࡭ࢠΛॻ͔Εͯ·͢ ✓͜Ε͸ଓ͖෺Ͱࠓޙ΋ଓ͘Έ͍ͨ ͳͷͰ͜Ε͔Β࢝ΊΑ͏ͱ͍͏ํʹ ͸ͪΐ͏Ͳ͍͍͔΋ʂ ✓IUUQTOPUFNV MMNJOBUPMMOOGECFGGD

Slide 38

Slide 38 text

ͯ͞ɺ%PDLFSͱ͸ ✓%PDLFSࣾ چEPU$MPVE Λத৺ʹΦʔ ϓϯιʔεͱͯ͠։ൃ͞Ε͍ͯΔίϯςφ ܕԾ૝Խٕज़ ✓ͷय़ʹόʔδϣϯͷ෇͚ํ͕มߋ ͞Εͯɺ%PDLFS$&ͱ͍ͬͨܗ ʹͳͬͨ ✓ͦΕ·Ͱ͸ɺ%PDLFSΈ͍ͨͳ ײͩͬͨ͡

Slide 39

Slide 39 text

7.ͱͷҧ͍ ✓7.͸࣮ࡍͷϋʔυ΢ΣΞ౳ ΛΤϛϡϨʔγϣϯ͠ɺͦͷ্ Ͱ࣮ࡍͷ04ΛՔಇͤ͞Δ ✓ίϯςφܕԾ૝Խٕज़Ͱ͸ɺ طʹಈ͍͍ͯΔ04ͷϦιʔεΛ ࢖ͬͯɺ৽ͨͳ؀ڥΛىಈ͢Δ

Slide 40

Slide 40 text

7.ͱͷҧ͍ )8 04 )ZQFSWJTPS )8 )8 04 04 "QBDIF 3FEJT 1)1 "QQT )8 04 .Z42- 7. )8 04 %PDLFS&OHJOF "QBDIF 3FEJT 1)1 "QQT .Z42- %PDLFS

Slide 41

Slide 41 text

Կ͕خ͍͠ͷʁ ✓ىಈ͕࣌ؒ୹͍ ✓Ծ૝)8͓Αͼ04ͷى ಈ෦෼͕ͳ͍ ✓ফඅϦιʔε͕গͳ͍

Slide 42

Slide 42 text

%PDLFSͷಈ࡞ Registry image container docker image pull docker image push docker container run docker container commit Dockerfile docker image build docker container exec

Slide 43

Slide 43 text

3FHJTUSZͱ͸ ✓%PDLFS)VCͷΑ͏ʹɺ%PDLFSΠϝʔδΛ഑෍͢Δ΋ ͷΛ3FHJTUSZͱ͍͏ ✓%PDLFS)VC͸%PDLFS͕ࣾӡӦ͍ͯ͠Δ3FHJTUSZ ✓"84ʹ͸&$3ɺ(PPHMF$MPVEʹ͸($3ͱ͍͏ 3FHJTUSZ͕͋Δ ✓%PDLFS)VCͰ഑෍͞ΕͯΔ΋ͷ ✓$FOU04VCVOUV౳ͷ04ͷΠϝʔδ ✓1)13VCZ౳ͷݴޠؚ͕·ΕΔΠϝʔδ ✓&MBTUJD4FBSDI5FOTPS'MPX౳ͷιϑτ΢ΣΞؚ͕ ·ΕΔΠϝʔδ

Slide 44

Slide 44 text

࣮ࡍͲ͏࢖͏ͷ͔ʁ ✓%PDLFS)VC͔Β%PDLFSΠϝʔδΛऔಘ͢Δ ✓औಘͨ͠ΠϝʔδΛ࣮ߦ͢Δͱ࣮ߦ؀ڥίϯςφ ͱͯ͠ಈ࡞͢Δ ✓7.ͱҧͬͯɺ࣮ߦΛऴྃ͢Δͱίϯςφʹର͢Δ มߋ͸ഁغ͞ΕΔ ✓࣮ߦ͢Δͨͼʹಉ͡ঢ়ଶ͔Βಈ࡞͢Δ ✓ͦΕͰ͸ࠔΔ৔߹ ·͊ɺ΄ͱΜͲ͕ͩ ɺϩʔΧ ϧͷϑΝΠϧγεςϜΛϚ΢ϯτͯͦ͜͠ʹσʔλ ΛӬଓԽ͢Δ

Slide 45

Slide 45 text

Πϝʔδͱίϯςφ ✓࠷ॳΑͬͪ͘͝ΌʹͳΔ ✓%PDLFSΛ֮͑Δࡍͷ࠷ॳͷϋʔ υϧ ✓࣮ࡍʹಈ͔ͯ͠ײ֮Λ֮͑Δ ✓1)1ͱ1)1ͷΠϝʔδ Λऔಘͯ͠ίϯςφΛಈ͔ͯ͠ΈΔ

Slide 46

Slide 46 text

ࣗ෼ͰJNBHFΛCVJME ✓%PDLFS)VCͰ഑෍͞Ε͍ͯΔΠϝʔδ ΛݩʹಠࣗʹΧελϚΠζͨ͠ΠϝʔδΛ࡞੒ ͢Δ ✓%PDLFS)VCͰ഑෍͞Ε͍ͯΔ1)1ͷΠ ϝʔδ͸൚༻తͳ΋ͷͰɺྫ͑͹JOUM֦ு͸ ೖ͍ͬͯͳ͍ͷͰɺ࠷ۙͷϑϨʔϜϫʔΫΛಈ ͔ͦ͏ͱ͢ΔͱɺಠࣗCVJME͢Δඞཁ͕͋Δ ✓ͦ͏͍ͬͨ৔߹ʹ࢖͏ͷ͕%PDLFSpMF

Slide 47

Slide 47 text

Ξϯνύλʔϯ ✓طʹ7BHSBOU BOTJCMFͷ؀ڥ͕͋Δ৔߹ʹɺ %PDLFSΠϝʔδͷ࡞੒ʹ΋BOTJCMFͷϓϨΠϒοΫ Λ࢖͑ͳ͍͔ࢼ͢ ✓͸·ΔͷͰ΍Ίͨ΄͏͕͍͍ ✓গͳ͘ͱ΋ࢲ͸͸·ͬͨ ✓Ͳͬͪʹ໰୊͕͋ͬͯಈ͔ͳ͍ͷ͔Θ͔Βͳ͘ͳΔ ✓ૉ௚ʹ%PDLFSpMF͔Β࡞Δํ๏Λ࠷ॳʹशಘ͠ ·͠ΐ͏ ✓BOTJCMFͱͷ૊Έ߹ΘͤΛࢼ͢ͷ͸ͦͷޙͰ΋͍͍

Slide 48

Slide 48 text

%PDLFSpMF ✓'30.36/"%%$01:౳ͷগ਺ͷ ίϚϯυΛ࢖ͬͯɺΠϝʔδΛ࡞੒͢Δखॱ Λࣔ͢ϑΝΠϧ ✓ඞཁͳ஌ࣝͱͯ͠͸TIεΫϦϓτΛॻ͘ ײ͡ ✓࣮ߦ͍ͯ͘͠ίϚϯυΛॱ൪ʹهड़ͯ͠ ͍͘ײ͡ ✓͜ͷϑΝΠϧΛݩʹΠϝʔδΛCVJME͢Δ

Slide 49

Slide 49 text

%PDLFSpMFͱCVJMEํ๏ FROM php:7.2-cli RUN pecl install xdebug-2.6.0 \ && docker-php-ext-enable xdebug docker build -t kunit/php:7.2-cli . docker run -it --rm kunit/php:7.2-cli php -v docker run -it --rm php:7.2-cli php -v

Slide 50

Slide 50 text

͜Θ͘ͳ͍Αʂ ✓$JSDMF$*΋%PDLFS΋ ͳΕΔͱͱͯ΋ศར ✓ಛʹ%PDLFSؔ࿈ͷٕज़ ͸ࠓޙͲΜͲΜ஫໨౓͸্͕ͬ ͍ͯ͘ͱࢥ͏ͷͰ͜ΕΛػձ ʹ֮͑Δͷ͕͍͍ͱࢥ͏

Slide 51

Slide 51 text

͝ਗ਼ௌ ͋Γ͕ͱ͏ ͍͟͝·ͨ͠