I just had this same problem on archlinux. I think there’s two main ways this error can happen (as far as I can tell from these stackoverflow explanations):
Your terminal really doesn’t work as a TTY (rare on linux, more likely on Windows)
For whatever reason, your terminal isn’t being treated as the input
I believe 2 is the culprit here, at least in my case. go run ./build/docker-compose-generator/main.go mysql postgres inbucket minio is piped into the docker command, so the pipe is the actual input, not the terminal. That go command just outputs some configuration to stdout, which is then piped to stdin for the docker-compose command (the -f /dev/stdin part), so if you instead output that to a temp file and use the temp file instead of stdin for docker-compose, it all works (for me).
All that said, here’s my somewhat janky workaround. In Makefile, replace:
$(GO) run ./build/docker-compose-generator/main.go $(ENABLED_DOCKER_SERVI
CES) | docker-compose -f docker-compose.makefile.yml -f /dev/stdin $(DOCKER_COMPOSE_OVERRIDE) run --rm start_dependencies
With:
$(GO) run ./build/docker-compose-generator/main.go $(ENABLED_DOCKER_SERVICES) > temp.docker-compose.config.yml
docker-compose -f docker-compose.makefile.yml -f temp.docker-compose.config.yml $(DOCKER_COMPOSE_OVERRIDE) run --rm start_dependencies
rm temp.docker-compose.config.yml
I’m sure there’s a better way to do that, but it’s functional. As for why this problem is affecting us now, even though the code has been like this for a while without anyone reporting an issue, I have no idea. I checkout out some commits from a year ago and I had the same problem. That seems to suggest there’s been a change to something outside the mattermost-server repo, but I’ve never tried to build it from source before so idk. Hopefully someone more in the know can tell us.