Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
Swift in Docker
Search
Johnlin
February 07, 2017
Programming
120
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Swift in Docker
Johnlin
February 07, 2017
More Decks by Johnlin
See All by Johnlin
用 MLIR 實作 一個 Ruby IR (intermediate representation)
johnlinvc
0
360
Unearth Ruby builtin Gems 發掘 Ruby 的內建 Gems
johnlinvc
0
460
Ruby 型別檢查工具簡介
johnlinvc
0
670
Swift Actor 實作探索
johnlinvc
0
220
用 mruby 來寫跨平台工具
johnlinvc
0
140
Actor model 簡介
johnlinvc
0
270
一起玩 Helm 3
johnlinvc
1
180
為什麼 App 卡卡的
johnlinvc
2
1.3k
如何使用 byebug 來除錯 Ruby 程式
johnlinvc
0
290
Other Decks in Programming
See All in Programming
Vue Fes Japan 2026 タイムテーブル徹底解説
448jp
1
590
FreeBSDでZabbixを動かす
kenkino
0
350
Ghostty + Neovimで作る 透明でカッコ良い開発環境
j341nono
0
150
ハーネス設計入門 〜 基礎知識の整理から実務へのステップアップ 〜
kinopeee
20
20k
モジュールの視点からSwiftを読み解く #iosdc
s_shimotori
0
300
Augmenting AI with the Power of Jakarta EE
ivargrimstad
0
470
AHC070解法紹介
eijirou
0
150
GemmaをJevのように使ってみる / Use Gemma like Jev
kishida
5
520
iOSDC Japan 2026 - Swiftで作って学ぼう!データベース自作入門
kaseken
2
430
setup-vp GitLab対応の裏側
naokihaba
0
150
Herb in Rails 8.2: Your ERB views, now HTML-aware @ Rails World 2026, Austin, Texas
marcoroth
0
150
MVNOの申込からeSIM開通までをiOSアプリでつなぐ- 本人確認・MNP・通信事業者基盤をまたぐ実装
satotakeshi
0
520
Featured
See All Featured
The Straight Up "How To Draw Better" Workshop
denniskardys
239
140k
A Soul's Torment
seathinner
8
3.7k
4 Signs Your Business is Dying
shpigford
187
23k
The Limits of Empathy - UXLibs8
cassininazir
1
700
Color Theory Basics | Prateek | Gurzu
gurzu
1
480
Raft: Consensus for Rubyists
vanstee
142
7.7k
Accessibility Awareness
sabderemane
1
230
SEO for Brand Visibility & Recognition
aleyda
0
4.8k
Winning Ecommerce Organic Search in an AI Era - #searchnstuff2025
aleyda
2
2.2k
How to Think Like a Performance Engineer
csswizardry
28
2.9k
Noah Learner - AI + Me: how we built a GSC Bulk Export data pipeline
techseoconnect
PRO
0
440
職位にかかわらず全員がリーダーシップを発揮するチーム作り / Building a team where everyone can demonstrate leadership regardless of position
madoxten
69
66k
Transcript
Swift in Docker John Lin (@johnlinvc)
ॄኄੋDocker? • 㟬తఔࣜแҰݸ༰ث(container)ɼཁ༗ Docker తํबՄҎ䋯ɻ • ༰ثཫ໘ෆ༗ఔࣜɼՄҎ์ఔࣜӡߦॴधత૬᮫ ࢿྉɼവࣜݿɼܥ౷݅ɻ • ༻ိ։ᚙɼᚙఔࣜɼํศɻ
Docker VM ༗ॄኄෆҰᒬʁ • Docker ڞ༻࡞ۀܥ౷ɻ • Docker ൺֱলࢿݯɻ
҆ Docker • લࢧԉ Mac, Windows, Linux • https://www.docker.com/products/docker#/mac
Մ ҎԼࡌ҆䈕ɻ
Docker ө૾䈕(image) • ༰ثతجૅɼ㑌Ұݸ༰ثඞਢ༗Ұݸө૾䈕ɼө૾ 䈕ཫ༗༰ث㚎֘༗త䈕Ҋɻ • ө૾䈕 => UILabel (Class),
༰ث => myLabel (instance) • ՄҎଟݸ༰ثڞ༻Ұݸө૾䈕ɻ
docker run • docker run <ө૾䈕໊> <ཁࣥߦతఔࣜ> • ။༻ө૾䈕త㚎༰㗞ੜҰݸ༰ثɼฒࡏ༰ث㚎ࣥߦ ఔࣜ
Swift in Docker • https://github.com/swiftdocker/docker-swift • docker run --cap-add sys_ptrace
-it --rm swift swift ՄҎࣥߦ REPL • Swift REPL Ҽҝ༻౸ ptraceɼॴҎधཁֹ֎తᒟݶ
Live demo
ݐஔ&ᚙ Package • ՄҎ༻ docker ိݐஔ݅ • ࠶ฤᩄత݅์ࡏ docker ཫ໘ᚙɻ
ݐஔ Package • docker run -v `pwd`/:/docker-swift -w /docker- swift
--rm swift swift package init 㗞ੜ Package ૬᮫䈕Ҋ • echo 'print("hello docker")' >> Sources/ main.swift ࡏࣥߦ䈕࠷ޙՃ্Ұݸprint hello docker
ݐஔ Package • docker run -v `pwd`/:/docker-swift -w /docker- swift
--rm swift swift build ݐஔ Package • docker run -v `pwd`/:/docker-swift -w /docker- swift --rm swift .build/debug/docker-swift ࣥߦhello docker
Live demo
Kitura • IBM ݚᚙత Swift web framework • Opensource •
ՄҎ༻ Docker Swift ိ䋯
Update docker file FROM ibmcom/swift-ubuntu:latest EXPOSE 8080 RUN mkdir /root/Kitura-Starter
ADD Sources /root/Kitura-Starter ADD Package.swift /root/Kitura-Starter ADD LICENSE /root/Kitura-Starter ADD .swift-version /root/Kitura-Starter RUN cd /root/Kitura-Starter && swift build USER root CMD [ "sh", "-c", "cd /root/Kitura-Starter && .build/debug/Kitura-Starter" ]
Update docker file FROM swift:3.0.2 EXPOSE 8080 RUN mkdir /root/Kitura-Starter
ADD Sources /root/Kitura-Starter ADD Package.swift /root/Kitura-Starter ADD LICENSE /root/Kitura-Starter ADD .swift-version /root/Kitura-Starter RUN apt update RUN apt-get install -y libssl-dev WORKDIR /root/Kitura-Starter RUN swift package update RUN swift build USER root CMD [ "sh", "-c", "cd /root/Kitura-Starter && .build/debug/Kitura-Starter" ]
Live demo
݁ • ՄҎ༻ docker ိ։ᚙ Linux త Swift ఔࣜ •
ՄҎ༻ docker ိࣥߦ Swift
Q&A