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
600
実例で学ぶ画像最適化集 with ImageFlux / ImageFlux meetup#2
cubicdaiya
4
19k
Software Engineer, Infrastructure
cubicdaiya
4
3.1k
High Performance Count Up!
cubicdaiya
0
350
ImageFluxを利用した画像配信の最適化 / ImageFlux meetup 201801
cubicdaiya
0
2.9k
Building high performance push notification server in Go
cubicdaiya
5
3.2k
メルカリのデータ分析基盤 / mercari data analysis infrastructure
cubicdaiya
11
12k
On-call Engineering
cubicdaiya
8
6.6k
Other Decks in Programming
See All in Programming
CTFのWebにおける⾼難易度問題について
hamayanhamayan
1
1k
Firebase Dynamic Linksの代替手段を自作する / Create your own Firebase Dynamic Links alternative
kubode
0
190
The Weight of Data: Rethinking Cloud-Native Systems for the Age of AI
hollycummins
0
130
JavaOne 2025: Advancing Java Profiling
jbachorik
1
320
goにおける コネクションプールの仕組み を軽く掘って見た
aronokuyama
0
140
Agentic Applications with Symfony
el_stoffel
1
110
Devin入門と最近のアップデートから見るDevinの進化 / Introduction to Devin and the Evolution of Devin as Seen in Recent Update
rkaga
7
3.9k
パスキーのすべて / 20250324 iddance Lesson.5
kuralab
0
140
Devin , 正しい付き合い方と使い方 / Living and Working with Devin
yukinagae
3
690
Day0 初心者向けワークショップ実践!ソフトウェアテストの第一歩
satohiroyuki
0
440
PHPer's Guide to Daemon Crafting Taming and Summoning
uzulla
2
1.1k
SLI/SLOの設定を進めるその前に アラート品質の改善に取り組んだ話
tanden
2
740
Featured
See All Featured
Code Reviewing Like a Champion
maltzj
522
39k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
102
18k
Why Our Code Smells
bkeepers
PRO
336
57k
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
194
16k
Optimising Largest Contentful Paint
csswizardry
35
3.2k
GraphQLとの向き合い方2022年版
quramy
45
14k
A better future with KSS
kneath
238
17k
Unsuck your backbone
ammeep
670
57k
The Cult of Friendly URLs
andyhume
78
6.3k
Rebuilding a faster, lazier Slack
samanthasiow
80
8.9k
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
135
33k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
666
120k
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