Jordan Morris, 22, was stabbed to death at the men's night shelter in Hereford Street on 10 March.
A 67-year-old man who has name suppression had been charged with his murder.
At an appearance at the Christchurch High Court on Friday morning, Crown Prosecutor Mitchell McClenaghan said the man was under serious physical attack when he stabbed Morris once in the abdomen, causing his death.
The witness accounts were conclusive the accused was under serious physical attack at the time of the stabbing.
There was no prospect of the Crown disproving self-defence, McClenaghan said.
Justice Cameron Mander discharged the man on the charge of murder.
Christchurch City Missioner Corinne Haines has previously said it was "tragic" that such an event would happen on the organisation's premises.
"We offer our thoughts and prayers to the families of those affected and deeply appreciate the efforts of our amazing staff along with emergency services," she said.