Discourse-setup fails when pups tries to create symbolic link

The error stems from attempting to create symlinks for log files, but files with those names already exist

Before running discourse-setup, remove files like production.log, production_errors.log, etc. in /var/www/discourse/log. This allows the symlink commands to succeed.
Example:

rm /var/www/discourse/log/production.log
rm /var/www/discourse/log/production_errors.log
rm /var/www/discourse/log/unicorn.stdout.log
rm /var/www/discourse/log/unicorn.stderr.log
rm /var/www/discourse/log/sidekiq.log

Then, re-run the setup.

Also, The file/folder ownership inside the container should typically be for the discourse user, not root or your host user. If files are pre-created on the host by the wrong user or with incorrect permissions, setup may fail.