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.3k
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.5k
System Integration with Fastly
cubicdaiya
0
630
実例で学ぶ画像最適化集 with ImageFlux / ImageFlux meetup#2
cubicdaiya
4
19k
Software Engineer, Infrastructure
cubicdaiya
4
3.2k
High Performance Count Up!
cubicdaiya
0
370
ImageFluxを利用した画像配信の最適化 / ImageFlux meetup 201801
cubicdaiya
0
3k
Building high performance push notification server in Go
cubicdaiya
5
3.3k
メルカリのデータ分析基盤 / mercari data analysis infrastructure
cubicdaiya
11
12k
On-call Engineering
cubicdaiya
8
6.7k
Other Decks in Programming
See All in Programming
SwiftでMCPサーバーを作ろう!
giginet
PRO
2
190
効率的な開発手段として VRTを活用する
ishkawa
1
180
新メンバーも今日から大活躍!SREが支えるスケールし続ける組織のオンボーディング
honmarkhunt
5
9.3k
商品比較サービス「マイベスト」における パーソナライズレコメンドの第一歩
ucchiii43
0
200
バイブスあるコーディングで ~PHP~ 便利ツールをつくるプラクティス
uzulla
1
260
CDK引数設計道場100本ノック
badmintoncryer
2
560
中級グラフィックス入門~効率的なメッシュレット描画~
projectasura
2
1.3k
Advanced Micro Frontends: Multi Version/ Framework Scenarios @WAD 2025, Berlin
manfredsteyer
PRO
0
440
テスターからテストエンジニアへ ~新米テストエンジニアが歩んだ9ヶ月振り返り~
non0113
2
240
Understanding Kotlin Multiplatform
l2hyunwoo
0
110
MDN Web Docs に日本語翻訳でコントリビュートしたくなる
ohmori_yusuke
1
130
「App Intent」よくわからんけどすごい!
rinngo0302
1
120
Featured
See All Featured
Fireside Chat
paigeccino
37
3.5k
The MySQL Ecosystem @ GitHub 2015
samlambert
251
13k
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
29
2.8k
Code Reviewing Like a Champion
maltzj
524
40k
jQuery: Nuts, Bolts and Bling
dougneiner
63
7.8k
Building an army of robots
kneath
306
45k
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
8
710
Imperfection Machines: The Place of Print at Facebook
scottboms
267
13k
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
15
1.6k
Dealing with People You Can't Stand - Big Design 2015
cassininazir
367
26k
RailsConf 2023
tenderlove
30
1.2k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
331
22k
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