There is a slogan that limits and colimits are computed pointwise in functor categories. I was trying to show it for pullbacks, but I couldn’t. Then, how can we prove it at least for pullbacks?
If $D^C$ denotes the category of functors $C\to D$ and we have a diagram $a:F_1\to F_3\leftarrow F_2:b$ in $D^C$, then we define the pullback $P:C\to D$ by letting $P(c)$ be the pullback of $F_1(c)\to F_3(c)\leftarrow F_2(c)$ and $P(f:c\to c’)$ the induced morphism between the pullbacks. (This uses functoriality of pullbacks and naturality of the morphisms between the $F_i$.)
Now given a functor $G:C\to D$ with natural transformations $\alpha:G\to F_1,\beta:G\to F_2$ such that $a\circ \alpha=b\circ \beta$, we have for every $c$ that $a_c\circ \alpha_c=b_c\circ \beta_c$, which uniquely determines a morphism $G(c)\to P(c)$. The fact that these morphisms assemble into a natural transformation $G\to P$ is all that remains to be shown; it follows again from various naturality squares and I leave it to you to finish up.
The proof for general limits and colimits is fundamentally no different but requires a bit more notation.