docker-compose部署的服务访问https报错:x509: certificate signed by unknown authority
最近写了几个推特API的接口,在本机(mac)测试的时候好好的 部署到服务器上的时候发现不能用了 报错:
{"code": 500,"msg": "err : Get \"https://api.twitter.com/2/users/by/username/StarGate_Dev\": x509: certificate signed by unknown authority"
}
本来还以为是推特API没加服务器地址为后台回调地址的事儿 但是加了以后也不能用 仔细思考一下 本地测试的时候后台也没加我的这个局域网的ip为回调 为什么就能用呢
所以不是回调的事儿
在网上找了一番 发现这个错误还挺常见 就是
我们一般用docker或者 docker-compose 部署服务的时候 ,选用的要挂载的基础linux(centos或者ubuntu等待)镜像 ,默认是不带 ca-certificates 根证书的,导致无法识别外部 https 携带的数字证书。
知道了原因就好办了
如果你是用生成docker镜像的方式去部署呢 那么 要在构建 docker 镜像的时候把 ca-certificates 根证书给装上,这样就能识别来自外部 https 的数字证书了。
这里以utuntu基础镜像为例,apt-get是utuntu的下载命令
在编辑 Dockerfile 的时候加入以下命令即可:
RUN apt-get -qq update \&& apt-get -qq install -y --no-install-recommends ca-certificates curl
如果你是用docker-compose 挂载二进制文件的方式部署 那么就进入docker-compose 给你起的容器内 安装根证书
先进入容器
$ docker exec -it '容器ID或容器名称' /bin/bash
再执行以下命令
apt-get -qq update
apt-get -qq install -y --no-install-recommends ca-certificates curl
最后退出restart 服务即可
[root@ecs-51ff home]# docker exec -it 76094 /bin/bash
root@76094de917e2:/stargate# ls
dev.yaml stargate stargate11-25 stargate11-30
root@76094de917e2:/stargate# cd ..
root@76094de917e2:/# ls
bin boot dev etc home lib lib64 media mnt opt proc root run sbin srv stargate sys tmp usr var
root@76094de917e2:/# apt-get -qq update
root@76094de917e2:/# apt-get -qq install -y --no-install-recommends ca-certificates curl
debconf: delaying package configuration, since apt-utils is not installed
Selecting previously unselected package libssl1.1:amd64.
(Reading database ... 4051 files and directories currently installed.)
。。。。。。。。省略。。。。。。
Updating certificates in /etc/ssl/certs...
127 added, 0 removed; done.
。。。。。。。。省略。。。。。。
Processing triggers for libc-bin (2.27-3ubuntu1.6) ...
Processing triggers for ca-certificates (20211016~18.04.1) ...
Updating certificates in /etc/ssl/certs...
0 added, 0 removed; done.
Running hooks in /etc/ca-certificates/update.d...
done.
root@76094de917e2:/# exit
[root@ecs-51ff home]# docker-compose restart stargate
Restarting home_stargate_1 ... done
这个时候再去访问服务器的服务 就可以正常使用啦
docker-compose方式的这里要小心 如果你把服务down掉 也就是这个容器会被清理
所以你再次up起来的容器 是一个全新的容器 需要再次根证书配置噢
参考:https://www.jianshu.com/p/97471c082b2f
docker-compose部署的服务访问https报错:x509: certificate signed by unknown authority相关推荐
- Docker在windows环境 使用阿里云镜像 pull 报错 x509: certificate signed by unknown authority
本人使用的环境是 windows7 ,使用docker toolbox安装, 使用的是阿里云镜像,使用阿里云镜像相关操作阿里云上有操作步骤 https://cr.console.aliyun.com/ ...
- 使用golang发送邮件,报错“x509: certificate signed by unknown authority”
问题描述 使用golang发送邮件,报错"x509: certificate signed by unknown authority",这是由于客户端默认要对服务端传过来的数字证书 ...
- Harbor docker login x509 certificate signed by unknown authority
文章目录 Harbor docker login x509 certificate signed by unknown authority 前言 生成的证书 方法一 方法二 方法三 参考文档 Harb ...
- gomail发送邮件报:x509: certificate signed by unknown authority的解决方法
今天在项目上遇到一个问题,项目上使用gomail库进行邮件的发送,在自己电脑上测试是可以正常发送邮件的,但是要上线的前一天,进行了上线部署测试,结果发送邮件的功能一直报错,通过谷歌找到了解决方法. 报 ...
- docker登录私库时提示 x509: certificate signed by unknown authority
docker登录私库时提示 x509: certificate signed by unknown authority 编辑daemon.json vim /etc/docker/daemon.jso ...
- docker kaniko push推送镜像至harbor报错:x509: certificate signed by unknown authority(命令中添加 --skip-tls-ver)
解决办法:在命令中添加 --skip-tls-verify 标记 完整Dockerfile: FROM ubuntu ENTRYPOINT ["/bin/bash","- ...
- 视频通话会议系统EasyRTC报certificate signed by unknown authority错误解决方案
由于市场上对企业视频通话的需求越来越高,目前市面上的一些视频通话会议系统无法全部兼容所有的要求,为此我们对视频通话会议系统EasyRTC也做了升级更新. 我们的研发人员最近在进行EasyRTC新版调试 ...
- docker容器相关异常certificate signed by unknown authority或者action: push: unauthorized to access repository
拉取镜像报错 docker pull harbor.test.local/base/jdk-8u191-ubuntu18:20200430 Error response from daemon: Ge ...
- docker报错 x509: certificate has expired or is not yet valid-小白实操记录
问题 拉取镜像报错 x509: certificate has expired or is not yet valid 原因 没有进行安全设置: 情景1 打开或者直接创建daemon.json文件,一 ...
最新文章
- Quartus和Modelsim中使用`include包含头文件的对比
- 微信扫码支付功能详细教程————Java
- Vue开发微信H5 微信分享签名失败问题解决方案
- Hessian(C#)介绍及使用说明
- [原]JS ajax类的三种封装形式及简单对比
- 双指针算法 | 力扣344. 反转字符串
- centos7 开启防火墙端口 firewalld
- Iterator迭代器接口讲解
- python基础之内置异常对象
- 自然语言处理-LDA建模代码
- jcr多久更新一次_sci分区什么时候更新
- 在线教育直播平台对比(钉钉/保利威/小鹅通)
- 商鞅的APP运营之道
- zyf的童年(异或运算的运用)
- java netty 内存泄露_Netty开发调试设置io.netty.leakDetection.level=PARANOID定位内存泄漏问题...
- powershell 汉洛塔
- matlab 边缘检测 抠图,ps如何调整边缘的流程:边缘检测、调整边缘、输出(调整边缘抠图...
- findContours函数报错:“将一个无效参数传递给了将无效参数视为严重错误的函数”解决方案之一
- 三年级江苏凤凰出版社计算机,苏教版小学信息技术三年级下册教案全集
- 计算机c盘变大,如何解决Win10 C盘空间越来越大的问题?