Etcd 方式注册 ShenYu 网关
ASP.NET Core 项目#
对于 ASP.NET Core 项目,我们可以参考这个 example code。你需要做以下步骤。
- 将 ShenYu 加入到 ASP.NET Core 项目依赖中。
dotnet add package <todo-shenyu-asp.net-core package>- 在
Startup.ConfigureServices中加入ShenyuRegisterservice。
public void ConfigureServices(IServiceCollection services){ ... services.AddShenyuRegister(this.Configuration); ...}- 在
appsettings.json中进行配置。
{ "Shenyu": { "Register": { "ServerList": "http://127.0.0.1:2379", "RegisterType": "etcd", "Props": { // etcd userName,if have not set ectd server userName,this parmas can empty "UserName": "", // etcd password,if have not set ectd server password,this parmas can empty "Password": "", // 3000 ms default "EtcdTimeout": 4000, // 5 ms default "EtcdTTL": 15 } }, "Client": { "AppName": "dotnetexampleetcd", "ContextPath": "/etcddotnet", "IsFull": false, "ClientType": "http" } }}- 开启允许通过 ip 访问
当运行 ASP.NET Core 项目时,默认只能通过 localhost 访问。想要允许 ip 访问,需要设置下 ASPNETCORE_URLS 环境变量。
export ASPNETCORE_URLS=http://+:5000- 启动 application
# build projectdotnet build --configuration Release# start projectcd examples/AspNetCoreExample/bin/Release/netcoreapp3.1dotnet AspNetCoreExample.dll至此,你已经完成所有的步骤,可以进入 shenyu-admin 页面看到这些 API 已经注册到 ShenYu.