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
The deployment for Go
Search
linyows
October 04, 2018
Technology
0
1.9k
The deployment for Go
Fukuoka.go#12 October 4, 2018 でお話しした 資料です
linyows
October 04, 2018
Tweet
Share
More Decks by linyows
See All by linyows
Protocol Buffersの型を超えて拡張性を得る / Beyond Protocol Buffers Types Achieving Extensibility
linyows
0
210
研究開発と実装OSSと プロダクトの好循環 / A virtuous cycle of research and development implementation OSS and products
linyows
1
830
コードジェネレーターで 効率的な開発をする / Efficient development with code generators
linyows
0
430
研究を支える拡張性の高い ワークフローツールの提案 / Proposal of highly expandable workflow tools to support research
linyows
0
610
非コンテナ環境において宣言的Deploymentを手軽に実現する / Declarative deployment in non-container environments
linyows
1
520
メール送信サーバの集約における透過型SMTP プロキシの定量評価 / Quantitative Evaluation of Transparent SMTP Proxy in Email Sending Server Aggregation
linyows
0
1.1k
透過型SMTPプロキシによる送信メールの可観測性向上: Update Edition / Improved observability of outgoing emails with transparent smtp proxy: Update edition
linyows
2
610
研究の再現性を高める 仕組みをGoでつくる / Creating a system to improve the reproducibility of research using go
linyows
1
340
奥が深いメールのシステム / The depth of Email system
linyows
4
770
Other Decks in Technology
See All in Technology
Phase09_自動化_仕組み化
overflowinc
0
1.4k
Phase12_総括_自走化
overflowinc
0
1.2k
A4)シラバスを超えて語る、テストマネジメント
moritamasami
0
120
20年以上続く PHP 大規模プロダクトを Kubernetes へ ── クラウド基盤刷新プロジェクトの4年間
oogfranz
PRO
0
160
形式手法特論:SMT ソルバで解く認可ポリシの静的解析 #kernelvm / Kernel VM Study Tsukuba No3
ytaka23
1
750
Phase06_ClaudeCode実践
overflowinc
0
1.6k
LINEヤフーにおけるAIOpsの現在地
lycorptech_jp
PRO
5
2.1k
品質を経営にどう語るか #jassttokyo / Communicating the Strategic Value of Quality to Executive Leadership
kyonmm
PRO
2
1.2k
大規模ECサイトのあるバッチのパフォーマンスを改善するために僕たちのチームがしてきたこと
panda_program
1
360
Phase04_ターミナル基礎
overflowinc
0
1.9k
Kiro Meetup #7 Kiro アップデート (2025/12/15〜2026/3/20)
katzueno
2
230
Phase08_クイックウィン実装
overflowinc
0
1.4k
Featured
See All Featured
How STYLIGHT went responsive
nonsquared
100
6k
Discover your Explorer Soul
emna__ayadi
2
1.1k
Why Our Code Smells
bkeepers
PRO
340
58k
Building a A Zero-Code AI SEO Workflow
portentint
PRO
0
410
How To Speak Unicorn (iThemes Webinar)
marktimemedia
1
410
JAMstack: Web Apps at Ludicrous Speed - All Things Open 2022
reverentgeek
1
400
Visualization
eitanlees
150
17k
Bridging the Design Gap: How Collaborative Modelling removes blockers to flow between stakeholders and teams @FastFlow conf
baasie
0
490
Lightning talk: Run Django tests with GitHub Actions
sabderemane
0
150
Build The Right Thing And Hit Your Dates
maggiecrowley
39
3.1k
The Impact of AI in SEO - AI Overviews June 2024 Edition
aleyda
5
770
The Language of Interfaces
destraynor
162
26k
Transcript
5PNPIJTB0EB (.01FQBCP *OD 0DUPCFS 'VLVPLBHP ͜Ε͕(PΞϓϦͷσϓϩΠͩ
'VLVPLBHP (.0ϖύϘ ϓϦϯγύϧΤϯδχΞ !MJOZPXT CMPHUPNPIJTBPEBDPN
'VLVPLBHP দຊ྄հʹΑΔจʢ%*$0.0༧ߘʣਫ਼៛ʹ੍ޚՄೳͳ߃ৗੑͷ͋ΔߴूੵϚϧνΞΧϯτܕͷϝʔϧج൫ IUUQTSBOEQFQBCPDPNQBQFSTEJDPNPQSPDFFEJOHNBUTVNPUPSZQEG ࠷ۙͷ͓ࣄ ओʹ'BTU$POUBJOFSʹΑΔϝʔϧج൫ݚڀ։ൃɺ࠷࣮ۙྫΛ(JU)VCͰެ։ IUUQTHJUIVCDPN'BTU$POUBJOFS
'VLVPLBHP 8&# %#13&44WPM )BTIJ$PSQ7BVMUͷهࣄدߘ Ԭͷ(PMBOHίϛϡχςΟ 'VLVPLBHPͷओ࠵ͷਓ MJOVYϢʔβͷ໊લղܾΛ (JU)VC͔ΒϚοϐϯά͢Δ ιϑτΣΞͷ։ൃ
'VLVPLBHP "SFZPVEFQMPZJOH
'VLVPLBHP ๏ ϫϯόΠφϦͷσϓϩΠΛղܾ͢Δ w IUUQTTQFBLFSEFDLDPNMJOZPXTTDBMBCMFEFQMPZNFOUUPPMUPEFQMPZPOZPVSPXO w !'VLVPLBHP w $BQJTUSBOPΛ(PΞϓϦͰ͏ͷΦʔόʔΩϧײ͕͋ͬͯͲ͏ʹ͔͢Δͱ͍͏༰ ๏
εέʔϥϒϧͰσϓϩΠΛҙࣝ͠ͳཱ͍ࣗܕσϓϩΠ w IUUQTTQFBLFSEFDLDPNMJOZPXTSFTPMWFXFCBQQMJDBUJPOEFQMPZNFOUQSPCMFNTGPSHP w !1)1$POGFSFODF'VLVPLBલࡇ3FKFDUDPO w ͜Ε·ͰͷσϓϩΠख๏Λ౿·͑ͭͭ৽͍͠σϓϩΠख๏ͷఏҊ ࠓʹೖͬͯ৽͍͠σϓϩΠख๏ʹ͍ͭͯఔൃද
'VLVPLBHP ͳͥɺ͍·Ͳ͖#MVF(SFFO͡Όͳ͍ͷ͔ʁ
'VLVPLBHP ๏ Πϯελϯε·ͨΠϝʔδΛߏ͢ΔΞϓϦͱͦͷ΄͔Λ͚ͯσϓϩΠ͢Δ ๏ Πϯελϯε·ͨΠϝʔδΛσϓϩΠͷͨΊʹมߋ͢ΔͷͰ*NNVUBCMF *OGSBTUSVDUVSFͰͳ͍ ๏ ͨͱ͑ɺ#MVF(SFFOσϓϩΠͰΓସ͑લʹ͋Β͔͡ΊΞϓϦΛߋ৽͢Δ ߹ͳͲ ๏
ͪΖΜɺ*O1MBDFͷ߹ લఏΞϓϦͱͦͷ΄͔ΛผʹσϓϩΠ͢Δ
'VLVPLBHP "QQMJDBUJPO 04 .JEEMFXBSFʜ *OTUBODF
'VLVPLBHP ๏ फڭ্ͷཧ༝ͰΫϥυ·ͨίϯςφڥΛ༻ҙͰ͖ͳ͍ ๏ ༧ࢉ͕গͳ͍ͷͰൺֱతίετΛඞཁͱ͢Δ#MVF(SFFOσϓϩΠ͕Ͱ͖ͳ͍ ๏ ϦϞʔτ͔ΒͷσϓϩΠݤͷཧ͕ඞཁʹͳΔͷͰΓͨ͘ͳ͍ Α͏͢Δʹɺ͜͏͍͏ࣄ
'VLVPLBHP 1 #!/bin/bash 2 set -xe 3 4 readonly REMOTE_USER="linyows"
5 6 function deploy () { 7 local sshc="ssh $1 -l $REMOTE_USER" 8 scp ./api.zip $REMOTE_USER@$1:/home/$REMOTE_USER 9 10 $sshc "unzip /home/$REMOTE_USER/api.zip" 11 $sshc 'sudo mv api /usr/local/bin' 12 $sshc 'sudo chown api /usr/local/bin/api' 13 $sshc 'sudo service api restart' 14 } 15 16 deploy 'api-1.example.test' 17 deploy 'api-2.example.test' 18 deploy 'api-3.example.test' ݱͷ༷ࢠͰ͢
'VLVPLBHP IUUQTHJUIVCDPNMJOZPXTEFXZ
'VLVPLBHP .VUBCMFڥͰΞϓϦ͕ೳಈతʹσϓϩΠ͢Δ
'VLVPLBHP 8PSL'MPX 4UBSUTFSWFS 1VTIUPSFQP %FWFMPQ #VJME5FTU .BTUFSNFSHF 3FMFBTF 1VMMSFMFBTF 3FTUBSUTFSWFS
"ENJO %FW %FW $* 0XOFS %FXZ %FXZ $*
'VLVPLBHP %FQMPZJOH%FNP
'VLVPLBHP %FQMPZJOH%FNP server: 1 $ export GITHUB_TOKEN=xxxxxxxxxxxxxxxxxxxxxxxxxxxxx 2 $ dewy
server \ 3 --repository linyows/dewy-testapp \ 4 --artifact dewy-testapp_darwin_amd64.tar.gz \ 5 --port 8000 \ 6 --log-level info -- \ 7 /var/www/my-app/current/my-app client: 1 $ while sleep 0.5; do curl localhost:8000; done dev: 1 $ export GITHUB_TOKEN=xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx 2 $ goreleaser --rm-dist
'VLVPLBHP ๏ )PPLܥͷՃλεΫ SFRVJSFE ๏ 1MVHJOػߏ ๏ ϩʔϧόοΫ SFRVJSFE ๏
ΧφϦʔσϓϩΠ ๏ ࢄ,74ͷରԠʢ&UDENC $POTVM,7LC ࠓޙͷ՝
'VLVPLBHP ๏ γεςϜن͕খ͍͞ͱίϯςφڥͰͳ͍͜ͱɺ#MVF(SFFO͕Ͱ͖ͳ ͍ࣄΑ͋͘Δ ๏ ͦͷΑ͏ͳڥͷͱɺ(PΒ͘͠ϫϯόΠφϦΛ(JUIVCSFMFBTFTʹ1045 ͢Δ͚ͩͰউखʹσϓϩΠ͞ΕΔ ๏ ͪΐͬͱͨ͠ΞϓϦέʔγϣϯͷσϓϩΠʹͪΐ͏Ͳ͍͍σϓϩΠπʔ ϧΛ࡞Γ·ͨ͠
$PODMVTJPO
'VLVPLBHP 5IBOLZPV 8FSFIJSJOH