Spawn objects at random position ON a 2D object.

I want to make a spawner which is supposed to be a rectangle. I want to make just one rectangle instead of making 15 small circles and then spawn objects on one of them. I want to take a random position which is inside/on the rectangle and then spawn the object in the area inside/on the rectangle like this:

If you have a RectTransform component on your object you could do this:

private RectTransform rt;

void Start () {
     rt = GetComponent<RectTransform>();
     //instantiate your dot in the bounds of that recttransform
     for (int i = 0; i < 15; i++) {
            Instantiate(dot, new Vector3(Random.Range(rt.rect.xMin, rt.rect.xMax), 
                  Random.Range(rt.rect.yMin, rt.rect.yMax), 0) + rt.transform.position , Quaternion.identity);