# 使用说明 建议直接拉取镜像: ``` docker pull forever4526/tls:{tag} ``` 编写yaml后,使用kubectl apply应用 # 镜像运行必备环境变量 **中转服务器与pod相关** CLUSTER_HOST = "10.0.0.4" //集群相对ip NGINX_HOST = "10.0.0.1" //nginx主机地址 NGINX_USER = "nginx" //ssh链接nginx主机的用户名 NGINX_CERT_DIR = "/etc/nginx/certs" //存放证书的目录 NGINX_CONF_DIR = "/etc/nginx/conf.d" //存放server配置块的目录 NAMESPACE = "basic" //pod运行的命名空间 TEMP_DIR = "/tmp/nginx_certs" //临时目录 RSA_DIR = "/root/.ssh" //存放 SSH 密钥对 PUBLIC_KEY_COMMENT = "generated-key" //ssh公钥后缀 **上传重试相关** MAX_RETRIES = 10 // 最大重试次数 RETRY_DELAY = 20 // 每次重试的时间间隔(秒) # 创建serviceAccount供其使用 关键:监听单namespace ``` rules: - apiGroups: [""] resources: ["secrets"] verbs: ["watch", "get", "list"] ``` 监听全部namespace需要更高的权限,default用户就无法使用了,关键的rules是一样的,只不过需要自己创建用户,绑定权限,部署时绑定创建的用户即可 # 请注意 **部署完成之后,需要进入容器,手动复制ssh公钥到中转服务器的对应用户下的.ssh/authorized_keys中** **配置完公钥之后,需要在pod中手动进行一次ssh远程连接,目的是为了验证指纹信息(目前我还没自动实现)** **可以使用固定的ssh密钥对,只是我的环境走docker hub中转镜像比较方便,所以就写了一个通用的(个人感觉麻烦程度差不多)**