Failed to start service as cannot bind to address

I am getting an issue following moving my device between applications

Failed to start service 'proxy sha256:e443ead5065ad46d34e4844120007b9a6a336a2002cd3e7a3f3370ec7aa361a2' due to '(HTTP code 500) server error - driver failed programming external connectivity on endpoint proxy_788930_745504 (8544b69145a63fada1ad0bbd2c04317148649c28d082af2c6748bfef14b853b3): Bind for 0.0.0.0:80 failed: port is already allocated '

It keeps restarting all the other services as a result of the proxy service not working.

Is there anything I can do to interrogate the problem further?

I managed to resolve the issue by updating belana host os

@hpgmiskin thanks for letting us know!

@hpgmiskin just for our records, can you tell us what OS version had the problem? And which one you updated to? Also what device type are you using?

@imrehg it is a Raspberry Pi 3 b+ and I think it was running v2.24 of balenaOS.

I am not sure if it was a bug in the original os that was the problem or it had just got stuck in a state which was resolved by updating the OS. I had previously tried rebooting and doing a physical power cycle to no avail.

Hello, got the same issue on client site.
As i get, there was power fail and restore. After boot we got these messages (see below). Reboot from balena resolves issue.

Device: Raspberry Pi Zero W
Host OS: balenaOS 2.29.0+rev1
Supervisor: 9.0.1

docker-compose.yml:

version: ‘2’
volumes:
resin-data:
services:
core:
build: ./core
privileged: true
volumes:
- ‘resin-data:/data’
labels:
io.balena.features.dbus: ‘1’
io.balena.features.supervisor-api: ‘1’
expose:
- “5000”
ports:
- “5000”
azure_iot:
build: ./azure_iot
volumes:
- ‘resin-data:/data’
dashboard:
build: ./dashboard
volumes:
- ‘resin-data:/data’
ports:
- “80:8080”

Error messages in log:

05.02.19 10:22:02 (+0700) Starting service ‘core sha256:67ea12a742eaf0396788788442be5a3e95a3f198c61a5f2f84fb8978436175e5’
05.02.19 10:22:02 (+0700) Starting service ‘azure_iot sha256:59d85f3e1463adeeb53e89a77c1511b0a55a10296ebe8c1bf8fff6206ef5c33f’
05.02.19 10:22:02 (+0700) Starting service ‘dashboard sha256:36c17d5930b40ac13b3d687be97ab66c8115f2ebdcb14b863b19a2f7cbca6bd3’
05.02.19 10:22:08 (+0700) Failed to start service ‘dashboard sha256:36c17d5930b40ac13b3d687be97ab66c8115f2ebdcb14b863b19a2f7cbca6bd3’ due to '(HTTP code 500) server error - driver failed programming external connectivity on endpoint dashboard_858847_778233 (595d29504082a8b01d3dbea2239b788b13768c45aa1e02ff306f737ff9a4833f): Bind for 0.0.0.0:80 failed: port is already allocated ’
05.02.19 10:22:16 (+0700) Started service ‘azure_iot sha256:59d85f3e1463adeeb53e89a77c1511b0a55a10296ebe8c1bf8fff6206ef5c33f’
05.02.19 10:22:19 (+0700) Starting service ‘core sha256:67ea12a742eaf0396788788442be5a3e95a3f198c61a5f2f84fb8978436175e5’
05.02.19 10:22:19 (+0700) Installing service ‘dashboard sha256:36c17d5930b40ac13b3d687be97ab66c8115f2ebdcb14b863b19a2f7cbca6bd3’
05.02.19 10:22:20 (+0700) Failed to start service ‘core sha256:67ea12a742eaf0396788788442be5a3e95a3f198c61a5f2f84fb8978436175e5’ due to '(HTTP code 500) server error - driver failed programming external connectivity on endpoint core_858845_778233 (408d9a2a4ec9daafe899a0cca37bbc13ade378f5e6ac8a758f9ee3a39a76840f): Bind for 0.0.0.0:5000 failed: port is already allocated ’
05.02.19 10:22:20 (+0700) Failed to start service ‘core sha256:67ea12a742eaf0396788788442be5a3e95a3f198c61a5f2f84fb8978436175e5’ due to '(HTTP code 409) unexpected - container is marked for removal and cannot be started ’

Hello !
Our suspicion is that there is an application container instance left over at the same port that prevents the new one starting. Next time this happens - could you run balena ps to see if your app container is listed twice there ? That would help. Thanks !

1 Like

Ok, will do
It looks like true. On another device i got serial port busy when restarting container (seems after power failure). The same app on older resin os gives me no issues

Hey there! Have you had a chance to try the balena ps suggestion?

Hi,
Unfortunately, device is at the customer’s place. I can’t experiment much. Wait for issue repetition