docker开启TLS远程连接


前言

最近在研究cicd jenkins 需要连接阿里云服务器的docker 2375端口,
这里用TLS方式连接docker服务

提示:以下是本篇文章最终效果

[root@iZ0jl5fuiw4aah3ozdrus1Z tson1.0]# docker --tlsverify --tlscacert=/root/work/ca.pem --tlscert=/root/work/cert.pem --tlskey=/root/work/key.pem -H tcp://8.xxx.xxx.xxx:2375 version

CONTAINER ID   IMAGE                             COMMAND                  CREATED        STATUS       PORTS                                                                                        NAMES
951d794a776c   tson1.1                           "python run.py"          5 hours ago    Up 5 hours   80/tcp, 0.0.0.0:8800->8800/tcp, :::8800->8800/tcp                                        test

一、制作证书(docker服务的机器)

  1. 建立证书存放位置
mkdir /docker-ca && cd /docker-ca 
  1. 创建CA证书私钥
openssl genrsa -aes256 -out ca-key.pem 4096

提示:出现Enter pass phrase for ca-key.pem时输入秘钥的密码, 最后会生成CA秘钥文件ca-key.pem

  1. 根据私钥创建CA证书,期间需要输入上一步设置的私钥密码,然后依次输入国家是 CN,省例如是Guangdong、市Shenzhen、组织名称、组织单位、姓名或服务器名、邮件地址,都可以随意填写,生成文件为ca.pem
[root@localhost docker-ca]# openssl req -new -x509 -days 365 -key ca-key.pem -sha256 -out ca.pem


Country Name (2 letter code) [XX]:ZH  #输入国家
State or Province Name (full name) []:guangdong #省份
Locality Name (eg, city) [Default City]:shengzhen #城市
Organization Name (eg, company) [Default Company Ltd]:Name #公司名字
Organizational Unit Name (eg, section) []:Name #单位名字
Common Name (eg, your name or your server's hostname) [
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
回答: 若要在Docker镜像中启用MySQL的远程连接,你可以按照以下步骤进行设置。首先,使用下面的命令启动一个MySQL容器,并设置相关的数据卷和环境变量: docker run -d -p 3306:3306 -v /home/mysql/conf:/etc/mysql/conf.d -v /home/mysql/data:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=123456 --name mysql01 mysql:latest 其中,-p参数用于设置端口映射,将主机的3306端口映射到容器的3306端口;-v参数用于设置数据卷,将主机的配置文件目录映射到容器的/etc/mysql/conf.d目录,将主机的数据目录映射到容器的/var/lib/mysql目录;-e参数用于设置环境变量,这里设置了MySQL的root密码为123456。 接下来,你可以使用MySQL客户端连接到这个容器中的MySQL实例。如果你在本机上使用MySQL客户端,可以使用以下命令连接到容器: mysql -h 127.0.0.1 -P 3306 -u root -p 这里,-h参数指定连接的主机为127.0.0.1,-P参数指定连接的端口为3306,-u参数指定连接的用户名为root,-p参数表示需要输入密码。 如果你希望从远程主机连接到这个容器中的MySQL实例,可以将"-h 127.0.0.1"修改为容器所在主机的IP地址或域名。 请注意,为了安全起见,建议将容器的MySQL实例绑定到特定的IP地址或仅在特定网络接口上监听,以限制远程连接的访问范围。这可以通过修改MySQL的配置文件来实现,具体的配置方法可以参考Docker官方文档中关于MySQL容器的说明。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值