As you remarked correctly, the eigenvalues, with multiplicity, are $0,0,3$.
A matrix is diagonalizable if and only of for each eigenvalue the dimension of the eigenspace is equal to the multiplicity of the eigenvalue.
For the eigenvalue $3$ this is trivially true as its multiplicity is only one and you can certainly find one nonzero eigenvector associated to it.
For the eigenvector $0$ however you would need to find $2$ linearly indepedent eigenvectors Yet as you said, indirectly, the eigenspace associated to $0$ is the space generated by $(1,0,0)$. Its dimension is thus one and you cannot find two independent eigenvectors for the eigenvalue $0$.
The matrix is thus not diagonalizable.
Necessary conditions for diagonalizable include:
There exists a basis of eigenvectors, which in you case would mean there exist $3$ linearly independent eigenvectors. (This is almost what you said, but note that I said "there exists" and not "the three eigenvectors" since there are infinitely many eigenvectors.)
For each eigenvalue the dimension of the respective eigenspace is equal to the multiplicity of the eigenvalue. (As mentioned at the start.)