I have 4 servers. 3 on oracle cloud, and 1 on google. So i decided to setup guackamole with docker on one. I did everything, i added my private key, and tried to connect. But i got an error, and the same when i tried to connect from powershell (server sent public key). The key worked before. I tried to connect to the same server where guacamole is running from. I tought that oracle maybe regenerated the key, so i deleted the existing one, and regenerate it, but that failed too. But putty still works, i can still connect with it. Then i tried to use putty to regenerate the original key files, and that failed too. Then i cheked if the key on the server are still mached to the one i regenerated with putty, and they are the same. But i still can't connect. How can i fix this? I really don't know what went wrong.
Just to be sure — you uploaded the public key to your servers, right? In your user's directory on the remote server at ~/.ssh/authorized_keys. Your private key should never leave your system. That's a very common mistake in my experience. The wording of your post makes it seem like you may have done that.
If you uploaded your private key you need to remove that and generate a new key pair anywhere the old keypair was used. That old keypair is now compromised and should never be used again anywhere. IMO you should do that now not tomorrow.
As others mentioned, should be pub key being uploaded. I actually set up an Ansible playbook to do this for me, because it felt tedious. Highly recommend.