A combination of containers, shelves, and hanging baskets works really well to create a complete garden in a small space such as a patio or balcony.
If you can tackle a project like building a frame with cross-supports and built-in shelves, this also works quite well and can be an attractive feature in your landscape or on the deck or patio. Below are the plans for my personal favorite Do-It-Yourself vertical garden.
Feel free to take this idea and make it your own. Like I said, if it can hold soil, plants can grow in it.