Azure IoT Edge x86 Linux Support - azure-iot-edge

I'm pretty sure the answer is no, but is anyone aware of Azure IoT Edge support for Linux x86 processors? I think the answer is no because I don't see this option listed here https://learn.microsoft.com/en-us/azure/iot-edge/support#operating-systems.
Thanks!

Your intuition is correct. Azure IoT Edge does not support Linux x86 and there are no imminent plans to do so.

Related

Can I run any docker container in Microsoft Iot Edge?

IoT Edge from Microsoft uses docker for managing modules.
Is it possible to run any docker container on a IoT Edge device?
Yes, you can run any kind of docker-based container on IoT Edge as long as the image supports the architecture your Edge device uses (amd64, arm32, etc.) The container does not have to be aware of IoT Edge or even talk to the runtime. In this case the Edge runtime will simply make sure the container is up and running according to your settings.
Azure IoT Edge modules are implemented as containers, so IoT Edge needs a container engine to launch them. Microsoft provides a container engine, moby-engine, to fulfill this requirement. This container engine is based on the Moby open-source project. Docker CE and Docker EE are other popular container engines. They're also based on the Moby open-source project and are compatible with Azure IoT Edge. Microsoft provides best effort support for systems using those container engines; however, Microsoft can't ship fixes for issues in them. For this reason, Microsoft recommends using moby-engine on production systems.
Please refer Azure IoT Edge supported systems for more details.
Also see How to install IoT Edge on Kubernetes (Preview)
Hope this helps.

Can Docker containers run in Windows IoT Core

Is there a way to run a Docker container in Windows IoT Core? I have seen it can be used in Azure, Windows Server and desktop W10 but there is no evidence about Windows IoT Core and I am not sure if some of the already existing installations of docker-engine is compatible with IoT Core or it is just not possible.
Last Friday, Azure IoT Edge v2 launched in Public Preview yesterday with out-of-box support for native Windows containers! There is even a how-to for deploying on Windows IoT Core with a compatible x64-based board*.
First party modules like Azure Functions, Azure Stream Analytics, Modbus and a cool developer experience in VS Code for authoring custom modules all work great with Windows containers on both Windows 10 and IoT Core.
*Note: Windows containers require x64-based processor support, they won’t work on ARM32-based devices like Raspberry Pi.
As of IoT Core version 16299, released on 17 October, this feature is in preview.
https://developer.microsoft.com/en-us/windows/iot/docs/whatsnew
You can run Nano Server Core containers on 64-bit Windows 10 IoT core. It is likely to be amd64 only at this point.
The short answer is, no. This is because Windows 10 IoT Core is an OS that supports a set of features that overlap with Windows 10 desktop, but there is no version of Docker that runs on that currently. Off the top of my head, there would be a few concerns with creating such a version. First, the implementation of Docker would have to be runnable (use features that the OS supports), and second, the features utilized in the container would need to be virtualized by Docker in form that are supported in Windows 10 IoT Core. Third, the hardware running Windows 10 IoT Core (and Docker and its container) would have to support all these functions. Maybe some do and some don't. The problem might be whether or not the hardware such as a Raspberry Pi or Minnowboard supports virtualization in a way that this would be a practical scenario.

Getting access to GPU on Docker on Windows 10

I notice that nvidia has support for GPU and Docker, but I believe this is only for linux at the moment. Has anyone got it working on windows 10?
In particular, I'm hoping to get access to it for machine learning applications.
https://github.com/NVIDIA/nvidia-docker
Since Docker uses Virtualbox to work on Windows, and Virtualbox will not expose CUDA to the guest without PCI passthrough, I think it will not be possible to do this as you are thinking.
For 2018-01, it looks like no one was able to make it work yet.
Moreover, they say (#29, #197) it would require DDA (PCI passthrough), so, theoretically it should be possible to make it work on Windows Server 2016, but not on Windows-10. But even for Windows Server 2016 - I've not found any success stories.
Seems that in Windows 10 Docker does not uses Virtualbox to work in Windows. So it may work.
https://msdn.microsoft.com/en-us/virtualization/windowscontainers/quick_start/quick_start_windows_10

Creating docker container with HP UX and IBM AIX

Can i create a docker container with HP UX and IBM AIX, if so please let me know how to do it?
I tried by creating container from HP UX tar, it got created and i got conatiner id but unable to login in to the container.
Let me know where i am doing wrong.
If you look in the FAQ https://docs.docker.com/faq/ you will see as supported
Ubuntu 12.04, 13.04 et al
Fedora 19/20+
RHEL 6.5+
Centos 6+
Gentoo
ArchLinux
openSUSE 12.3+
CRUX 3.0+
This github issue is closed at the moment https://github.com/docker/docker/issues/3546 but that could change. What you try to do is not supposed to work at the moment (which says nothing about the technical possibility)
The IBM developerWorks site has a guide on how to do this, I'm currently doing similar work on Z at the moment.
Docker on POWER at developerWorks
No. It is impossible to build AIX and HP-UX docker containers because the AIX and HP-UX are totally different operation systems with differently build closed SystemV kernels running only on RISC based CPU's compared to the wide spread Linux distributions running on almost everything.
If you have applications that only runs on AIX or HP-UX but you want them in a container, AIX has the option of using Workload Partitions, which is almost comparable with containerization.

How to install Torch on windows 8.1?

Torch is a scientific computing framework with wide support for machine learning algorithms. It is easy to use and efficient, thanks to an easy and fast scripting language, LuaJIT, and an underlying C/CUDA implementation.
Q:
Is there a way to install torch on MS Windows 8.1?
I got it installed and running on Windows (although not 8.1, but I don't expect the process to be different) following instructions in this repository; it's now deprecated, but wasn't deprecated few months ago when I built it. The new instructions point to torch/torch7 repository, but it has a different structure and I haven't been able to build it on Windows yet.
There are instructions on how to install Torch7 from luarocks, but you may run into issues on windows as well; I haven't tried this process. It seems like there is no official support for Windows yet, but some work is being done by contributors (there is a link to a pull request in that thread).
Based on my experience, compiling that deprecated repo may be your best option on Windows at the moment.
Update (7/9/2015): I've recently submitted several changes that fix compilation issues with mingw, so you may try the most recent version of torch7 and follow the build instructions in the ticket. Note that the changes only apply to the core lib and additional libraries may need similar changes.
This webpage hosted by New York University recommends installing a Linux virtual machine in order to run Torch7 on Windows through Linux. Another option would off course be to install a Linux dist in parallel with Windows 8.
Otherwise, if you don't mind running an older version of Torch, there is a Windows installer for Torch5 at SourceForge.
I think to use a GPU from inside the virtual machine, the processor and the motherboard should not only support VT-x , but VT-d should be supported too.
But the question is, if I use a CPU with VT-d supported, do you think there will be a significant loss in PCIe connections efficiency?
From what I understand,
VT-d is important if I want to give the virtual machines direct access to my hardware components (like PCI Express cards). Like directly attach graphics card to vm instead of host machine. Isn't that mean that the PCIe connections efficiency will be the same just like if it was the host?

Resources