嘿,大家好,今天更新的内容是docker开启2376端口CA认证及IDEA中一键部署docker项目。。。

先看效果

我们可以通过idea一键部署docker项目,还以通过idea的控制台实时查看容器内部的日志

Docker CA认证

1、创建ca文件夹,存放CA私钥和公钥

mkdir -p /usr/local/ca
cd /usr/local/ca/

2、创建密码

需要连续输入两次相同的密码

openssl genrsa -aes256 -out ca-key.pem 4096

3、依次输入密码、国家、省、市、组织名称等

openssl req -new -x509 -days 365 -key ca-key.pem -sha256 -out ca.pem

4、生成server-key.pem

openssl genrsa -out server-key.pem 4096

5、把下面的IP换成你自己服务器外网的IP或者域名

openssl req -subj "/CN=192.168.136.132" -sha256 -new -key server-key.pem -out server.csr

6、配置白名单

0.0.0.0表示所有ip都可以连接(但只有拥有证书的才可以连接成功)

echo subjectAltName = IP:192.168.136.132,IP:0.0.0.0 >> extfile.cnf

7、执行命令,将Docker守护程序密钥的扩展使用属性设置为仅用于服务器身份验证

echo extendedKeyUsage = serverAuth >> extfile.cnf

8、执行命令,并输入之前设置的密码,生成签名证书

openssl x509 -req -days 365 -sha256 -in server.csr -CA ca.pem -CAkey ca-key.pem \-CAcreateserial -out server-cert.pem -extfile extfile.cnf

9、生成客户端的key.pem,到时候把生成好的几个公钥私钥拷出去即可

openssl genrsa -out key.pem 4096

10、执行命令

openssl req -subj '/CN=client' -new -key key.pem -out client.csr

11、执行命令,要使密钥适合客户端身份验证,请创建扩展配置文件

echo extendedKeyUsage = clientAuth >> extfile.cnf

12、生成cert.pem,需要输入前面设置的密码,生成签名证书

openssl x509 -req -days 365 -sha256 -in client.csr -CA ca.pem -CAkey ca-key.pem \-CAcreateserial -out cert.pem -extfile extfile.cnf

13、删除不需要的文件,两个证书签名请求

rm -v client.csr server.csr

14、修改权限,要保护您的密钥免受意外损坏,请删除其写入权限。要使它们只能被您读取,更改文件模式

chmod -v 0400 ca-key.pem key.pem server-key.pem

证书可以是对外可读的,删除写入权限以防止意外损坏

chmod -v 0444 ca.pem server-cert.pem cert.pem

15、归集服务器证书

cp server-*.pem  /etc/docker/
cp ca.pem /etc/docker/

16、修改Docker配置,使Docker守护程序仅接受来自提供CA信任的证书的客户端的连接

vim /lib/systemd/system/docker.service

ExecStart=/usr/bin/dockerd 下面增加

--tlsverify \

--tlscacert=/etc/docker/ca.pem \

--tlscert=/etc/docker/server-cert.pem \

--tlskey=/etc/docker/server-key.pem \

-H tcp://0.0.0.0:2376 \

-H unix:///var/run/docker.sock \

17、重新加载daemon并重启docker

systemctl daemon-reload
systemctl restart docker

18、开放2376端口

19、重启docker

service docker restart

20、保存相关客户端的pem文件到本地

21、idea的配置

22、若出现以下错误,请查看前面的步骤是否遗漏或出错



至此大功告成,我们就可以通过idea一键部署docker项目以及通过docker的控制台查看容器日志了,简直爽到有木有!!!

本文借鉴:一个善良的码农


今天的更新到这里就结束了,拜拜!!!

感谢一路支持我的人,您的关注是我坚持更新的动力,有问题可以在下面评论留言或随时与我联系。。。。。。

QQ:850434439

微信:w850434439

EMAIL:gathub@qq.com

如果有兴趣和本博客交换友链的话,请按照下面的格式在评论区进行评论,我会尽快添加上你的链接。

网站名称:GatHub-HongHui'S Blog

网站地址:https://www.gathub.cn/

网站描述:不习惯的事越来越多,但我仍在前进…就算步伐很小,我也在一步一步的前进。

网站Logo/头像:头像地址


我的微信公众号,欢迎大家来撩!

