WebAssembly (WASM) vs. Docker - Our Expert Analysis

  Рет қаралды 87,954

KodeKloud

KodeKloud

Күн бұрын

Just what is WASM (WebAssembly) and how does it integrate with an industry staple, Docker?
In this video, we explore the potential of WebAssembly (WASM) as a game-changer in the world of containerization. While Docker has been the go-to solution for packaging and deploying applications in containers, WASM offers a faster, more secure, and more flexible alternative.
1️⃣ We’ll start by explaining what WASM is and how it works, including its binary format, virtual machine, and sandboxed execution environment.
2️⃣We then compare the features of WASM and Docker, such as startup time, resource consumption, and portability, and showcase some examples of WASM applications running in the browser, server, and edge devices.
3️⃣Finally, we conclude with some reflections on the future of containerization and the role that WASM might play in shaping it.
Whether you're a developer, a DevOps engineer, or a curious tech enthusiast, this video will provide you with an informative and thought-provoking perspective on one of the most exciting trends in modern computing!
Here are the topics covered in this video:
These are the topics covered in this video:
00:00 - An introduction to WebAssembly (WASM)
00:51 - What is WASM?
03:26 - Demo on WASM
08:01 - What does it have to do with Docker?
11:48 - Docker vs WASM
15:28 - Should we unlearn Docker & Kubernetes?
17:36 - Demo: Docker + WASM Integration
18:48 - Conclusion & Next steps
Want to view a clear path to becoming a DevOps Engineer? Visit our website - bit.ly/Kodekloud-YT We have various Learning Paths to help you choose your next step and shape your DevOps & Cloud Career.
#WebAssembly #Docker #WASM
Thanks for watching!
WebAssembly (WASM) vs. Docker - Our Expert Analysis
• WebAssembly (WASM) vs....

