If you want a full profile, you could use the native bevel and mapping of an ordinary straight Bezier curve.
You could make the ink first, setting the radii of its control points manually to get the right shape, and keyframe the mapping.
These settings seem reasonable:
For an exact fit, you could then, as here, construct the nozzle from the ink (converting to a mesh, cutting in half, flipping the normals, extruding and scaling) but there would be no harm in a slight intersection, it's all hidden.
For a flat front, you could use a custom-made semicircular profile for the curve. This one was converted to a curve from a mesh-circle, cut in half and bevelled to get a slight meniscus...