您好,我是minikube的新手,我无法连接到公开服务。我创建了一个Api .Net Core,构建了映像,将其放入我的私有注册表中,然后使用有效的yml文件创建了一个部署。 但是我无法将该部署公开为服务。每次我暴露它一切都很好之后,却无法通过端口和minikube ip地址连接到它。 如果我尝试连接到ipadress:port,则会拒绝连接。
kind: Deployment
apiVersion: apps/v1
metadata:
name: testapp1-deployment
labels:
app: testapp1
spec:
replicas: 2
selector:
matchLabels:
app: testapp1
template:
metadata:
labels:
app: testapp1
version: v0.1
spec:
containers:
- name: testapp1-deployment
image: localhost:5000/testapp1
imagePullPolicy: Never
resources:
requests:
cpu: 120m
ports:
- containerPort: 80
服务yml文件:
apiVersion: v1
kind: Service
metadata:
name: testapp1-service
spec:
type: NodePort
selector:
app: testapp1
ports:
- protocol: TCP
port: 80
targetPort: 80
答案 0 :(得分:1)
问题出在我的dockerfile上,我没有在ASP .NET Core的应用程序中启用docker支持。我启用了docker支持并稍稍更改了dockerfile,然后对其进行了重建,它对我有用。
FROM mcr.microsoft.com/dotnet/core/sdk:3.1 AS build-env
WORKDIR / app
COPY * .csproj ./ 运行dotnet还原
复制。 ./ RUN dotnet发布-c发布-o out
从只读存储器mcr.microsoft.com/dotnet/core/aspnet:3.1 WORKDIR / app 复制--from = build-env / app / out。 ENTRYPOINT [“ dotnet”,“ aspnetapp.dll”]
这是我目前在我的应用程序中使用的dockerfile,因此,如果其他人遇到与我相同的问题,请尝试使用dockerfile。如果仍然无法使用,请查看以前的评论。