The first couple of times you create a new EC2 instance on AWS this is an easy option to miss, and it defaults to private IP only.
If you want to create an EC2 instance with a public IP, when you create your instance from the dashboard ensure this option is set to ‘Enable’ :