There are several ways to unwrap an object, if you choose to mark seams, you need to create as many seams as necessary, and put them where you want Blender to cut off the UVs, as if it was peeling an orange. For example here I've cut along all these edges, then unwrap, and it worked fine:
See the UV Editor, with these seams the UVs are rather good. If you canwant to make a seamless texture you'll need a procedural texture, or you'll need to paint the joint with the stencil option for example: