You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
IoT Edge moves your existing business logic to devices operating at the edge. To prepare your applications and workloads to run as [IoT Edge modules](iot-edge-modules.md), you need to build them as containers. This article provides guidance around how to configure your development environment so that you can successfully create an IoT Edge solution. Once you have your development environment set up, you can learn how to [develop your own IoT Edge modules](module-development.md).
16
+
IoT Edge moves your existing business logic to devices operating at the edge. To prepare your applications and workloads to run as [IoT Edge modules](iot-edge-modules.md), you need to build them as containers. This article provides guidance on how to configure your development environment so that you can successfully create an IoT Edge solution. Once you set up your development environment, you can learn how to [develop your own IoT Edge modules](module-development.md).
17
17
18
-
In any IoT Edge solution, there are at least two machines to consider: the IoT Edge device (or devices) that runs the IoT Edge module, and the development machine that builds, tests, and deploys modules. This article focuses primarily on the development machine. For testing purposes, the two machines can be the same. You can run IoT Edge on your development machine and deploy modules to it.
18
+
In any IoT Edge solution, consider at least two machines: the IoT Edge device (or devices) that runs the IoT Edge module, and the development machine that builds, tests, and deploys modules. This article focuses primarily on the development machine. For testing purposes, the two machines can be the same. You can run IoT Edge on your development machine and deploy modules to it.
19
19
20
20
## Operating system
21
21
22
22
IoT Edge runs on a specific set of [supported operating systems](support.md). When developing for IoT Edge, you can use most operating systems that can run a container engine. The container engine is a requirement on the development machine to build your modules as containers and push them to a container registry.
23
23
24
24
If your development machine can't run IoT Edge, skip to the [Testing tools](#testing-tools) section of this article to learn how to test and debug locally.
25
25
26
-
The operating systems of the development machine and IoT Edge devices don't need to match. However, the container operating system must be consistent with the development machine and the IoT Edge device. For example, you can develop modules on a Windows machine and deploy them to a Linux device. The Windows machine needs to run Linux containers to build the modules for the Linux device.
26
+
The operating systems of the development machine and IoT Edge devices don't need to match. However, the container operating system must be consistent between the development machine and the IoT Edge device. For example, you can develop modules on a Windows machine and deploy them to a Linux device. The Windows machine needs to run Linux containers to build the modules for the Linux device.
27
27
28
28
## Container engine
29
29
30
30
The central concept of IoT Edge is that you can remotely deploy your business and cloud logic to devices by packaging it into containers. To build containers, you need a container engine on your development machine.
31
31
32
-
Any container engine compatible with the Open Container Initiative, like Docker, is capable of building IoT Edge module images. Moby is the supported container engine for IoT Edge devices in production. If you're using Ubuntu Core snaps, the Docker snap is serviced by Canonical and supported for production scenarios.
32
+
Any container engine compatible with the Open Container Initiative, like Docker, is capable of building IoT Edge module images. Moby is the supported container engine for IoT Edge devices in production. If you're using Ubuntu Core snaps, Canonical services the Docker snap and supports it for production scenarios.
33
33
34
34
## Development tools
35
35
@@ -65,9 +65,9 @@ The Azure IoT Edge tools for Visual Studio provide an IoT Edge module template b
65
65
66
66
## Testing tools
67
67
68
-
Several testing tools exist to help you simulate IoT Edge devices or debug modules more efficiently. The following table shows a high-level comparison between the tools and the following individual sections describe each tool more specifically.
68
+
Several testing tools exist to help you simulate IoT Edge devices or debug modules more efficiently. The following table shows a high-level comparison between the tools. The following individual sections describe each tool more specifically.
69
69
70
-
Only the IoT Edge runtime is supported for production deployments, but the following tools allow you to simulate or easily create IoT Edge devices for development and testing purposes. These tools aren't mutually exclusive, but can work together for a complete development experience.
70
+
Only the IoT Edge runtime supports production deployments, but the following tools support development and testing. Use these tools to simulate or easily create IoT Edge devices. These tools aren't mutually exclusive, but can work together for a complete development experience.
71
71
72
72
| Tool | Also known as | Supported platforms | Best for |
@@ -78,7 +78,7 @@ Only the IoT Edge runtime is supported for production deployments, but the follo
78
78
79
79
The Azure IoT EdgeHub Dev Tool provides a local development and debug experience. The tool helps start IoT Edge modules without the IoT Edge runtime so that you can create, develop, test, run, and debug IoT Edge modules and solutions locally. You don't have to push images to a container registry and deploy them to a device for testing.
80
80
81
-
The IoT EdgeHub Dev Tool was designed to work in tandem with the Visual Studio and Visual Studio Code extensions, and with the IoT Edge Dev Tool. The dev tool supports inner loop development and outer loop testing, so it integrates with other DevOps tools too.
81
+
The IoT EdgeHub Dev Tool works with the Visual Studio and Visual Studio Code extensions, and with the IoT Edge Dev Tool. The dev tool supports inner loop development and outer loop testing, so it integrates with other DevOps tools too.
82
82
83
83
> [!IMPORTANT]
84
84
> The IoT EdgeHub Dev Tool is in [maintenance mode](https://github.com/Azure/iotedgehubdev/issues/396). Consider using a [Linux virtual machine with IoT Edge runtime installed](quickstart-linux.md), physical device, or [EFLOW](https://github.com/Azure/iotedge-eflow).
@@ -93,9 +93,9 @@ For more information, see [Azure IoT Edge Dev Container](https://github.com/Azur
93
93
94
94
## DevOps tools
95
95
96
-
When you're ready to develop at-scale solutions for extensive production scenarios, take advantage of modern DevOps principles including automation, monitoring, and streamlined software engineering processes. IoT Edge has extensions to support DevOps tools including Azure DevOps, Azure DevOps Projects, and Jenkins. If you want to customize an existing pipeline or use a different DevOps tool like CircleCI or TravisCI, you can do so with the CLI features included in the IoT Edge Dev Tool.
96
+
When you're ready to develop at-scale solutions for extensive production scenarios, take advantage of modern DevOps principles including automation, monitoring, and streamlined software engineering processes. IoT Edge has extensions to support DevOps tools including Azure DevOps, Azure DevOps Projects, and Jenkins. If you want to customize an existing pipeline or use a different DevOps tool like CircleCI or TravisCI, use the CLI features included in the IoT Edge Dev Tool.
97
97
98
-
For more information, guidance, and examples, see the following pages:
98
+
## Next steps
99
99
100
100
*[Continuous integration and continuous deployment to Azure IoT Edge devices](how-to-continuous-integration-continuous-deployment.md)
0 commit comments