You first have to make sure that your system is solvable: this happens iff the right-hand side $b$ is orthogonal to the kernel of $A$. If $A$ has a dimension-1 kernel spanned by $v$, you need to have $v^* b=0$. If that is not the case, then go back to the modelling stage and ask yourself if what you did makes sense.
Convergence of iterative methods for singular systems is tricky in general, but for positive-semidefinite matrices and CG all works nicely: CG will converge on your singular system without any modifications. More precisely, it will converge to the unique solution orthogonal to the kernel ($v^Tx=0$), which is also the minimum-norm one.
For a proof, see Convergence of the Conjugate Gradient Method on Singular Systems. Intuitively, what happens is that, after a suitable orthogonal change of basis, you are solving the system
$$
\begin{bmatrix}
A_{11} & 0\\
0 & 0
\end{bmatrix}
\begin{bmatrix}
x_1\\
x_2
\end{bmatrix}
=
\begin{bmatrix}
b_1\\0
\end{bmatrix},
$$
with $A_{11}$ positive definite. In this form, it is not complicated to see that all the iterates that CG produces have a zero in their second block: $(x_k)_2=0$, for each $k$. In addition, the iterates coincide with the ones that you'd get by applying CG to the (nonsingular) linear system $A_{11}x_1=b_1$.
Numerically, you may want to re-orthogonalize $x_k \leftarrow x_k - vv^Tx_k$ every few steps to make sure that your iterates stay orthogonal to the kernel.