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
3.2k
nginx-build
Seamless nginx builder in Go.
Tatsuhiko Kubo
November 30, 2014
Tweet
Share
More Decks by Tatsuhiko Kubo
See All by Tatsuhiko Kubo
Handling a tremendous amount of images with Fastly / Yamagoya Traverse 2020
cubicdaiya
2
1.4k
System Integration with Fastly
cubicdaiya
0
570
実例で学ぶ画像最適化集 with ImageFlux / ImageFlux meetup#2
cubicdaiya
4
19k
Software Engineer, Infrastructure
cubicdaiya
4
3.1k
High Performance Count Up!
cubicdaiya
0
320
ImageFluxを利用した画像配信の最適化 / ImageFlux meetup 201801
cubicdaiya
0
2.8k
Building high performance push notification server in Go
cubicdaiya
5
3.2k
メルカリのデータ分析基盤 / mercari data analysis infrastructure
cubicdaiya
11
11k
On-call Engineering
cubicdaiya
8
6.5k
Other Decks in Programming
See All in Programming
レガシーシステムにどう立ち向かうか 複雑さと理想と現実/vs-legacy
suzukihoge
14
2.2k
初めてDefinitelyTypedにPRを出した話
syumai
0
420
Macとオーディオ再生 2024/11/02
yusukeito
0
370
as(型アサーション)を書く前にできること
marokanatani
10
2.7k
cmp.Or に感動した
otakakot
3
200
CSC509 Lecture 09
javiergs
PRO
0
140
3 Effective Rules for Using Signals in Angular
manfredsteyer
PRO
1
100
ヤプリ新卒SREの オンボーディング
masaki12
0
130
ペアーズにおけるAmazon Bedrockを⽤いた障害対応⽀援 ⽣成AIツールの導⼊事例 @ 20241115配信AWSウェビナー登壇
fukubaka0825
6
2k
Click-free releases & the making of a CLI app
oheyadam
2
120
Generative AI Use Cases JP (略称:GenU)奮闘記
hideg
1
300
CSC509 Lecture 12
javiergs
PRO
0
160
Featured
See All Featured
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
109
49k
No one is an island. Learnings from fostering a developers community.
thoeni
19
3k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
665
120k
Designing for humans not robots
tammielis
250
25k
Building Applications with DynamoDB
mza
90
6.1k
Code Review Best Practice
trishagee
64
17k
VelocityConf: Rendering Performance Case Studies
addyosmani
325
24k
Being A Developer After 40
akosma
87
590k
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
PRO
10
720
Ruby is Unlike a Banana
tanoku
97
11k
Git: the NoSQL Database
bkeepers
PRO
427
64k
Building Adaptive Systems
keathley
38
2.3k
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