Пікірлер: 227
@sachinthatte9672
@sachinthatte9672 Жыл бұрын
The presenter here is a truly gifted teacher. Absolutely amazing way to simplify an esoteric topic. It is hard to overstate how important this content is for people like me. Thank you!!
@KodeKloud
@KodeKloud Жыл бұрын
Hello thank you for watching our video .We are glad that we could help you in your learning !
@ivanmaglica264
@ivanmaglica264 Жыл бұрын
Performance Speed for containers 'Far away from native'? Yes IF you are running it on windows or mac but app is built for linux. If you run it on linux, it is native speed. OS calls go directly to kernel, no VM translation layer.
@andreffrosa
@andreffrosa Жыл бұрын
Exactly
@tomof
@tomof Жыл бұрын
Not only that. Placing WASM before docker containers in terms of "Performance speed" is so wrong. "Almost native speed" for WASM ruthlessly ignores a level of redirection known as byte code interpretation.
@HelloThere-xs8ss
@HelloThere-xs8ss Жыл бұрын
Ok but you have to think about who software is built for. Typically, a regular user will have windows or apple.
@lemetwe3401
@lemetwe3401 Жыл бұрын
@@HelloThere-xs8ss And containers usually only run on servers. And those run almost all on linux.
@HelloThere-xs8ss
@HelloThere-xs8ss Жыл бұрын
@@lemetwe3401 ok, not true at all.
@gusik89
@gusik89 Жыл бұрын
I don't see many use cases where one should use containers + WASM instead of just WASM and WASI. I think this technology has a great potential replacing containers because it provides a way to deploy and execute your application anywhere with little overhead and complexity compared to containers. This is something like Java on steroids with open standards and ability to use different programming languages and tools which makes it even more tempting, you just use your beloved language, compile it and deploy anywhere.
@PetroeEd
@PetroeEd Жыл бұрын
This presentation is one of the finest I've ever seen! Takes a very complex subject and walks the viewer through in a very understandable manner. Great stuff. GCB
@KodeKloud
@KodeKloud Жыл бұрын
Thanks for watching our video and sharing your thoughts. Do subscribe to our channel and stay tuned for more. Cheers!
@leonardmocanu-wi1oh
@leonardmocanu-wi1oh Жыл бұрын
14:05, the Performance Speed comparison is wrong. I think it should be the other way aroud. Containerized apps run at native speed. That’s why you need to compile them for the specific architecture. WASM, on the other hand, is slower because it needs to be translated to that architecture
@_akuma06
@_akuma06 Жыл бұрын
I can assure you that a docker container on windows doesn't run at native speed.
@leonardmocanu-wi1oh
@leonardmocanu-wi1oh Жыл бұрын
@@_akuma06, you are right but I think this is about production environments
@_akuma06
@_akuma06 Жыл бұрын
@@leonardmocanu-wi1oh Then again the example was about Mac and Windows users in the video. However I agree that if we limit it to Linux os only, you're right.
@skytech2501
@skytech2501 Жыл бұрын
this video is criminally underrated!
@KodeKloud
@KodeKloud Жыл бұрын
Thanks a ton! Your support makes all the difference 💙
@luacode8647
@luacode8647 Жыл бұрын
A clean and straightforward explanation of WASM vs Docker. You're good at explaining a topic that everyone doesn't know how to show with details
@KodeKloud
@KodeKloud Жыл бұрын
Hello, thank you for watching our video. We are glad that you liked our video. Do subscribe and stay connected with us. Cheers :)
@AhmedFaraz936
@AhmedFaraz936 10 күн бұрын
Very brilliantly explained. Thanks
@bitlabs4320
@bitlabs4320 Жыл бұрын
Amazing content. Very clear, to the point and love the way you explains WASM from beginning by comparing to the DOCKER. 👌
@KodeKloud
@KodeKloud Жыл бұрын
Much appreciated!
@MrSuriyam
@MrSuriyam 4 ай бұрын
Hi Sir Ty for taking the time in demystifying a complex topic. 🙏
@KodeKloud
@KodeKloud Ай бұрын
Welcome!
@BR-lx7py
@BR-lx7py Жыл бұрын
Isn't WASM more analogous to JVM rather than Docker? You have a compiler that creates special bytecode (from a limited number of languages) for a VM. As opposed to Docker, where you can run code from any language as long as it has a compiler for your architecture.
@shubhamsehgal2336
@shubhamsehgal2336 Жыл бұрын
Just add Java to web and it's somewhat... Oh wait we did that with applets lol
@fdwr
@fdwr Жыл бұрын
WebAssembly is indeed compiled source code to byte code, which is JIT'ed to native code at runtime (and potentially cached). The big difference is that WASM is closer to a basic instruction set architecture (ISA) and does not bake in a particular hierarchy (e.g. Object is not the root of all classes) nor enforce any particular memory model (e.g. you don't have to use lazy garbage collection like the JVM or CLR).
@109Rage
@109Rage Жыл бұрын
Yes, WASM is similar in concept to the JVM-they're both a virtual machine that runs on a bytecode. The difference is that the JVM was designed for Java specifically, so anything that compiles to it has to play nice with JVM semantics, such as classes and garbage collection. WASM's bytecode is lower level, and more simple, so it's way easier to get any arbitrary programming language compiling to it, compared to JVM. The reason WASM is being compared with Docker, is because WASM by default is already fairly restricted, and sandboxed, with the only access to the system being whatever you explicitly give it. Java is technically capable of this as well, stripping out and controlling any syscalls, but its entire ecosystem isn't designed for this. Not to mention, WASM lets you do this with languages that aren't specifically designed for the JVM specifically. If your compiler is built on LLVM, you almost get WASM support for free.
@MaulikParmar210
@MaulikParmar210 Жыл бұрын
The difference is underlying API, while both are in intermediate format, java bytecode has more OS apis available compared to WASM. Web Assembly is limited to sandbox it's running in. If it's browser, it's limited to APIs available similar to JS sandbox. If it's loaded in wider runtime i.e. v8 / node.js it will have wider set it APIs i.e. network / fs etc. Either way it's more comparable to foreign function interface that alot of languages provides. Runtimes are going to limit what it can do, you can label it as APIs or modules it doesn't matter, concept of sandbox and abstraction remains same. Actual pipeline is that you load intermediate binary, wasm runtime allocate memory and start JIT translation, Native code bootstraps and executes entry function i.e. main function. With inter process communication both world communicates. WASM would use stdlib and other posix complaint syscalls so that it remains OS independent, there's no magic there, runtime is just broker which manages resources and pass on syscalls. On docker entire thing is done using Linux namespaces which is entirely different concept to spawn process as lightweight VM and doesn't have runtime on it's own rather gets namespaced translations of all syscalls directly. That's why you need images compiled for specific arch in containers while WASM can execute on any complaint runtime.
@ThePandaGuitar
@ThePandaGuitar 10 ай бұрын
Yes it's the JVM vision.
@balloney2175
@balloney2175 Жыл бұрын
The explanation is very clear and easy to understand. (No accent at all!) Love to learn from you, more!
@KodeKloud
@KodeKloud Жыл бұрын
Awesome, thank you!
@riyazahmad6046
@riyazahmad6046 Жыл бұрын
Mumshad, you are an amazing tutor... recently i got CKA certified ... your tutorial was really helpful!!!!!!
@KodeKloud
@KodeKloud Жыл бұрын
Thank you for the appreciation. You can check our videos related to DevOps and subscribe to our channel to stay updated with all the latest tools.
@javadoctor101
@javadoctor101 Жыл бұрын
Wow!! What an amazing video. I am fairly certain you put tremendous effort and research in creating these videos. Thank you so much and keep up the good work!!
@KodeKloud
@KodeKloud Жыл бұрын
Wow, thank you!
@user-vf9fi7dx2w
@user-vf9fi7dx2w 9 күн бұрын
You are the best. I think you are really talented
@herambthuse5460
@herambthuse5460 Жыл бұрын
Thanks Mumshad... your videos are always interesting and educative. I think the pace at which Software Development is changing in its entire approach along with tools, processes and expectations, its becoming humanly impossible for Software Developers to match the expectations. And mostly people are learning these tools, frameworks, etc only to the level of getting work done. Naturally , cause it would take time for any human software developer to work on a perticular tech/ tool for a considerable period of time to develop expertise of next level. But by then the ask changes, tool changes, processes change and every employer wants Developer to have solid experience in these new shiny tools, tech. Which a human cant have , not they are expert beyond a point in the Tool they have been using because many were trying to catch the bus of change. 😃 Change is good , pace of new tech i is good , provided it adds real value to the objective. I hope Software Developers too may be thinking in the same direction.
@KodeKloud
@KodeKloud Жыл бұрын
Hello, thanks for checking out our video and for sharing your input. Do subscribe to our channel to stay posted on upcoming tutorials. Cheers!
@IdanRefaeli3
@IdanRefaeli3 Жыл бұрын
14:09 - A Docker container does not contain an OS (but still mimics a file system) as far as I know, so doesn't it access the underlying OS just like WASM?
@brunobellomunhoz
@brunobellomunhoz Жыл бұрын
It uses the Linux kernel, so it is in Linux, but windows and Mac need to run a "VM" with Linux in order to spin up containers from what I've understood
@_akuma06
@_akuma06 Жыл бұрын
@@brunobellomunhoz You're right. On windows, docker uses WSL 2 for the containerized apps and WSL 2 behaves like a "VM" but is not actually one.
@pl4nty
@pl4nty Жыл бұрын
@@_akuma06 WSL2 actually is a VM, running on Hyper-V
@_akuma06
@_akuma06 Жыл бұрын
@@pl4nty Yeah it's more on the play on word here. But WSL2 uses a VM under the hood with hyperv, but what you have access to is not a VM in the truest sense. It just behaves like it. It means you can have the advantages of WSL1 (fast start-up time, no need to manage your VM, not isolated from the host, less memory consumption and CPU usage...) and still have the advantages of a VM. That's what they mean in the documentation of WSL2 when they it 'behaves' like a VM.
@pl4nty
@pl4nty Жыл бұрын
@@_akuma06 kinda, but WSL2 is very much a (Windows-managed) VM - it runs a virtualised kernel and network switch. It also has similar isolation to a VM. It has some performance optimisations (eg custom kernel), and a bunch of tooling (eg WSLg, USDIPD), but the core architecture is hyperv. Windows has standardised on it to reduce attack surface and accelerate development - WDAG and Windows Sandbox have taken similar approaches
@abhishekgowlikar
@abhishekgowlikar Жыл бұрын
Your explanation on the latest technologies is awesome, explanation in simple language and able to understand by everyone. thanks please bring more videos on the latest trends in DevOps and Orchestration.❤
@KodeKloud
@KodeKloud Жыл бұрын
Thanks and welcome
@lazygamer6249
@lazygamer6249 Жыл бұрын
Very thorough, beautiful presentation and easy to understand. Thank you so much.
@KodeKloud
@KodeKloud Жыл бұрын
Thanks a ton! Your support makes all the difference 💙
@MarcoLenzo
@MarcoLenzo Жыл бұрын
Thank you for the detailed overview. I agree with you as I highly doubt they will replace Docker or Kubernetes. I also think adoption won't be as fast as we saw with containers as I don't think many teams will be motivated to use it unless they need to solve some particular challenge on the front end. I see its use in the back end very unlikely. However, it wouldn't be the first time I realize the power of a technology only after it reaches a decent level of maturity.
@KodeKloud
@KodeKloud Жыл бұрын
Hello, thank you for watching our video. We are glad that you liked our video. Do subscribe and stay connected with us. Cheers :)
@parashar1505
@parashar1505 Жыл бұрын
The best instructor ever born on earth!
@KodeKloud
@KodeKloud Жыл бұрын
We are so grateful for your kind words. Also, subscribe to our channel and stay tuned for more videos. Cheers!
@nilesh-gule
@nilesh-gule Жыл бұрын
Thanks Mumshad for a very informative video in WASM and WASI.
@KodeKloud
@KodeKloud Жыл бұрын
Hi Nilesh, we are glad you found our video informative. Do subscribe to our channel and stay tuned for more.
@foofighterdaz
@foofighterdaz 10 ай бұрын
This was so good, pitched perfectly, fantastic animations and references.
@KodeKloud
@KodeKloud 10 ай бұрын
Greetings! Thank you for your kind words. Spread the word by liking, sharing and subscribing to our channel! Cheers :).
@EldonElledge
@EldonElledge Жыл бұрын
Great video and content. I have been using Microsoft Blazor for a while now. I am excited to see the direction that WASM is going.
@KodeKloud
@KodeKloud Жыл бұрын
We are glad that you have enjoyed your learning experience with us : )
@tourdesource
@tourdesource Жыл бұрын
Great video! Thank you for the clear explanation.
@KodeKloud
@KodeKloud Жыл бұрын
Glad it was helpful!
@faizalabdulhakim348
@faizalabdulhakim348 5 ай бұрын
very concise explanation and example, Sir!
@KodeKloud
@KodeKloud 5 ай бұрын
Glad it was helpful!
@basu007100
@basu007100 Жыл бұрын
Thanks Mumshad for sharing insights
@KodeKloud
@KodeKloud Жыл бұрын
Thanks a ton! Your support makes all the difference 💙
@anselminos5238
@anselminos5238 10 ай бұрын
To reduce the docker image size and application startup time you can use images like alpine or distroless. And when you run docker inside a linux machine the docker container it should be running at native speeds. In contrast when you run docker on Windows and on MacOS it needs to create a linux vm to run the containers on.
@KodeKloud
@KodeKloud 10 ай бұрын
Thanks for watching our video and sharing your thoughts. Do subscribe to our channel and stay tuned for more. Cheers!
@marekkucak6581
@marekkucak6581 11 ай бұрын
WASM with Docker. That's amazing. Thanks for the presentation!
@KodeKloud
@KodeKloud 11 ай бұрын
Keep learning with us .Stay connected with our channel and team :) . Do subscribe the channel for more updates : )
@zennoeditz8280
@zennoeditz8280 Жыл бұрын
one the best video i've ever seen for webassembly out of the browser thank you so much , can you make some tutorials on becnhmarking or profiling for wasm binaries.
@KodeKloud
@KodeKloud Жыл бұрын
Thank you for the appreciation. You can check our videos related to DevOps and subscribe to our channel to stay updated with all the latest tools.
@111t03
@111t03 Жыл бұрын
Thanks for the explanation man! Really enjoyed and grasped this content. 🙏
@KodeKloud
@KodeKloud Жыл бұрын
We are so grateful for your kind words. Also, subscribe to our channel and stay tuned for more videos. Cheers!
@h3651551
@h3651551 Жыл бұрын
I am not sure if combination will only get the benefit from both...? But it is good to know there is something new now. Thanks!
@KodeKloud
@KodeKloud Жыл бұрын
Thanks for watching our video and sharing your thoughts. Do subscribe to our channel and stay tuned for more. Cheers!
@FilipCodes
@FilipCodes Жыл бұрын
So glad I found this channel
@KodeKloud
@KodeKloud Жыл бұрын
Greetings! Thank you for your kind words. Spread the word by liking, sharing and subscribing to our channel! Cheers :).
@MrSuriyam
@MrSuriyam 11 ай бұрын
Thank you again sir for the wealth of info and keeping us updated with all the integrations. Appreciate it sincerely…
@KodeKloud
@KodeKloud 11 ай бұрын
We are glad you found our video helpful. Like and share our video with your peers and also do not forget to subscribe to our channel for not missing video updates. We will be coming up with more such videos. Cheers!
@aireddy
@aireddy Жыл бұрын
This video is very informative, Thank you Mumshad.
@KodeKloud
@KodeKloud Жыл бұрын
We are glad you found our video informative. Do support us by subscribing to our channel. Cheers!
@aireddy
@aireddy Жыл бұрын
@@KodeKloud I subscribed your channel long time ago.
@djsrone
@djsrone Жыл бұрын
If I were to build an application from scratch and are not bound to Docker/K8s work flows, is docker/K8s necessary? Also are they're orchestration tools like k8s for WASM or in the works? It seems like docker is only necessary since its something were familiar with and is already in our infrastructures.
@KodeKloud
@KodeKloud 11 ай бұрын
"There are a lot of benefits of Docker and Kubernetes you can read more about them here: Docker: kodekloud.com/blog/role-of-docker-in-devops Kubernetes: kodekloud.com/blog/benefits-of-kubernetes/ For example, assume that you have to deploy a cluster with microservices, every day there are a lot of commits code of the developer team for moreover 20 services. Containerizing all of these applications and deploying them to Kubernetes is such a great idea. You can build CI/CD, set up Monitoring, and config security containers. This is effective."
@andriussolopovas8727
@andriussolopovas8727 9 ай бұрын
the future looks interesting in terms of security as well, you can encrypt such container and provide functionality that is completely encrypted, almost like in PS5, will become easy to manage licensing as you can build in anything inside those encrypted containers even self destruction mechanisms as soons as it gets connections to the internet.
@KodeKloud
@KodeKloud 9 ай бұрын
Hi, thanks for checking out our tutorial and for sharing the information. Do subscribe to our channel to stay posted on upcoming tutorials. Cheers!
@CoolDude911
@CoolDude911 Жыл бұрын
I will comment that it's not always about deploying stuff on the web. Electrical engineers use docker is lots of different ways. You can use Docker containers to run tests with specific operating system parameters or make a deep learning environment with cuda set up in a specific way.
@KodeKloud
@KodeKloud Жыл бұрын
Thanks for watching our video and sharing your thoughts. Do subscribe to our channel and stay tuned for more. Cheers!
@syedsadiqali892
@syedsadiqali892 Жыл бұрын
Wow. This is awesome!!
@KodeKloud
@KodeKloud Жыл бұрын
Thank you! Cheers!
@x0r1k
@x0r1k Жыл бұрын
Great video! I don't agree that docker is "far away from native speed". If you google any research, you will find out that docker has speed close to native (on linux). I totally agree about the other docker disadvantages.
@KodeKloud
@KodeKloud Жыл бұрын
Thanks for watching our video and sharing your thoughts. Do subscribe to our channel and stay tuned for more. Cheers!
@jairunet
@jairunet Жыл бұрын
Thank you very much for the details, valuable indeed, appreciate it!
@KodeKloud
@KodeKloud Жыл бұрын
Glad it was helpful!
@EkShunya
@EkShunya Жыл бұрын
Thank you U really put in the effort and it shows in your work
@KodeKloud
@KodeKloud Жыл бұрын
Thanks for watching our video and sharing your thoughts. Do subscribe to our channel and stay tuned for more. Cheers!
@username7763
@username7763 10 ай бұрын
Docker doesn't allow applications to run anywhere. Most people who use docker use Linux containers. When they run the Linux containers, they are running them on Linux. If the host OS is Mac or Windows, they run them in a virtual machine in Linux. Docker isn't giving any portability, as you are still running it in Linux. While a normal C program can be compiled to run under those different operating systems. It can also be statically linked so you end up with a single exe with no dependencies. And if you need dependencies, they can be put in a single folder. Call your folder a container if you like. What Docker provides that doesn't normally come with the OS, is the namespace isolation. Which, depending on the program may or may not be a good thing.
@KodeKloud
@KodeKloud 10 ай бұрын
Thanks for watching our video and sharing your thoughts. Do subscribe to our channel and stay tuned for more. Cheers!
@bergweg
@bergweg 10 ай бұрын
Great detailed explanation, thanks!
@KodeKloud
@KodeKloud 10 ай бұрын
Glad it was helpful!
@shivamrawat7523
@shivamrawat7523 Жыл бұрын
platform independent thing can be said for JVM too. what's thats not the replacement for docker?
@toddmaek5436
@toddmaek5436 Жыл бұрын
This is GREAT content.
@KodeKloud
@KodeKloud Жыл бұрын
Thanks for watching our video. Cheers!
@nabinmaiti9167
@nabinmaiti9167 10 ай бұрын
Thank you Mumshad Sir
@KodeKloud
@KodeKloud 10 ай бұрын
Most welcome
@MarkoPetejan
@MarkoPetejan Жыл бұрын
Now I wonder, how does WASM compare against ActiveX (or similar, like Java)? The option of compiling a Windows desktop application into some kind of web module was there two decades ago. There were some security issues, yes, but at the core this seems to me like nothing new. So why are we so excited about it? What changed?
@lcominghome
@lcominghome Жыл бұрын
Java and active x are slow and buggy!
@halfsleeves
@halfsleeves Жыл бұрын
At 14:39 WASM vs Container performance speed. So a C++ code will run faster in WA engine as compared to docker? Because I am pretty sure is WA is almost 50-60% slower than native C++ code. I don't know if docker is even slower in running C++?
@dexterman6361
@dexterman6361 Жыл бұрын
Wouldn't docker running in same-kernel-mode (such as cgroup isolation on linux) be much faster than running them in a vm (jvm, wasm etc)?
@tenthlegionstudios1343
@tenthlegionstudios1343 Жыл бұрын
Amazing explanations! One thing i would add is for the web, WebGL and WebGPU are partially what unlocks games on the browsers as well. not just WASM.
@KodeKloud
@KodeKloud Жыл бұрын
Hi, thanks for checking out our video and for sharing the information. Do subscribe to our channel to stay posted on upcoming tutorials. Cheers!
@premdeepss
@premdeepss 9 ай бұрын
Great session!!
@KodeKloud
@KodeKloud 9 ай бұрын
Thank you! Cheers!
@davidsalgado7372
@davidsalgado7372 Жыл бұрын
Interesting, however you’re wrong about docker performance, it can be slower to load but once loaded it’s by definition more performant because there is no transpilation (conversion from intermediate code to native code) as the wasm would need. Don’t confuse process virtualization (docker) with hardware virtualization (hypervisors) which have a considerable amount of overhead.
@KodeKloud
@KodeKloud Жыл бұрын
Thanks for watching our video and sharing your thoughts. Do subscribe to our channel and stay tuned for more. Cheers!
@marccawood
@marccawood Жыл бұрын
Running binaries in a browser? We were doing this in 1998 with OLE and CreateObject It was removed for security reasons from IE an never supported in Moz/Webkit/Chrime. How is WASM different?
@deeplazydev
@deeplazydev Жыл бұрын
14:20 I do not understand how it is "almost native speed". Could you point me to a benchmark?
@OCTAGRAM
@OCTAGRAM 10 ай бұрын
To counterargument Docker Tweet, when Docker was created, ANDF(TenDRA) already existed. And many other attempts. TenDRA is more functional, it supports exceptions and handling of integer overflow
@zd2600
@zd2600 Жыл бұрын
Good explanation. But I'm wondering how can we differentiate or choose between Java/JRE and WASM. Isn't JRE is about the same concept to write a code once, and run them at every platform ?
@ko-Daegu
@ko-Daegu 11 ай бұрын
can java run fast / low profile / low memory & run in browser ?
@TheMsksk
@TheMsksk Жыл бұрын
9:00 Couldn't I simply compile for multiple targets and share the binary depending on the target? Wouldn't that be much simpler?
@creo4033
@creo4033 Жыл бұрын
If you want to run a SQL database, you can do it in docker, but how could you do the same using webassembly which is only for apps you code yourself?
@m4heshd
@m4heshd 14 күн бұрын
As much as I loved this video, people shouldn't even be comparing these two technologies since they serve completely different purposes in very different manners even though the stack looks a bit similar. Also, Docker is made for server-side applications which a majority of the time, runs on Linux. When Docker containers execute on Linux, they do run at native performance because IT IS running natively since there's no emulation or virtualization going on. Simply think of it as a glorified "chroot". WASM is practically doing what Java with JVM did, but a bit better. Remember applets people? 😏
@ahmadbaghereslami796
@ahmadbaghereslami796 3 ай бұрын
Thanks for demoing everything in code
@KodeKloud
@KodeKloud Ай бұрын
Any time!
@alastairtheduke
@alastairtheduke 2 ай бұрын
Great video. Some constructive criticism: when explaining the basics of docker, don't use terminology used by people familar with it, like 'to up it'.
@KodeKloud
@KodeKloud Ай бұрын
Hello, thank you for watching our video. We are glad that you liked our video. Do subscribe and stay connected with us. Cheers :)
@chethanuc
@chethanuc 9 ай бұрын
15:14 WASM provides high security. How? Containers provide namespace, cgroup, seccomp/selinux security features. Does WASM runtime provide the same features. 15:52 We compare WASM "vs" Docker, but finally ingrate WASM with Docker? If I'm running 3rd party WASM codes in browser, how to provide security? Is browser itself safe?
@moofymoo
@moofymoo Жыл бұрын
where did i heard that compile once run everywhere?
@user-in2nj6hd3u
@user-in2nj6hd3u 21 күн бұрын
👏 👏 👏
@ko-Daegu
@ko-Daegu 11 ай бұрын
14:15 can we say that Docker containers contains OS thou don't think this is correct ?
@BryanChance
@BryanChance Жыл бұрын
What about debugging? Do you do it before compiling to WASM? What kind of debugger does it support? Container is good for large scale deployment of specific app or services, like a fleet of containers running a video encoder. Maintaining and updating docker containers is not easy either. And browser based apps drive me crazy. I have 10+ browser windows open with 20-50+ tabs open. Where is that specific tab I'm looking for? And with ALL the constant browser security issues...I don't want to run my trading app or otherwise in a browser. Do you really want to play a game and accident activate BACK BUTTON? oops....
@ThePandaGuitar
@ThePandaGuitar 10 ай бұрын
This was basically the JVM dream.
@KodeKloud
@KodeKloud 10 ай бұрын
Thanks for watching our video. Cheers!
@muhammadahmod334
@muhammadahmod334 9 ай бұрын
So we can send the backend to the front end? … what’s the implications? Can web assembly be easily reverse engineered?
@KodeKloud
@KodeKloud 9 ай бұрын
"WebAssembly allows you to send parts of the backend to the front end, running code written in languages like C, C++, Rust, and others directly in the browser. This improves performance and responsiveness by reducing the need for frequent server-side round trips. To achieve this: 1. Compile your backend code to WebAssembly, creating a .wasm binary file. 2. Load the WebAssembly code into your front-end application using JavaScript. 3. Interact with the backend logic directly on the front end, calling functions and passing data back and forth. WebAssembly is particularly useful for computationally intensive tasks, such as image or video processing, simulations, or data analytics. However, sensitive operations and certain security-related tasks are generally better suited for server-side processing. It complements JavaScript and opens up new possibilities for creating richer and more interactive web applications."
@harshadmane3124
@harshadmane3124 Жыл бұрын
Thanks Mumshad... Awesome work... Can you please create a video to compare the performance of a RUST web-API (just add two params and return sum) hosted on docker and another using wasm/wasi? This will be practical and really useful.
@everestshadow
@everestshadow Жыл бұрын
It's not practical to write any web back end in wasi yet. The spec for network socket and multi threading is not yet finalized so your question is easily answered and docker is faster for now(for rust web applications)
@KodeKloud
@KodeKloud Жыл бұрын
Hey Harshad, thank you for watching our video. We will definitely look into your suggestions. Do subscribe and stay tuned for updates on our channel. Cheers :)
@harshadmane3124
@harshadmane3124 Жыл бұрын
@@everestshadow Thanks for the feedback. Looks like here they have developed the web-APIs using wasm, kzbin.info/www/bejne/hXjGnmaofcxpaZI
@Phantom-pu1xn
@Phantom-pu1xn Жыл бұрын
What about executing other languages, like Python. I think WASM solves some specific problems better than docker. But, itself cannot replace docker for all the wide ranged problems that docker can solve.
@renegade5942
@renegade5942 Жыл бұрын
I still dont understand why do we need docker if we have wasm, what does docker offer that wasm does not ?
@dynamite-bud
@dynamite-bud Жыл бұрын
Because there's no networking stack so your wasm applications are just limited to system scope and don't do much more than printing hello world or calculating a fibonacci sequence. But there have been projects like fermyon that expose networking in their own way. So you can try them or try Wasmer with custom host functions with gpu, networking and so on.
@renegade5942
@renegade5942 Жыл бұрын
@@dynamite-bud they dont have networking stack so far, but since they started already implementing some of it so in the future they will have a complete functional networking stack, at that point they wouldnt need docker right !
@goodtechdoor
@goodtechdoor Жыл бұрын
Epic.
@KodeKloud
@KodeKloud 11 ай бұрын
Thanks a ton! Your support makes all the difference 💙
@mrwalkan
@mrwalkan Жыл бұрын
1:38 what game is that?
@TheMsksk
@TheMsksk Жыл бұрын
WASM is like Java Bytecode and Wasm Runtime is like the JVM. It's just that any language can be compiled down to WASM unlike Java Bytecode. Is this statement wrong?
@theultimateshield5133
@theultimateshield5133 Жыл бұрын
Bro the content and accent is great😅
@KodeKloud
@KodeKloud Жыл бұрын
Thanks a ton! Your support makes all the difference 💙
@JmbFountain
@JmbFountain Жыл бұрын
So basically, using WASM as an application runtime is like the JVM?
@yiyinyu9679
@yiyinyu9679 Жыл бұрын
Did java try this years ago with Applet? (Don't get me wrong, ilike the content :) one of the challenges I can see for this is test automation, is there any framework to test it with same efficiency as the DOM based websites?
@agatehao
@agatehao Жыл бұрын
It's hard for me to image how WASM handles dynamic languages + system libs
@teknikalyfit
@teknikalyfit Жыл бұрын
It higly looks like old times' activex and java applets. Docker and linux containers solved the problems coming from the serverside code portability. But wasm runs at clientside. The video does not explain the difference.
@softwareengineersdiaryniji
@softwareengineersdiaryniji Жыл бұрын
which difference you talk about?
@teknikalyfit
@teknikalyfit Жыл бұрын
@@softwareengineersdiaryniji how can I write a code that connects to a a db and a message queue and another webservice too and get request from another service in wasm?
@softwareengineersdiaryniji
@softwareengineersdiaryniji Жыл бұрын
this is a high level picture of what is wasm and how it works. (and different from docker) maybe the next video should be more deeper and practical scenario as you mentioned
@KodeKloud
@KodeKloud Жыл бұрын
Thanks for watching our video and sharing your feedback.
@dynamite-bud
@dynamite-bud Жыл бұрын
5:38 you forgot wasmer?
@FuyangLiu
@FuyangLiu Жыл бұрын
"Compile once, runs everywhere"
@michaelzhou985
@michaelzhou985 Жыл бұрын
I don’t see any reason WASM can replace docker. The purpose of docker is also to create a CICD pipeline. I don’t see any tool supporting this pipeline yet.
@motyakskellington7723
@motyakskellington7723 Жыл бұрын
What has changed in 3 years, since wasm/wasi hype first started ?
@KodeKloud
@KodeKloud Жыл бұрын
Thanks for watching our video and sharing your thoughts. Do subscribe to our channel and stay tuned for more. Cheers!
@shubhamsehgal2336
@shubhamsehgal2336 Жыл бұрын
But wasm isn't isolated, is it?
@KodeKloud
@KodeKloud 11 ай бұрын
Each WebAssembly module executes within a sandboxed environment separated from the host runtime using fault isolation techniques. Referent: webassembly.org/docs/security
@burtonrodman
@burtonrodman 3 ай бұрын
While it may be true that Docker may not have been created if WASM had existed, they are still 2 very fundamentally different tools, with different purposes. I for one would not change a thing.
@KodeKloud
@KodeKloud Ай бұрын
Keep learning with us & stay connected .
@wkk17
@wkk17 3 ай бұрын
Oh boy, that's a realy hot take! It feels so wrong... The major difference: an app in Docker is run server side, while a WASM app is executed client side. At least in the default use cases except a few promille. And then a docker image doesn't need a fully fledged filesystem. That's just because the major part of lazy developers only utilizing framework over framework have missed the point.
@arianitonline8748
@arianitonline8748 Жыл бұрын
C#, don't forget C#
@Robert-ht5kd
@Robert-ht5kd Жыл бұрын
Your Docker diagram is incorect. Docker runs on Linux kernel, e.g. on Windows it needs WSL2 to run.
@KodeKloud
@KodeKloud 11 ай бұрын
Thank you for bringing this to our attention. We’re sorry you had a bad experience. We’ll share this feedback to our tech team.
@mehmetedex
@mehmetedex 9 ай бұрын
if this isn't the nirvana of teaching I donno what is
@KodeKloud
@KodeKloud 8 ай бұрын
Hi, we appreciate the kind comment! enjoy!
@KangJangkrik
@KangJangkrik Жыл бұрын
WASM will replace Java
@jonahbranch5625
@jonahbranch5625 Жыл бұрын
True, however lots of things have replaced java already
@KodeKloud
@KodeKloud Жыл бұрын
Thanks for watching our video. Cheers!
@caty863
@caty863 6 ай бұрын
I think I will just skip Docker altogether. I had procrastinated long enough anyway!
@KodeKloud
@KodeKloud 5 ай бұрын
Haha! We wouldn't recommend that though.
@oefzdegoeggl
@oefzdegoeggl 6 ай бұрын
disagree here. the container startup time is irrelevant, unless you programmed complete shit you will have services that run either forever or until the instance gets destroyed or updated, whatever comes first. "near native performance" of wasm? well. no. not even remotely. a native executable within a docker container will run circles around the wasm version. and even multi-platform compatibility is not an issue, docker allows you to package multiple versions (lets say arm + x86) into a single image.
@RayHorn5128088056
@RayHorn5128088056 Жыл бұрын
Docker containers do NOT work exactly as you asserted and Docker can do things WASM cannot.
@bionic_batman
@bionic_batman 3 ай бұрын
Nice, people are reinventing Java all over again Except that this time it is somehow even worse
@KodeKloud
@KodeKloud Ай бұрын
Hope you enjoyed our video! We have a ton more videos like this on our channel. We hope you will join our community!
@softwareengineersdiaryniji
@softwareengineersdiaryniji Жыл бұрын
👏👏👏👏 Great Flow. Keep up the good work!
@KodeKloud
@KodeKloud Жыл бұрын
Thank you 🙌
@ruyvieira104
@ruyvieira104 Жыл бұрын
it's like cgi-bin only a million times more complicated
@KodeKloud
@KodeKloud Жыл бұрын
Thanks for watching our video and sharing your feedback.
@OOpSjm
@OOpSjm Жыл бұрын
Java Applets 2.0
@KodeKloud
@KodeKloud Жыл бұрын
Thanks for watching our video. Cheers!
@simplenumber
@simplenumber 11 ай бұрын
Is it so that Docker runs containers at "slower than native" performance? This is native code that runs directly on the host CPU after all.
@simplenumber
@simplenumber 11 ай бұрын
Thanks a lot for this incredibly educative video though. It got me up to speed with many things I supposed to know for my job😃
@KodeKloud
@KodeKloud 11 ай бұрын
Thank you for the appreciation. You can check our videos related to DevOps and subscribe to our channel to stay updated with all the latest tools.
@RayanMADAO
@RayanMADAO Жыл бұрын
Amazing explanation thank you 🩶
@KodeKloud
@KodeKloud Жыл бұрын
Glad it was helpful!
An introduction to WebAssembly
25:23
Coding Tech
Рет қаралды 184 М.
Kubernetes is dropping Docker support - What does it mean for YOU?
12:22
TechWorld with Nana
Рет қаралды 532 М.
ВИРУСНЫЕ ВИДЕО / Мусорка 😂
00:34
Светлый Voiceover
Рет қаралды 8 МЛН
Genial gadget para almacenar y lavar lentes de Let's GLOW
00:26
Let's GLOW! Spanish
Рет қаралды 38 МЛН
Teenagers Show Kindness by Repairing Grandmother's Old Fence #shorts
00:37
Fabiosa Best Lifehacks
Рет қаралды 3,8 МЛН
They're a tough bunch!! # Superman can't fly # Superman couple # Spider-Man
00:47
Using docker in unusual ways
12:58
Dreams of Code
Рет қаралды 373 М.
Big Tech AI Is A Lie
16:56
Tina Huang
Рет қаралды 50 М.
It's embarrassing how much I like this thing.
12:19
Linus Tech Tips
Рет қаралды 839 М.
How I would Learn DevOps from scratch (if I could start over)
15:15
Docker Crash Course for Absolute Beginners [NEW]
1:07:39
TechWorld with Nana
Рет қаралды 1,3 МЛН
Learning Docker // Getting started!
35:56
Christian Lempa
Рет қаралды 96 М.
How principled coders outperform the competition
11:11
Coderized
Рет қаралды 1,5 МЛН
Why WebAssembly is the future of Web development
7:33
ROULZ
Рет қаралды 179 М.
Фокус
0:10
ekaterina_naturally
Рет қаралды 9 МЛН
Что будет с кроссовком?
0:35
Аришнев
Рет қаралды 1,9 МЛН
ISSEI funny story😂😂😂Strange World | Magic Lips💋
0:36
ISSEI / いっせい
Рет қаралды 10 МЛН
Ну АМБАЛУШКА... 😂😂 #фильмы #сериалы #сериал
0:54