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
nginx-build
Search
Tatsuhiko Kubo
November 30, 2014
Programming
3.5k
3
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
nginx-build
Seamless nginx builder in Go.
Tatsuhiko Kubo
November 30, 2014
More Decks by Tatsuhiko Kubo
See All by Tatsuhiko Kubo
Mackerel in さくらのクラウド
cubicdaiya
1
1k
Handling a tremendous amount of images with Fastly / Yamagoya Traverse 2020
cubicdaiya
2
1.6k
System Integration with Fastly
cubicdaiya
0
680
実例で学ぶ画像最適化集 with ImageFlux / ImageFlux meetup#2
cubicdaiya
4
20k
Software Engineer, Infrastructure
cubicdaiya
4
3.3k
High Performance Count Up!
cubicdaiya
0
430
ImageFluxを利用した画像配信の最適化 / ImageFlux meetup 201801
cubicdaiya
0
3.1k
Building high performance push notification server in Go
cubicdaiya
5
3.4k
メルカリのデータ分析基盤 / mercari data analysis infrastructure
cubicdaiya
11
12k
Other Decks in Programming
See All in Programming
PHPで使える日時の表現と、その知り方 #frontend_phpcon_do
o0h
PRO
0
290
エンジニアにデザインハーネスを 〜デザインプロセスを規定するためのハーネス〜 / Design harness from an engineer's perspective
rkaga
2
620
LLMによるContent Moderationの本番運用の裏側と品質担保への挑戦
suikabar
3
820
AIを活用したE2Eテスト実装効率化のあゆみ / ebisu-mobile-14-kotetu
kotetuco
0
160
エージェンティックRAGにAWSで入門しよう!
har1101
9
1.9k
自作OSでスライド発表する
uyuki234
1
3.6k
「正の参照」と 「負の導出」で組む ハーネスエンジニアリング
cottpan
1
110
OS アップデート対応の取り組み方がもっと共有されてほしい
andpad
0
110
Javaの型とAI時代に型が大事な理由 / java types and type in AI era
kishida
2
170
どこまでゆるくて許されるのか
tk3fftk
0
300
代数的データ型って何が嬉しいの? #frontend_phpcon_do
kajitack
9
3.9k
任せる範囲はこう広がった / How the Scope of AI Delegation Has Expanded
nrslib
1
230
Featured
See All Featured
Groundhog Day: Seeking Process in Gaming for Health
codingconduct
0
240
Agile Leadership in an Agile Organization
kimpetersen
PRO
0
180
Faster Mobile Websites
deanohume
310
32k
Winning Ecommerce Organic Search in an AI Era - #searchnstuff2025
aleyda
1
2.1k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
47
8.2k
Reflections from 52 weeks, 52 projects
jeffersonlam
356
21k
Facilitating Awesome Meetings
lara
57
7k
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
37
6.5k
Code Reviewing Like a Champion
maltzj
528
40k
Mobile First: as difficult as doing things right
swwweet
225
10k
JAMstack: Web Apps at Ludicrous Speed - All Things Open 2022
reverentgeek
1
490
Done Done
chrislema
186
16k
Transcript
nginx-build ʙseamless nginx builderʙ Tatsuhiko Kubo@cubicdaiya GoCon autumn@2014/11/30
Self Introduction w 5BUTVIJLP,VCPDVCJDEBJZB!.FSDBSJ *OD w 4PGUXBSF&OHJOFFSJO*OGSBTUSVDUVSF &OHJOFFSJOH w 044$POUSJCVUPS
JODMVEFTTNBMMDPOUSJCVUJPOT w NSVCZ OHJOY OHY@MVB OHY@NSVCZ IP FUD w IUUQDDDJTKQ
nginx-build
nginx-build w 4FBNMFTTOHJOYCVJMEFSJO(P w 4JOHMFCJOBSZEPFTFWFSZUIJOHGPSCVJMEJOHOHJOY w %PXOMPBEJOHTPVSDFT w &NCFEEJOHFYUFSOBMMJCSBSJFT 1$3&
;-*# 0QFO44- w &NCFEEJOHSEQBSUZNPEVMFT w IUUQTHJUIVCDPNDVCJDEBJZBOHJOYCVJME
Background w *`NSEQBSUZNPEVMFEFWFMPQFSGPSOHJOY w *VTFEUPPQFSBUFNBOZOHJOYTFSWFST w .BOZPQQPSUVOJUJFTGPSCVJMEJOHOHJOY w "MJUUMFUJSFE w
"VUPNBUJ[FUIFCVJMEJOHPGOHJOY
Tasks for building nginx
Tasks for building nginx XHFUIUUQOHJOYPSHEPXOMPBEOHJOYUBSH[ UBS[YWGOHJOYUBSH[ DEOHJOY DPOpHVSF NBLF TVEPNBLFJOTUBMM
In acutual…
Download many files w 4PVSDFDPEFPGOHJOY w &YUFSOBMMJCSBSJFT w 1$3& ;-*#
0QFO44- w SEQBSUZNPEVMFT w FDIP IFBEFST@NPSF MVB FUD
Add many configure options DPOpHVSF= TCJOQBUIVTSTCJOOHJOY= NBOZPQUJPOT ʜ XJUIIUUQ@TTM@NPEVMF=
XJUIIUUQ@TQEZ@NPEVMF= NBOZPQUJPOT ʜ XJUIQDSFQDSF= XJUI[MJC[MJC= XJUIPQFOTTMPQFOTTMK= BEENPEVMF= NBOZPQUJPOT ʜ
Continuous tasks w .BJOUBJOBODFGPSCVJMETDSJQU w 7FSTJPODPOUSPM w OHJOYDPSF w FYUFSOBMMJCSBSJFT
w SEQBSUZNPEVMFT
nginx-build 4JOHMFCJOBSZEPFTFWFSZUIJOHGPSCVJMEJOHOHJOY
Install nginx-build HPHFUVHJUIVCDPNDVCJDEBJZBOHJOYCVJME #JOBSZpMFTBSFIFSF ˣ IUUQTHJUIVCDPNDVCJDEBJZBOHJOYCVJMESFMFBTFT
Build nginx with nginx-build NLEJSXPSL OHJOYCVJMEEXPSL nginx-build: 0.0.6 Compiler: gc
go1.3.3 2014/11/29 23:23:56 [warn]configure option is empty. 2014/11/29 23:23:56 Download nginx-1.7.7….. 2014/11/29 23:23:59 Extract nginx-1.7.7.tar.gz….. 2014/11/29 23:23:59 Generate configure script for nginx-1.7.7….. 2014/11/29 23:23:59 Configure nginx-1.7.7….. 2014/11/29 23:24:04 Build nginx-1.7.7….. 2014/11/29 23:24:13 Complete building nginx! nginx version: nginx/1.7.7 built by gcc 4.8.1 (Ubuntu/Linaro 4.8.1-10ubuntu9) configure arguments: 2014/11/29 23:24:13 Enter the following command for install nginx. $ cd work/1.7.7/nginx-1.7.7 $ sudo make install
Build nginx embedded libraries NLEJSXPSL OHJOYCVJMEEXPSLQDSF[MJCPQFOTTM Compiler: gc go1.3.3 2014/11/29
23:25:55 [warn]configure option is empty. 2014/11/29 23:25:55 Download pcre-8.36….. 2014/11/29 23:25:55 Download zlib-1.2.8….. 2014/11/29 23:25:55 Download openssl-1.0.1j….. 2014/11/29 23:25:55 Download nginx-1.7.7….. 2014/11/29 23:25:56 Extract zlib-1.2.8.tar.gz….. 2014/11/29 23:26:00 Extract nginx-1.7.7.tar.gz….. 2014/11/29 23:26:00 Extract pcre-8.36.tar.gz….. 2014/11/29 23:26:02 Extract openssl-1.0.1j.tar.gz….. 2014/11/29 23:26:02 Generate configure script for nginx-1.7.7….. 2014/11/29 23:26:02 Configure nginx-1.7.7….. 2014/11/29 23:26:06 Build nginx-1.7.7….. 2014/11/29 23:28:46 Complete building nginx! nginx version: nginx/1.7.7 built by gcc 4.8.1 (Ubuntu/Linaro 4.8.1-10ubuntu9) TLS SNI support enabled configure arguments: --with-pcre=../pcre-8.36 --with-openssl=../openssl-1.0.1j --with-zlib=../zlib-1.2.8 — with-http_ssl_module 2014/11/29 23:28:46 Enter the following command for install nginx. $ cd work/1.7.7/nginx-1.7.7 $ sudo make install
Prepare configure.sh CJOTI DPOpHVSFa TCJOQBUIVTSTCJOOHJOYa DPOGQBUIFUDOHJOYOHJOYDPOGa
Build nginx with configure.sh NLEJSXPSL OHJOYCVJMEEXPSLDDPOpHVSFTI nginx-build: 0.0.6 Compiler: gc
go1.3.3 2014/11/29 23:30:41 Download nginx-1.7.7….. 2014/11/29 23:30:45 Extract nginx-1.7.7.tar.gz….. 2014/11/29 23:30:45 Generate configure script for nginx-1.7.7….. 2014/11/29 23:30:45 Configure nginx-1.7.7….. 2014/11/29 23:30:48 Build nginx-1.7.7….. 2014/11/29 23:30:56 Complete building nginx! nginx version: nginx/1.7.7 built by gcc 4.8.1 (Ubuntu/Linaro 4.8.1-10ubuntu9) configure arguments: --sbin-path=/usr/sbin/nginx —conf-path=/etc/nginx/nginx.conf 2014/11/29 23:30:56 Enter the following command for install nginx. $ cd work/1.7.7/nginx-1.7.7 $ sudo make install
Prepare modules3rd.ini <FDIPOHJOYNPEVMF> GPSNHJU VSMIUUQTHJUIVCDPNPQFOSFTUZFDIPOHJOYNPEVMFHJU SFWW <IFBEFSTNPSFOHJOYNPEVMF> GPSNHJU VSMIUUQTHJUIVCDPNPQFOSFTUZIFBEFSTNPSFOHJOYNPEVMFHJU
SFWW <OHY@EFWFM@LJU> GPSNHJU VSMIUUQTHJUIVCDPNTJNQMOHY@EFWFM@LJUHJU SFWW <MVBOHJOYNPEVMF> GPSNHJU VSMIUUQTHJUIVCDPNPQFOSFTUZMVBOHJOYNPEVMFHJU SFGW
Build nginx with modules3rd.ini NLEJSXPSL OHJOYCVJMEEXPSLNNPEVMFTSEJOJ nginx-build: 0.0.6 Compiler: gc
go1.3.3 2014/11/29 23:36:03 [warn]configure option is empty. 2014/11/29 23:36:03 Download nginx-1.7.7….. 2014/11/29 23:36:03 Download headers-more-nginx-module-v0.25….. 2014/11/29 23:36:03 Download echo-nginx-module-v0.54….. 2014/11/29 23:36:03 Download ngx_devel_kit-v0.2.19….. 2014/11/29 23:36:03 Download lua-nginx-module….. 2014/11/29 23:36:07 Extract nginx-1.7.7.tar.gz….. 2014/11/29 23:36:33 Generate configure script for nginx-1.7.7….. 2014/11/29 23:36:33 Configure nginx-1.7.7….. 2014/11/29 23:36:37 Build nginx-1.7.7….. 2014/11/29 23:36:49 Complete building nginx! nginx version: nginx/1.7.7 built by gcc 4.8.1 (Ubuntu/Linaro 4.8.1-10ubuntu9) configure arguments: --add-module=../echo-nginx-module --add-module=../headers-more-nginx-module --add- module=../ngx_devel_kit —add-module=../lua-nginx-module 2014/11/29 23:36:49 Enter the following command for install nginx. $ cd work/1.7.7/nginx-1.7.7 $ sudo make install
Why nginx-build is written in Goʁ w (PJTNZGBWPSJUFMBOHVBHF w *VTFEUPCFSFTQPOTJCMFGPSIFBWJMZMPBEFE
35#FOHJOFJO(P w NZXPSLJOHMBOHVBHFGPS*46$0/pSTUSPVOE w &BTZUPXSJUFQBSBMMFMEPXOMPBEQSPDFTTJOH w 4JNQMJDJUZQSPEVDFECZTJOHMFCJOBSZ w (PJTTVJUBCMFGPS$-*UPPM
Summary w OHJOYCVJMETJNQMJpFT w CVJMEQSPDFTTGPSOHJOY w NBJOUFOBODFPGCVJMETDSJQUGPSOHJOY w (PJTTVJUBCMFGPS$-*UPPM w
4JOHMFCJOBSZJTHPPE
Thanks! IUUQTHJUIVCDPNDVCJDEBJZBOHJOYCVJME