小编Num*_*Uno的帖子

Docker 不会在 Windows 10 上切换到 Linux 容器

我在 Windows 10 企业版上运行 docker for windows。它在Windows容器模式下成功运行。当我右键单击 docker 图标并“切换到 Linux 容器”时,它会继续切换,一段时间后,它会抛出以下错误:

error during connect: Get http://%2F%2F.%2Fpipe%2Fdocker_engine/v1.38/containers/json: open //./pipe/docker_engine: The system cannot find the file specified. In the default daemon configuration on Windows, the docker client must be run elevated to connect. This error may also indicate that the docker daemon is not running.

at Docker.Core.Pipe.NamedPipeClient.Send(String action, Object[] parameters) in C:\gopath\src\github.com\docker\pinata\win\src\Docker.Core\pipe\NamedPipeClient.cs:line 36
at Docker.Actions.<>c__DisplayClass25_0.b__0() in C:\gopath\src\github.com\docker\pinata\win\src\Docker.Windows\Actions.cs:line 275
at Docker.WPF.TaskQueue.<>c__DisplayClass19_0.<.ctor>b__1() in C:\gopath\src\github.com\docker\pinata\win\src\Docker.WPF\TaskQueue.cs:line 59
Run Code Online (Sandbox Code Playgroud)

我正在使用 hyper-v 并且它已启用。这个问题总是可以重现的。我尝试过“恢复出厂默认设置”并重新启动两者,但这并不能解决我的问题。如果我在这里做错了什么,请告诉我。

docker docker-for-windows

6
推荐指数
1
解决办法
6723
查看次数

Keycloak公共客户端和授权

我们正在Jetty上使用keycloak-adapter,以使用Keycloak进行身份验证和授权。根据OIDC身份验证流程的Keycloak文档

该流程的另一个重要方面是公众与机密客户的概念。机密客户端在交换令牌的临时代码时需要提供客户端机密。公共客户端不需要提供此客户端密钥。只要严格执行HTTPS,并且您为该客户端注册了什么重定向URI,您就非常严格,公共客户端就可以了。

HTML5 / JavaScript客户端始终必须是公共客户端,因为无法以安全的方式向其传输客户端机密。

我们有连接到Jetty并使用auth的webapp。因此,我们创建了一个公共客户端,它对于webapp / REST身份验证非常有用。
问题是,一旦启用授权,客户端类型就会从“公共”转换为“机密”,并且不允许将其重置为“公共”。现在,我们在喝汤。由于授权,我们无法拥有公共客户端,也无法将Web应用连接到机密客户端。
这似乎与我们矛盾。知道为什么客户需要对授权保密吗?在这方面有什么帮助我们如何克服这个问题?
谢谢。

java authorization web-applications openid-connect keycloak

6
推荐指数
1
解决办法
1964
查看次数

Quarkus 自定义授权拦截器

我有一个 Quarkus 微服务,使用 quarkus-oidc 和 quarkus-keycloak-authorization 扩展通过 Keycloak 进行身份验证和授权。

我需要另外实现以下两个请求拦截器/过滤器:

  1. 任何身份验证逻辑启动之前的过滤器。这是将令牌从查询参数复制到标头(Web 套接字所需)。该过滤器的优先级应该是什么?
  2. 具有自定义授权逻辑的过滤器。这应该在所有身份验证和 keycloak 授权逻辑之后执行,但在 API 执行之前执行?该过滤器的优先级应该是什么?

我尝试将 @Priority(Interceptor.Priority.PLATFORM_BEFORE) 和 @Prematching 也放入我的过滤器中,但即使是在 OIDC 启动后也会调用它。

另外,有什么方法可以支持扩展 quarkus oidc 逻辑以包含自定义代码吗?

我无法获得 oidc 和 keycloak-auth 拦截器的优先级(了解这些可以帮助我确定过滤器的优先级)。请帮忙。

authorization interceptor requestfiltering openid-connect quarkus

5
推荐指数
1
解决办法
4050
查看次数

Spark 提交在 Kubernetes (EKS) 上失败,并显示“无效的空输入:名称”

我正在尝试在 EKS 上运行 Spark 示例 SparkPi docker 映像。我的Spark版本是3.0。
我创建了 Spark 服务帐户和角色绑定。当我提交作业时,出现以下错误:

