Using a mandolin or knife, peel and thinly slice the onions.
Add olive oil ad butter to a large saucepan or dutch oven and add onions.minced garlic, thyme sprigs, bay leaf to a skillet. Stir frequently to prevent burning for about 30 min or until they are super soft and golden. If pan gets dry, add a splash of chicken stock.
Raise the heat and add white wine and bring to a boil. When it’s reduced by half, add stock and simmer for about 25 minutes. Remove thyme and bay leaves and stir in the port.
Preheat oven to broil and grate cheese. Coat bread in olive oil and cook 2-3 min per side until nice and crispy. Cut into bite sized croutons.
Ladle soup into each of the cocotte and top with croutons and lots of gruyere cheese. Broil for about 5 min or until all browned and bubbly.