Když vytvoříte nový kontejner v dockeru pomocí docker run
a nezadáte parametr --name
, docker vytvoří kontejner a pojmenuje ho podle sebe. Vznikají tak zajímavé názvy jako: dazzling_swanson, loving_shockley, wonderful_curran či suspicious_knuth. Jedná se o jména vědců + přídavné jméno. Například Shockley se odkazuje na William Shockley co-invented the transistor – https://en.wikipedia.org/wiki/William_Shockley, Curran na Samuel Curran was an Irish physicist who worked alongside his wife during WWII and invented the proximity fuse čí Knuth na Donald Knuth – American computer scientist, author of „The Art of Computer Programming“ and creator of the TeX typesetting system. https://en.wikipedia.org/wiki/Donald_Knuth.
Nikdy ale kontejner nebude pojmenován boring_wozniak. Proč? Protože Steve Wozniak is not boring:
if name == "boring_wozniak" /* Steve Wozniak is not boring */ { goto begin }
Zde je celý kód metody generující názvy:
func GetRandomName(retry int) string { begin: name := fmt.Sprintf("%s_%s", left[rand.Intn(len(left))], right[rand.Intn(len(right))]) if name == "boring_wozniak" /* Steve Wozniak is not boring */ { goto begin } if retry > 0 { name = fmt.Sprintf("%s%d", name, rand.Intn(10)) } return name }