2020-07-05T12:19:40.862635502Z Exception in thread "main" java.io.IOException: failure to login
2020-07-05T12:19:40.862756537Z  at org.apache.hadoop.security.UserGroupInformation.loginUserFromSubject(UserGroupInformation.java:841)
2020-07-05T12:19:40.862772672Z  at org.apache.hadoop.security.UserGroupInformation.getLoginUser(UserGroupInformation.java:777)
2020-07-05T12:19:40.862777401Z  at org.apache.hadoop.security.UserGroupInformation.getCurrentUser(UserGroupInformation.java:650)
2020-07-05T12:19:40.862788327Z  at org.apache.spark.util.Utils$.$anonfun$getCurrentUserName$1(Utils.scala:2412)
2020-07-05T12:19:40.862792294Z  at scala.Option.getOrElse(Option.scala:189)
2020-07-05T12:19:40.8628321Z    at org.apache.spark.util.Utils$.getCurrentUserName(Utils.scala:2412)
2020-07-05T12:19:40.862836906Z  at org.apache.spark.deploy.k8s.features.BasicDriverFeatureStep.configurePod(BasicDriverFeatureStep.scala:119)
2020-07-05T12:19:40.862907673Z  at org.apache.spark.deploy.k8s.submit.KubernetesDriverBuilder.$anonfun$buildFromFeatures$3(KubernetesDriverBuilder.scala:59)
2020-07-05T12:19:40.862917119Z  at scala.collection.LinearSeqOptimized.foldLeft(LinearSeqOptimized.scala:126)
2020-07-05T12:19:40.86294845Z   at scala.collection.LinearSeqOptimized.foldLeft$(LinearSeqOptimized.scala:122)
2020-07-05T12:19:40.862964245Z  at scala.collection.immutable.List.foldLeft(List.scala:89)
2020-07-05T12:19:40.862979665Z  at org.apache.spark.deploy.k8s.submit.KubernetesDriverBuilder.buildFromFeatures(KubernetesDriverBuilder.scala:58)
2020-07-05T12:19:40.863055425Z  at org.apache.spark.deploy.k8s.submit.Client.run(KubernetesClientApplication.scala:98)
2020-07-05T12:19:40.863060434Z  at org.apache.spark.deploy.k8s.submit.KubernetesClientApplication.$anonfun$run$4(KubernetesClientApplication.scala:221)
2020-07-05T12:19:40.863096062Z  at org.apache.spark.deploy.k8s.submit.KubernetesClientApplication.$anonfun$run$4$adapted(KubernetesClientApplication.scala:215)
2020-07-05T12:19:40.863103831Z  at org.apache.spark.util.Utils$.tryWithResource(Utils.scala:2539)
2020-07-05T12:19:40.863163804Z  at org.apache.spark.deploy.k8s.submit.KubernetesClientApplication.run(KubernetesClientApplication.scala:215)
2020-07-05T12:19:40.863168546Z  at org.apache.spark.deploy.k8s.submit.KubernetesClientApplication.start(KubernetesClientApplication.scala:188)
2020-07-05T12:19:40.863194449Z  at org.apache.spark.deploy.SparkSubmit.org$apache$spark$deploy$SparkSubmit$$runMain(SparkSubmit.scala:928)
2020-07-05T12:19:40.863218817Z  at org.apache.spark.deploy.SparkSubmit.doRunMain$1(SparkSubmit.scala:180) …
Run Code Online (Sandbox Code Playgroud)

docker apache-spark kubernetes amazon-eks

5
推荐指数
3
解决办法
6195
查看次数

Kubernetes 上的 Traefik v2.0 自签名证书

我正在运行 Traefik ( v2.0 ) 作为我的 EKS 集群的入口网关。Traefik ingress 工作正常。
现在,我需要使用自签名证书为我的入口添加 https 支持。为此,我有:

  • 创建了从 http 到 https 重定向的 IngressRoute -> 这工作正常
  • 创建了一个包含我的自签名证书的密钥和证书的秘密
kubectl create secret tls tlssecret --key="eks.tls.key" --cert="eks.tls.crt"
Run Code Online (Sandbox Code Playgroud)
  • 将 tls 密钥添加到我的 IngressRoute 部署中:
  • apiVersion:traefik.containo.us/v1alpha1 种类:IngressRoute 元数据:名称:pulseingressroutetls 命名空间:pulse 规范:entryPoints:- websecure tls:secretName:pulsetlssecret
    路由:- 匹配:PathPrefix( /auth) ...

部署完成后,当我浏览入口 URL 时,它仍然向我显示 TRAEFIK DEFAULT CERT,而不是我的自签名证书。

请让我知道我在这里做错了什么?还有其他方法吗?

https kubernetes tls1.2 traefik traefik-ingress

3
推荐指数
1
解决办法
5640
查看次数