Skip to content

Creating a Layer 2 network access

Some Edge Apps need to communicate with automation devices via automation protocols, such as Profinet, DCP and LLDP. That means, these Edge Apps require a Layer 2 (L2) network access. This Layer 2 network access must be used only for communication with automation devices, it is not designed to provide communication between app containers. For communication between app containers, standard app container communication means must be used.

Layer 2 network access in a docker-compose.yml

  • Connect container to a network with name zzz_layer2_net1.
  • Specify an network zzz_layer2_net1 from type external and the name zzz_layer2_net1.
  • Both names must be the same.

If container-container communication is required, e.g. two services in an app, you have to define an extra network (e.g. a Docker Bridge network).

You can find further information about networking in a docker compose on the internet.

Procedure via file import

  1. Add version to an Edge App.

  2. To import a customized YAML file, click Import YAML file and select the file from your local system.
    The network name of the service must be the same as the network name of the external network. Use the name zzz_layer2_net1.

  3. To review the content of the YAML file, click Review.
    The section cap_add is only needed, if the service needs capabilities.
    step 3

Procedure via configuration dialogs

  1. Add version to an Edge App.

  2. Assign a service and image name in the Configuration Page.

  3. Set at least 5 MB as memory limit in the System Page.

  4. To open the dialog Networks, click Add App-level Configuration and select Networks.

  5. To generate a Layer 2 network access, fill in the dialog as follows:

    • Search external and select the first item.
    • Enter zzz_layer2_net1 to Network Name.
    • Enter the same name zzz_layer2_net1 to Name.
      step 5.1
      step 5.2
  6. To confirm the entries, click Save.

  7. To generate a network for communication between containers, click Add App-level Configuration and fill in the dialog as follows:

    • Enter a name to Network Name. The name of the network must come before zzz_layer2_net1 in the alphabet.
    • Deactivate the checkbox External.
  8. Select the networks from the drop-down menu Networks in the Add-on page.
    step 8

  9. To confirm the changes, click Save.

  10. To review the content of the configured YAML file, click Review.
    Example for the structure of the file:
    step 10

NOTICE

Adding capabilities
If an app service needs additional capabilities, you must import the completed YAML file with the required capabilities via the Import YAML button.

Network Interface Allocation (NIC) in a docker-compose.yml

A network interface is assigned exclusively to the application instance on supporting devices. The exact NIC is chosen by the device operator. The isolated NIC will be invisible to the rest of the system. It allows the application to have more predictable communication over the network. This is particularly useful for applications that require real-time capabilities.

  1. Add version to an Edge App.

  2. Assign a service and image name in the configuration page.

  3. Set at least 25 MB as memory limit in the system page.

  4. To open the dialog Networks, click Add App-level Configuration and select Networks.

  5. To generate a NIC network access, fill in the dialog as follows:

    • Enter my_isolated_network to Network Name.
    • Select the iedge from the drop-down menu Driver.
      step 5
  6. To confirm the entries, click Save.

  7. Select the networks from the drop-down menu Networks in the Add-on page.
    step 8

  8. To confirm the changes, click Save.

  9. To review the content of the configured YAML file, click Review.
    Example for the structure of the file:
    step 10