Configuration File
The docker registry, which shall be used by the devices, needs to be configured in the WDS server.
For this the user may add a file to the existing folder "C:\ProgramData\WAGO Software\WAGO Device Sphere\WDS\Config".
The file name corresponds to the template custom<name>.json (for example: customDocker.json or customSettings.json).
Add or set the following configuration option into this file:
"ContainerRegistry": {
"Location": "<registry host:port>",
"Repository": "<repository>",
"ConfigureInsecureRegistry": <true | false>
}
Setting | Description | Example |
---|---|---|
Location | Hostname and port of the registry | wdsserver:5000 |
Repository | Repository within the registry. | wds-agents |
ConfigureInsecureRegistry | boolean flag which indicates whether the docke registry shall be configured as an insecure registry on the device. If this is set to true, the specified Location will added to the "insecure-registries" array in the docker daemon config file. |
During the enrollment process, the device wil attempt to pull the image
[<Location>][/<Repository>/]<Image>
<Image> will be evaluated by the device and is specifc for the device type and firmware version.
The publicly available registry can be configured with the following settings:
"ContainerRegistry": {
"Location": "docker.cloudsmith.io",
"Repository": "wago/wds-agents",
"ConfigureInsecureRegistry": false
}
If portainer mode is to be supported, the portainer installation, which shall be used also needs to be configured in the WDS server.
Add or set the following configuration option in the custom settings file, that is described above:
"Portainer": {
"Api": "<api url>",
"User": "admin",
"Password": "<password>",
"PortainerAppProxy": "<proxy url>",
"PortainerTunnelProxy": "<tunnel proxy url>",
"InsecureAgentPoll": <true | false>,
"PullPublicEdgeAgent": <true | false>
}
Setting | Description | Example |
---|---|---|
Api | Url of the portainer api. This must include the relative path /api. | |
InsecureAgentPoll | Flag indicating whether the portainer edge agent shall use the EDGE_INSECURE_POLL option. This will allow the usage of self-signed certificates. | true or false |
PortainerAppProxy | Portainer url as 'seen' from the device. (without /api). This may be different from the Api if the installation is using a reverse proxy or some other form of deployment. | |
PortainerTunnelProxy | Portainer web socket url as 'seen' from the device. The protocol (http | https) may or my not be required, depending on the deployment scenario. |
PullPublicEdgeAgent | Flag indicating whether the portainer edge agent shall be pulled from the docker hub instead from the configured container registry. | true or false |
Example "customPortainer.json":
{
"ContainerRegistry": {
"Location": "wdsserver:5000",
"Repository": "wds-agents",
"ConfigureInsecureRegistry": true
},
"Portainer": {
"Api" : "http://pc-sg-cdr-1:9000/api",
"User": "admin",
"Password": "wagowagowago",
"PortainerAppProxy" : "http://pc-sg-cdr-1:9000",
"PortainerTunnelProxy": "http://pc-sg-cdr-1:8000",
"InsecureAgentPoll": true,
"PullPublicEdgeAgent": true
},
}