我正在使用 Terraform 构建 Azure DevOps 管道。管道创建 Linux 服务器,然后登录 Linux 服务器以更新包和安装 Apache。
我目前将私钥存储在我的 BitBucket 存储库中(我知道,这不是最佳实践),然后将其拉到构建代理服务器上,然后使用以下命令登录到新服务器:
ssh -f -q -o BatchMode=yes -o StrictHostKeyChecking=no -i ../private_key.pem ubuntu@$ip sudo apt update -y
Run Code Online (Sandbox Code Playgroud)
在 Azure DevOps 中存储和检索私钥的最佳方法是什么?
我已经在 Azure 上使用 nginx 入口设置了一个 kubernetes 集群。导航到特定路径时出现 404 错误。
我已经设置了一些示例应用程序,它们返回一个简单的回声,效果非常好。我的 ban api 应用程序总是返回 404 错误。
当我导航到入口路径时,例如
http://51.145.17.105/apple
Run Code Online (Sandbox Code Playgroud)
效果很好。但是,当我导航到 api 应用程序时,使用以下 URL 收到 404 错误:
http://51.145.17.105/ban-simple
Run Code Online (Sandbox Code Playgroud)
如果我登录到集群并卷曲 ban-simple 服务(不是入口 ip),例如
curl -L 10.1.1.40
Run Code Online (Sandbox Code Playgroud)
我得到了正确的回应。当我使用 nginx ingress 尝试它时,出现 404 错误。
入口映射对我来说看起来很正确。这是包含路径的入口 yaml 的副本。
apiVersion: extensions/v1beta1
kind: Ingress
metadata:
name: fruit-ingress
namespace: ban
annotations:
kubernetes.io/ingress.class: nginx
nginx.ingress.kubernetes.io/ssl-redirect: "false"
nginx.ingress.kubernetes.io/rewrite-target: /$
spec:
rules:
- http:
paths:
- path: /apple
backend:
serviceName: apple-service
servicePort: 5678
- path: /ban-simple
backend:
serviceName: ban-service
servicePort: 80
Run Code Online (Sandbox Code Playgroud)
“好”服务的一个副本是:
kind: …Run Code Online (Sandbox Code Playgroud)