Before you can use a CI for continuous delivery, you'll need to set up a deploy automation tool.
A modern project needs to have a simple set of commands to magically update your servers. Contrast this to legacy projects, where deployment may involve manually transfering files and using a browser to invoke certain commands. These tasks need to be automated so they can be repeatable and protected from human errors.
For websites hosted on Heroku, their platform already takes care of deploy automation for you. To update a Heroku website, you simply need to do a
# Deploy your app into Heroku's hosting platform git push heroku master
In other cases, you'd have to use other tools. For Ruby projects, Capistrano is a popular choice. A typical Ruby/Capistrano project would be deployed like so:
# Deploy your app using Capistrano bundle exec cap production deploy
How to set up deployments
There are many different tools for this for many different programming languages. Some popular ones include:
It doesn't matter which solution you pick, as long as your project's deployments are easy, automated, and reliable.
Next: Use your CI to maintain a staging system.