For "There is a Japanese restaurant in my city", I'd say:

> 私の町**には**[日本食]{にほんしょく}のレストラン**が**あります。

[Place]には[Thing]があります。

("Japanese restaurant" can also be 日本食の[店]{みせ}、[日本料理]{にほんりょうり}のレストラン、日本料理の[店]{みせ}、[日本料理店]{にほんりょうりてん}、[和食]{わしょく}の[店]{みせ}、和食のレストラン, etc.)

For "Is there a Japanese restaurant in your town?", I'd say:

> あなたの町**に**日本食のレストラン**は**ありますか? 

[Place]に[Thing]はありますか?

-----

Addressing [this comment](https://japanese.stackexchange.com/questions/43490/how-to-say-there-is-a-in-blocation/43502#comment80341_43493):

When asked 「あなたの町には何がありますか?」(What's in your town?), you'd reply:

> (私の町**には**)和食のレストラン**が**あります。

[Place]には[Thing]があります。

This is literally like "As for my town, a Japanese restaurant is there."  
Use the topical は for old/known/given information, and が for new/important information.

When asked 「和食のレストランはどこにありますか?」(Where's a Japanese restaurant?), you'd reply:

>(和食のレストラン**は**)私の町**に**あります。

[Thing]は[Place]にあります。

This is literally like "As for a Japanese restaurant, there's one in my town."  
Use the topical は for old/known/given information.