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
Infra@LINE
Search
LINE Developers
July 25, 2019
Programming
0
480
Infra@LINE
2019/7/25に行われたLINE Developer Meetup #56 in KYOTOでの登壇資料です
https://line.connpass.com/event/139283/
LINE Developers
July 25, 2019
Tweet
Share
More Decks by LINE Developers
See All by LINE Developers
LINEスタンプのSREing事例集:大きなスパイクアクセスを捌くためのSREing
line_developers
1
2.3k
Java 21 Overview
line_developers
6
1.2k
Code Review Challenge: An example of a solution
line_developers
1
1.3k
KARTEのAPIサーバ化
line_developers
1
530
著作権とは何か?〜初歩的概念から権利利用法、侵害要件まで
line_developers
5
2.2k
生成AIと著作権 〜生成AIによって生じる著作権関連の課題と対処
line_developers
3
2.1k
マイクロサービスにおけるBFFアーキテクチャでのモジュラモノリスの導入
line_developers
9
3.5k
A/B Testing at LINE NEWS
line_developers
3
980
LINEのサポートバージョンの考え方
line_developers
2
1.3k
Other Decks in Programming
See All in Programming
CursorはMCPを使った方が良いぞ
taigakono
1
250
GraphRAGの仕組みまるわかり
tosuri13
8
530
“いい感じ“な定量評価を求めて - Four Keysとアウトカムの間の探求 -
nealle
1
9k
Node-RED を(HTTP で)つなげる MCP サーバーを作ってみた
highu
0
120
おやつのお供はお決まりですか?@WWDC25 Recap -Japan-\(region).swift
shingangan
0
120
なぜ適用するか、移行して理解するClean Architecture 〜構造を超えて設計を継承する〜 / Why Apply, Migrate and Understand Clean Architecture - Inherit Design Beyond Structure
seike460
PRO
3
750
20250704_教育事業におけるアジャイルなデータ基盤構築
hanon52_
5
730
git worktree × Claude Code × MCP ~生成AI時代の並列開発フロー~
hisuzuya
1
550
ソフトウェア品質を数字で捉える技術。事業成長を支えるシステム品質の マネジメント
takuya542
1
12k
WebViewの現在地 - SwiftUI時代のWebKit - / The Current State Of WebView
marcy731
0
110
Systèmes distribués, pour le meilleur et pour le pire - BreizhCamp 2025 - Conférence
slecache
0
120
RailsGirls IZUMO スポンサーLT
16bitidol
0
170
Featured
See All Featured
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
138
34k
YesSQL, Process and Tooling at Scale
rocio
173
14k
Build The Right Thing And Hit Your Dates
maggiecrowley
36
2.8k
Mobile First: as difficult as doing things right
swwweet
223
9.7k
Making the Leap to Tech Lead
cromwellryan
134
9.4k
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
29
2.7k
Building Better People: How to give real-time feedback that sticks.
wjessup
367
19k
Producing Creativity
orderedlist
PRO
346
40k
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
48
2.9k
Build your cross-platform service in a week with App Engine
jlugia
231
18k
Designing Dashboards & Data Visualisations in Web Apps
destraynor
231
53k
A designer walks into a library…
pauljervisheath
207
24k
Transcript
2 . 1 1 1 5 1 2 . -1
4 3 1
None
• ,
…
) C • 0 5 C A2 2 • (
. C • 2 C C • ( C • . C C
+ + + + +
-
- // /
- &
- - ,
- 35 4 / 0: 7592 : ) . ,
• 7592 . 2 5. 2 2 07529 • 7592 : 329 ( 2 2 • 7592 2775 2 2 2 07529 • 7592 029 .71:3 . ( 2 2 • 7592 07. .91 :51 E 07 12 1 . 2
None
• • •
•
None
• • •
• • • • • ) /) ) ( )
None
) , , • ( , • • ( •
, • • • • , /-) ( )
$ docker run -ti ¥ ubuntu bash
None
+ /-) ( )
• •
• • • ,
) • ) ( • • • (
None
•
•
/
• •
• • •
◎ ◦ ◦
╳ ╳ △ △ ◦ ) /) ) ( )
- -) - (
$ cat serve.go time.Sleep(5 * time.Second) http.HandleFunc("/", func(w http.ResponseWriter, r
*http.Request) { log.Printf("%s %s %s %s", r.Method, r.URL.String(), r.RemoteAddr, r.UserAgent()) w.Write([]byte(*greeting + "¥n")) })
$ cat Dockerfile FROM golang:1.12-alpine RUN go build serve.go CMD
["./serve", "--listen=:80", "--greeting=Hello, Docker!"] $ docker build --tag $TAG . Successfully built 728b5f3086be Successfully tagged docker- registry.linecorp.com/christopher- pickel/hello-world:latest
$ docker run -rm --name=demo ¥ --publish 127.0.0.1:2080:80/tcp ¥ $TAG
2019/07/25 06:34:41 starting 2019/07/25 06:34:46 listening on :80 2019/07/25 06:34:52 GET / 172.17.0.1:41676 curl/7.54.0 $ curl localhost:2080 Hello, Docker!
$ docker exec -ti demo bash bash-4.4# ps PID USER
TIME COMMAND 1 root 0:00 ./serve --listen=… 12 root 0:00 bash 22 root 0:00 ps bash-4.4# curl localhost Hello, Docker! 2019/07/25 06:36:27 GET / 127.0.0.1:36774 curl/7.64.0
bash-4.4# file ./serve serve: ELF 64-bit LSB executable, x86-64… bash-4.4#
uname Linux bash-4.4# exit $ uname Darwin
$ cat kube.yaml containers: - name: hello image: docker-registry.linecorp.com/ch… args:
["./serve", "--listen=:80", "--greeting=Hello, Kubernetes!"] readinessProbe: httpGet: path: /healthz port: 80
$ kubectl apply -f kube.yaml namespace/demo created deployment.apps/hello created service/hello
created $ curl $(minikube ip):$PORT Hello, Kubernetes! namespace/demo created deployment.apps/hello created service/hello created
$ kubectl logs hello-674f6956d-97kcb 2019/07/23 09:11:34 starting 2019/07/23 09:11:39 listening
on :80 2019/07/23 09:11:44 GET /healthz 172.17.0.1:39214 kube-probe/1.15 2019/07/23 09:11:49 GET /healthz 172.17.0.1:39214 kube-probe/1.15 2019/07/23 09:11:51 GET / 172.17.0.1:63338 curl/7.54.0
$ kubectl edit deployment hello (s/replicas: 1/replicas: 10/) $ kubectl
edit deployment hello (s/Hello, Kubernetes/Hello, Rollouts/) $ kubectl rollout status deployment hello Waiting for deployment "hello" rollout to finish: 9 of 10 updated replicas are available... deployment "hello" successfully rolled out
- -) - (
None