docker开启2376端口CA认证及IDEA中一键部署docker项目的更多相关文章

  1. Docker开启TLS和CA认证

    前言:Docker直接开启2375端口是不安全的,别人只要连上之后就可以任意操作,下面是开启Docker的TLS和CA认证方法,并使用Jenkins和Portainer连接. 一.生成证书 查看服务器 ...

  2. 一键部署 Docker Datacenter ---简化docker数据中心安装步骤

    DDC 简介 2016年2月下旬,Docker发布了企业级容器管理和服务部署的整体解决方案平台-Docker Datacenter,简称DDC.DDC 有三个组件构成:1. Docker Univer ...

  3. docker开启api端口,docker启用加速

    此篇是针对centos6的docker,注意ubantu和centos7的会有区别. 需要在docker配置文件中修改信息 centos中是这个文件 /etc/sysconfig/docker,Ubu ...

  4. CentOS7 docker开启tcp端口并进行客户端远程连接

    #docker版本:18.09.0,最好保证客户端端口和服务端端口相同 [root@Centos7 ~]# dockerd-ce -v Docker version , build 4d60db4 网 ...

  5. 转载 江南一点雨 一键部署docker

    一键部署 Spring Boot 到远程 Docker 容器,就是这么秀!   不知道各位小伙伴在生产环境都是怎么部署 Spring Boot 的,打成 jar 直接一键运行?打成 war 扔到 To ...

  6. ubuntu docker开启2375端口,支持远程访问

    1.编辑docker文件:/usr/lib/systemd/system/docker.service vi /usr/lib/systemd/system/docker.service 2.Exec ...

  7. docker 中打包部署Springboot项目

    1.安装jdk yum -y install java-1.8.0-openjdk* 2.安装并启动mysql mysql高版本驱动变了,最后还是安装5.6 docker pull mysql:5.6 ...

  8. Docker开启远程连接,本地IDEA使用docker插件连接(不认证的版本和认证的版本都有)

    前言 在学校学习的时候,要部署一个Java程序,一般是打成war包,放到服务器上的tomcat的webapp里面去: 后来SpringBoot出现内置了tomcat,就直接打成jar包,丢到服务器任何 ...

  9. 【linxu】部署docker容器虚拟化平台

    实验所涉内容 Docker 概述 部署 docker 容器虚拟化平台 docker 平台基本使用方法 创建docker镜像和发布镜像方法 Container 容器端口映射 一 Docker 概述 Do ...

随机推荐

  1. C#中的MessageBox消息对话框

    关键字:C# MessageBox 消息对话框 在程序中,我们经常使用消息对话框给用户一定的信息提示,如在操作过程中遇到错误或程序异常,经常会使用这种方式给用于以提示.在C#中,MessageBox消 ...

  2. 关于 IIS 上运行 ASP.NET Core 站点的“HTTP 错误 500.19”错误

    昨天回答了博问中的一个问题 —— “HTTP 错误 500.19 - Internal Server Error dotnetcore”,今天在这篇随笔中时候事后诸葛亮地小结一下. 服务器是 Wind ...

  3. jquery多条件选择器

    <!DOCTYPE html><html><head><meta http-equiv="Content-Type" content=&q ...

  4. Windows Phone SplashScreen初始屏幕示例

    protected override void OnLaunched(LaunchActivatedEventArgs args) { if (args.PreviousExecutionState ...

  5. UWP-电子音读出文字

    原文:UWP-电子音读出文字 源码: https://github.com/lindexi/Markdown 代码 private async void speech(string str, Medi ...

  6. 改善C#程序的建议1:非用ICloneable不可的理由

    原文:改善C#程序的建议1:非用ICloneable不可的理由 好吧,我承认,这是一个反标题,实际的情况是:我找不到一个非用ICloneable不可的理由.事实上,接口ICloneable还会带来误解 ...

  7. [Leetcode]Single Number && Single Number II

    Given an array of integers, every element appears twice except for one. Find that single one. 非常简单的一 ...

  8. Fundamentals Code Library,包含HTTP TCP JSON BigInteger 加密算法 Unicode等许多东西

    http://fundementals.sourceforge.net/index.html https://github.com/fundamentalslib/fundamentals5 http ...

  9. 学会了使用qmake -query

    D:\Qt\Qt5.6.2_static_kk\bin>qmake -queryQT_SYSROOT:QT_INSTALL_PREFIX:C:/Qt/Qt5.6.2_static_kkQT_IN ...

  10. Delphi下IOC 模式的实现(反转模式,即Callback模式)

    IOC英文为 Inversion of Control,即反转模式,这里有著名的好莱坞理论:你呆着别动,到时我会找你.Ioc模式是解决调用者和被调用者之间关系的模式,可以有效降低软件的耦合度,并适合团 ...