我从github做了nginx入口控制器教程并公开了kubernetes仪表板
kubernetes-dashboard NodePort 10.233.53.77 <none> 443:31925/TCP 20d
Run Code Online (Sandbox Code Playgroud)
创造了入口
apiVersion: extensions/v1beta1
kind: Ingress
metadata:
annotations:
ingress.kubernetes.io/ssl-passthrough: "true"
nginx.org/ssl-backends: "kubernetes-dashboard"
kubernetes.io/ingress.allow-http: "false"
name: dashboard-ingress
namespace: kube-system
spec:
tls:
- hosts:
- serverdnsname
secretName: kubernetes-dashboard-certs
rules:
- host: serverdnsname
http:
paths:
- path: /dashboard
backend:
serviceName: kubernetes-dashboard
servicePort: 443
Run Code Online (Sandbox Code Playgroud)
ingress-nginx ingress-nginx NodePort 10.233.21.200 <none> 80:30827/TCP,443:32536/TCP 5h
Run Code Online (Sandbox Code Playgroud)
https:// serverdnsname:32536 /仪表板 但仪表板抛出错误
2018/01/18 14:42:51 http: TLS handshake error from ipWhichEndsWith.77:52686: tls: first record does not look like a TLS handshake
Run Code Online (Sandbox Code Playgroud)
和入口控制器日志
2018/01/18 14:42:51 …
Run Code Online (Sandbox Code Playgroud) 情况:有书籍和类别。每个类别可以有 n 本书。想要从类别中创建新书、更新书或删除书。如果类别为空,则从数据库中删除它。当前插入、更新和删除书籍。
问题: orphanRemoval=true 如果类别为空,则不会删除类别。
@Entity
@Table(name = "book")
@Getter
@Setter
public class BookEntity implements DBEntity, Serializable {
@Id
private Integer id;
private String bookname;
@ManyToOne(cascade = {CascadeType.MERGE, CascadeType.PERSIST, CascadeType.DETACH, CascadeType.REFRESH})
@JoinColumn(name = "categoryid", referencedColumnName = "id")
private CategoryEntity categoryEntity;
public Integer getId() {
return this.id;
}
}
@Entity
@Table(name = "category")
@Getter
@Setter
public class CategoryEntity implements DBEntity, Serializable {
@Id
private Integer id;
private String categoryName;
@OneToMany(cascade = CascadeType.REMOVE, mappedBy = "categoryEntity", orphanRemoval = true)
private Set<BookEntity> …
Run Code Online (Sandbox Code Playgroud)