Upgrade to PRO for Only $50/Year—Limited-Time Offer! 🔥
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Infra@LINE
Search
LINE Developers
July 25, 2019
Programming
0
490
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
3
2.4k
Java 21 Overview
line_developers
6
1.2k
Code Review Challenge: An example of a solution
line_developers
1
1.5k
KARTEのAPIサーバ化
line_developers
1
590
著作権とは何か?〜初歩的概念から権利利用法、侵害要件まで
line_developers
5
2.2k
生成AIと著作権 〜生成AIによって生じる著作権関連の課題と対処
line_developers
3
2.3k
マイクロサービスにおけるBFFアーキテクチャでのモジュラモノリスの導入
line_developers
9
3.7k
A/B Testing at LINE NEWS
line_developers
3
1k
LINEのサポートバージョンの考え方
line_developers
2
1.4k
Other Decks in Programming
See All in Programming
AtCoder Conference 2025「LLM時代のAHC」
imjk
2
470
チームをチームにするEM
hitode909
0
320
connect-python: convenient protobuf RPC for Python
anuraaga
0
400
20 years of Symfony, what's next?
fabpot
2
350
Microservices Platforms: When Team Topologies Meets Microservices Patterns
cer
PRO
1
1k
sbt 2
xuwei_k
0
290
Developing static sites with Ruby
okuramasafumi
0
280
「コードは上から下へ読むのが一番」と思った時に、思い出してほしい話
panda728
PRO
38
26k
手軽に積ん読を増やすには?/読みたい本と付き合うには?
o0h
PRO
1
170
愛される翻訳の秘訣
kishikawakatsumi
3
320
WebRTC と Rust と8K 60fps
tnoho
2
2k
FluorTracer / RayTracingCamp11
kugimasa
0
230
Featured
See All Featured
The Art of Programming - Codeland 2020
erikaheidi
56
14k
Keith and Marios Guide to Fast Websites
keithpitt
413
23k
Imperfection Machines: The Place of Print at Facebook
scottboms
269
13k
The Illustrated Children's Guide to Kubernetes
chrisshort
51
51k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
359
30k
Side Projects
sachag
455
43k
Making Projects Easy
brettharned
120
6.5k
Bootstrapping a Software Product
garrettdimon
PRO
307
120k
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
34
2.6k
Producing Creativity
orderedlist
PRO
348
40k
Balancing Empowerment & Direction
lara
5
800
Raft: Consensus for Rubyists
vanstee
141
7.2k
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