如何将Kubernetes服务注入我的java类?

时间:2016-02-22 08:46:24

标签: java-ee cdi kubernetes microservices fabric8

我已在kubernetes名为 rest_api_service @Inject @ServiceName("luz-person-service") String serivceUrl; 中成功创建并部署了一项服务。

我有另一个需要从 rest_api_service 调用资源的项目。所以,为了获得我服务的IP,我试着注入:

> No bean is eligible for injection to the injection point [JSR-346
> §5.2.2]

但我的Eclipse向我展示了这条警告信息:

wildfly

因此我无法在Java EE 7中构建它。

目前,我只使用纯<dependency> <groupId>io.fabric8</groupId> <artifactId>fabric8-cdi</artifactId> <version>2.1.11</version> </dependency> ,我正在使用以下依赖项:

   <div ng-repeat="full in fulls.mainList">
       <span>{{full.currencyName}}</span>
       <span>{{full.tradedAverage | number:2}}</span>
       <span>{{full.tradedAmount | number:2}}</span>
       <span>{{full.currencyPrice | number:2}}</span>
   </div>

    $scope.fulls = {
          mainList : [
            {
              currencyName: 'TEST',
              tradedAverage: '12.123434',
              tradedAmount: '13.133434',
              currencyPrice: '14.143434'
            }
          ]
       };

你们有什么想法吗?

1 个答案:

答案 0 :(得分:1)

Pod会自动注入包含其命名空间中服务信息的环境变量。例如,假设您的pod位于名称空间中,该名称空间还包含名为“foo”的服务。您的吊舱中的容器将注入:

FOO_SERVICE_HOST=<host service foo is reachable at>
FOO_SERVICE_PORT=<port service foo is reachable at>

以及docker-links样式的环境变量。查看the docs here