I am getting this error, when trying to push a new app to a raspberryPi "data/services should NOT have additional properties"

ValidationError: data/services should NOT have additional properties

at normalizeObjectToComposition (/Users/<username>/.local/share/balena-cli/client/23.2.14-df95136/node_modules/@balena/compose/dist/parse/compose.js:90:19)

at Object.normalize (/Users/<username>/.local/share/balena-cli/client/23.2.14-df95136/node_modules/@balena/compose/dist/parse/compose.js:50:16)

at createProject (/Users/<username>/.local/share/balena-cli/client/23.2.14-df95136/build/utils/compose.js:26:33)

at getServiceDirsFromComposition (/Users/<username>/.local/share/balena-cli/client/23.2.14-df95136/build/utils/compose_ts.js:363:27)

at async tarDirectory (/Users/<username>/.local/share/balena-cli/client/23.2.14-df95136/build/utils/compose_ts.js:396:25)

at async getTarStream (/Users/<username>/.local/share/balena-cli/client/23.2.14-df95136/build/utils/remote-build.js:210:27)

at async getRemoteBuildStream (/Users/<username>/.local/share/balena-cli/client/23.2.14-df95136/build/utils/remote-build.js:274:23)

at async Object.startRemoteBuild (/Users/<username>/.local/share/balena-cli/client/23.2.14-df95136/build/utils/remote-build.js:39:36)

at async PushCmd.pushToCloud (/Users/<username>/.local/share/balena-cli/client/23.2.14-df95136/build/commands/push/index.js:78:27)

at async PushCmd.run (/Users/<username>/.local/share/balena-cli/client/23.2.14-df95136/build/commands/push/index.js:31:17)

This is usually caused by a syntax error in your Dockerfile/docker-compose file. If you are able to post them here we can take a look.

I discovered it was because I was using bind mounts. I switched to named volumes and removed the host path for the volume, and it now works.

For others that may have the same issue, I found the answer here: Multiple containers | balena