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
噂のマルチステージングビルドを試してみました
Search
chiroruxx
August 28, 2019
Technology
1
300
噂のマルチステージングビルドを試してみました
2019/08/28 PHP勉強会で発表した資料です。
chiroruxx
August 28, 2019
Tweet
Share
More Decks by chiroruxx
See All by chiroruxx
Goを使ってTDDを体験しよう!
chiroruxx
1
490
今ならできる!PhpStormプラグイン開発
chiroruxx
0
54
Go Connectへの想い
chiroruxx
0
190
eBPF with PHPをさわる
chiroruxx
0
130
sl完全に理解したつもり
chiroruxx
0
120
命名をリントする
chiroruxx
1
850
良い命名かを調べるリンターを作った + α
chiroruxx
0
130
GoLandを布教する会
chiroruxx
0
44
PHPはいつから死んでいるかの調査
chiroruxx
3
680
Other Decks in Technology
See All in Technology
Claude Codeを駆使した初めてのiOSアプリ開発 ~ゼロから3週間でグローバルハッカソンで入賞するまで~
oikon48
10
4.7k
Sansan Engineering Unit 紹介資料
sansan33
PRO
1
3k
OAuthからOIDCへ ― 認可の仕組みが認証に拡張されるまで
yamatai1212
0
130
速習AGENTS.md:5分で精度を上げる "3ブロック" テンプレ
ismk
6
1.7k
名刺メーカーDevグループ 紹介資料
sansan33
PRO
0
930
コンテキストエンジニアリング入門〜AI Coding Agent作りで学ぶ文脈設計〜
kworkdev
PRO
3
1.6k
Adminaで実現するISMS/SOC2運用の効率化 〜 アカウント管理編 〜
shonansurvivors
4
450
技育祭2025【秋】 企業ピッチ/登壇資料(高橋 悟生)
hacobu
PRO
0
110
データ戦略部門 紹介資料
sansan33
PRO
1
3.8k
「れきちず」のこれまでとこれから - 誰にでもわかりやすい歴史地図を目指して / FOSS4G 2025 Japan
hjmkth
1
310
それでも私が品質保証プロセスを作り続ける理由 #テストラジオ / Why I still continue to create QA process
pineapplecandy
0
120
Findy Team+ QAチーム これからのチャレンジ!
findy_eventslides
0
410
Featured
See All Featured
Visualization
eitanlees
149
16k
Large-scale JavaScript Application Architecture
addyosmani
514
110k
Making Projects Easy
brettharned
120
6.4k
No one is an island. Learnings from fostering a developers community.
thoeni
21
3.5k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
48
9.7k
Building an army of robots
kneath
306
46k
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
35
3.2k
Product Roadmaps are Hard
iamctodd
PRO
54
11k
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
127
53k
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
37
2.6k
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
34
2.3k
The Cost Of JavaScript in 2023
addyosmani
55
9k
Transcript
ᷚͷ ϚϧνεςʔδϯάϏϧυΛ ࢼͯ͠Έ·ͨ͠ 1)1ษڧձ!౦ژ લాਓ
ࣗݾհ w લాਓ w !DIJSPSVYYYY w หޢ࢜υοτίϜ w
࠷ॳʹ w %PDLFSͷϚϧνεςʔδϯάϏϧυͷΛ͠·͢ w ͬͯΔਓ৽͍͠ใͳ͍ͱࢥ͍·͢
ͱ͋ΔҊ݅ʹͯ w ͱ͋Δ৽ن։ൃͷҊ݅Λͬͨͱ͖ͷ w ͭͷཁ݅ ֎෦ύοέʔδΛ༻͢Δ w ύοέʔδ[JQͰ͞ΕΔ
ίϯςφӡ༻Λ͢Δ Ͳ͏ͬͯιʔεཧɾڥߏங͠Α͏͔ʁ
ߟ͑ͨํ๏ w [JQϑΝΠϧΛͦͷ··ίϛοτ͓ͯ͘͠ w ϥΠϒϥϦͷόʔδϣϯ্͕͕ͬͨΒߋ৽͍ͯ͘͠ w %PDLFSGJMFͰ[JQΛղౚ͠ɺஔ͍ͯ͘͠
%PDLFSGJMF FROM alpine:latest RUN apk add --no-cache --update \ nginx
\ zip COPY ./package.zip /var/www RUN cd /var/www && \ unzip package.zip && \ chown -R nginx:nginx package && \ rm package.zip RUN mkdir -p /run/nginx EXPOSE 80 CMD nginx -g "daemon off;"
%PDLFSGJMF FROM alpine:latest RUN apk add --no-cache --update \ nginx
\ zip COPY ./package.zip /var/www RUN cd /var/www && \ unzip package.zip && \ chown -R nginx:nginx package && \ rm package.zip RUN mkdir -p /run/nginx EXPOSE 80 CMD nginx -g "daemon off;"
ඍົͳ w ӡ༻্Ͱ༻͠ͳ͍[JQΛΠϯετʔϧ͍ͯ͠Δ w VO[JQ·ΘΓͷॲཧ͕ͯ͘ݟͮΒ͍ w ιʔεΛஔͯ͠αʔόΛىಈ͍͚ͨͩ͠ͳͷʹ͍
ϚϧνεςʔδϯάϏϧυ✨
ϚϧνεςʔδϯάϏϧυ w Ұ࣌తͳ%PDLFSΠϝʔδΛ࡞ͯ͠ɺ%PDLFSGJMFͰ༻ Ͱ͖Δ w ؔ৺ࣄͷॏෳͷআʹޮՌత w Ωϟογϡޮྑ͍Β͍͠ w ʮ%PDLFSGJMFΛॻͨ͘ΊͷϕετϓϥΫςΟεʯΛࢀߟʹ͠
ͯͶ
%PDLFSGJMF શମ FROM alpine:latest as package RUN apk add --no-cache
--update \ zip COPY ./package.zip /opt RUN cd /opt && \ unzip package.zip FROM alpine:latest RUN apk add --no-cache --update \ nginx COPY --from=package --chown=nginx:nginx /opt/package /var/www/package RUN mkdir -p /run/nginx EXPOSE 80 CMD nginx -g "daemon off;"
%PDLFSGJMF શମ FROM alpine:latest as package RUN apk add --no-cache
--update \ zip COPY ./package.zip /opt RUN cd /opt && \ unzip package.zip FROM alpine:latest RUN apk add --no-cache --update \ nginx COPY --from=package --chown=nginx:nginx /opt/package /var/www/package RUN mkdir -p /run/nginx EXPOSE 80 CMD nginx -g "daemon off;" Ұ࣌తͳΠϝʔδ ຊମ
%PDLFSGJMF QBDLBHF FROM alpine:latest as package RUN apk add --no-cache
--update \ zip COPY ./package.zip /opt RUN cd /opt && \ unzip package.zip
%PDLFSGJMF CPEZ FROM alpine:latest RUN apk add --no-cache --update \
nginx COPY --from=package --chown=nginx:nginx \ /opt/package /var/www/package RUN mkdir -p /run/nginx EXPOSE 80 CMD nginx -g "daemon off;"
·ͱΊ w ಡΈ͘͢ͳͬͨ w ʮύοέʔδͷཧ VO[JQ ʯͱʮαʔόͷઃఆʯΛ ͚ͯॻ͚ΔΑ͏ʹͳͬͨ w %PDLFS3FHJTUPSZ͕͑Εɺύοέʔδཧ
ผΠϝʔδͰཧͯ͠0, FROM /url/to/registry/ as package FROM alpine:latest RUN apk add …
͓·͚ w $PNQPTFSͷΠϯετʔϧɺωοτͰௐΔͱΈΜͳDVSM͠ ͯؤுͬͯ·͕͢ɾɾɾ RUN curl -sS https://getcomposer.org/installer | php
RUN mv composer.phar /usr/local/bin/composer
͓·͚ w ࠓճͷ༰Λ͑ɺ؆୯ʹಋೖόʔδϣϯཧͰ͖·͢ Ͷ FROM composer:{version} as composer FROM alpine:latest
… COPY --from=composer /usr/bin/composer /usr/bin/composer …