It depends on the Bootstrap version, and how you want the content aligned, but generally containers are required...
Version 3.x
"Rows must be placed within a .container (fixed-width) or
.container-fluid (full-width) for proper alignment and padding."
Version 4.x
"Containers are the most basic layout element in Bootstrap and are
required when using our default grid system."
The top level element of the grid system is the .row
, and therefore row's should be the immediate child of a container. Bootstrap 4 is more flexible in that rows & columns can be created without gutters, and the spacing utils can be used to adjust padding and margins.