Scaling up with the AWS cloud is easy, as at any moment, with a simple click on the AWS console, you can change the hardware and use more memory, CPU, or better network. Scale-out is not hard; however, we need to have good automation in place. The key principle to scale is to have the Auto Scaling groups in place with good policies. You can learn more about it at http://docs.aws.amazon.com/autoscaling/latest/userguide/policy_creating.html.
There are other interesting services and components that can help you scale your application. However, you will need to keep in mind that this can lead to coupling. The IT industry is moving toward the container direction because it is faster, and it's easy to deploy in other public clouds.
We can scale out with Docker as well, because there are cluster managers that can help us scale our containers. Currently, there are several solutions. In the sense of capabilities and maturity, the following are...