try the Shilshole marina, on the left, just before you enter the locks.  I believe they have free transient  moorage.  as I recall, none of the restaurants at Shilshole have docks.  ohhh, wait, I think The Baithouse, closer in to the locks, on the left, has a small dock.  it's a pretty small restaurant.  maybe give them a call.