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
Integrating Containers Into JavaScript
Search
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
Lucas Santos
May 14, 2021
Technology
81
0
Share
Integrating Containers Into JavaScript
Lucas Santos
May 14, 2021
More Decks by Lucas Santos
See All by Lucas Santos
The Hitchhiker's Guide for an Amazing API with TypeScript
khaosdoctor
0
120
Escalando globalmente com TypeScript e JavaScript na Klarna
khaosdoctor
0
210
The future of JavaScript
khaosdoctor
0
82
TypeScript tips that could save your life
khaosdoctor
0
240
É hora de falar sobre Deno
khaosdoctor
0
88
JS Software testing for beginners
khaosdoctor
0
98
Ambientes dinâmicos com GitHub Actions
khaosdoctor
0
53
The Dark Side of JavaScript
khaosdoctor
0
90
Entendendo o ecossistema de containers
khaosdoctor
1
1.1k
Other Decks in Technology
See All in Technology
サイボウズ、プラットフォームエンジニアリング始めるってよ ― プラットフォームチームの事業貢献と組織アラインメントの強化
ueokande
0
110
写真で見るAWS Summit Singapore 2026
k_adachi_01
0
110
なぜ、IAMロールのプリンシパルに*による部分マッチングが使えないのか? / 20260518-ssmjp-iam-role-principal
opelab
1
120
2026年春のAgentCoreアプデ 細かいやつ全部まとめ
minorun365
4
230
「強制アップデート」か「チームの自律」か?エンタープライズが辿り着いたプラットフォームのハイブリッド運用/cloudnative-kaigi-hybrid-platform-operations
mhrtech
0
200
クラウドネイティブ DB はいかにして制約を 克服したか? 〜進化歴史から紐解く、スケーラブルアーキテクチャ設計指針〜
hacomono
PRO
6
1k
Swift Sequence の便利 API 再発見
treastrain
1
280
【関西製造業祭り2026春】現場を変える技術はここまで来た〜世界最大の製造業見本市から持って帰ってきたもの〜
tanakaseiya
0
160
ECSのTerraformモジュールにコントリビュートした話
harukasakihara
0
180
RedmineをAIで効率的に使う検証
yoshiokacb
0
110
PdM・Eng・QAで進めるAI駆動開発の現在地/aidd-with-pdm-eng-qa
shota_kusaba
0
240
おいらのAWSアップデートの追い方〜Slack×AgentCore〜
yakumo
1
110
Featured
See All Featured
StorybookのUI Testing Handbookを読んだ
zakiyama
31
6.7k
How to Ace a Technical Interview
jacobian
281
24k
Building AI with AI
inesmontani
PRO
1
990
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
25
1.9k
Designing Powerful Visuals for Engaging Learning
tmiket
1
360
How STYLIGHT went responsive
nonsquared
100
6.1k
Bioeconomy Workshop: Dr. Julius Ecuru, Opportunities for a Bioeconomy in West Africa
akademiya2063
PRO
1
110
Bridging the Design Gap: How Collaborative Modelling removes blockers to flow between stakeholders and teams @FastFlow conf
baasie
0
550
We Have a Design System, Now What?
morganepeng
55
8.1k
GitHub's CSS Performance
jonrohan
1033
470k
<Decoding/> the Language of Devs - We Love SEO 2024
nikkihalliwell
1
210
Ten Tips & Tricks for a 🌱 transition
stuffmc
0
110
Transcript
Integrating containers in JavaScript the good, the bad, and the
ugly
cloud advocate_ who am I_
[email protected]
{twitter, facebook, linkedin…}.lsantos.dev
containers are a thing_
it’s easy to control them
if you are human_
what if you’re not?
then we use containerd - High-level runtime (runtime manager) created
by the Open Container Initiative - Powers Docker - Created to be manipulated through code
not so easy for JS devs
Golang predominance
Then I came across this article_
What if I did this using Node.js?
The first attempt sometimes good, mostly bad, but always ugly
use child-process
pros - Super easy - Takes advantage of ctr’s built
in features - Faster implementation - Can be integrated with any external API
so easy that I built this
to the code
cons - heavily dependent on environment - no complete control
over the process - Limited to parsing the string outputs - Error handling is poor - Needs sudo - Input sanitizing
conclusion: we can integrate containers into JS
but I wanted a real integration
The second attempt mostly good, sometimes bad, kinda pretty
containerd was meant to be extended
but you need to know how to do it
None
None
but it is possible
to the code
pros - Proper error handling - Proper return codes -
Allows you full control of the pipeline - Does not need to be in the same machine - Does not require sudo - Native (gRPC module)
cons - Requires a LOT of knowledge in containers -
Sparse documentation both for gRPC and containerd - Harder - Might be a problem to connect to external servers - CRT certificates and so on
Next steps what can we do next?
let’s make this a good tool
Let’s add more knowledge to the Web!
refs_ - github.lsantos.dev/containerd-integration-example - github.lsantos.dev/js-containerd-example - github.lsantos.dev/containerd-js - Mark’s article
bit.ly/containerd-grpc-web These Slides: - slides.lsantos.dev/integrating-containers-into-javascript
thank you_ info.lsantos.dev