It’s going to depend on your mesh.
If your mesh looks like this, you can use a follow active quads mapping:
Select one face, u->reset. select linked, u->follow active quads, confirm, in 3D editor, probably followed by ctrl-p pack islands in UV editor.
If you make a mesh that makes a circle via a curve modifier, (or, on an actual curve object), without any generative modifiers after the curve modifier, you can use generated coordinates to follow the curve:
With a arbitrary topology, but curved only within a plane, you can use polar object coordinates:
A curve object automatically comes with a follow-active-quads styled UV mapping if you want.
UV and generated coord solutions are going to give you a high degree of distortion-- you’ll be able to see the triangulation of your mesh if you look closely enough. (How closely depends on the vert count.) The polar coordinates are nice, if you can use them, because they’re per-sample coordinates rather than interpolated, per-vertex coordinates.