Slice the leeks and celery, chop the carrots and garlic.
Heat the oil in a pan, gently cook the leek, carrot, celery and the bacon for about 8 minutes, or until soft.
Add the garlic and chilli flakes, stir for 1 minute, then pour in the stock.
Drain the beans, rinse under running water, drain again and add to the soup.
Bring to the boil then simmer for 10 minutes.
Cut the cabbage into thin ribbons, rinse well, then add to the soup. Put the lid on and cook for about 5 minutes.
Serve with grated Parmesan and wholesome bread.