Exist check uses IP without port in the WHERE clause, but creates the cert with the port number in the name.
Current:
USE MASTER
GO
IF EXISTS (SELECT * FROM sys.credentials WHERE name = 's3:///backups')
DROP CREDENTIAL [s3://:9000/backups];
GO
Should be:
USE MASTER
GO
IF EXISTS (SELECT * FROM sys.credentials WHERE name = 's3://:9000/backups')
DROP CREDENTIAL [s3://:9000/backups];
GO