利用squid建立代理服务器,让内网的docker服务器节点能够下载镜像

环境说明:

服务器A、B都是公司内部的网络,都只有一个网卡。

服务器A能够上互联网,查找和下载docker镜像。

服务器B为内网服务器,不能上互联网,搭建和应用k8s集群比较麻烦。

拟在A服务器安装squid代理软件,服务器B等内网服务器通过A的代理,实现能够下载docker镜像、上互联网的目的。

这个方案只是自己内部在用,安全等方面没有考虑。

一、代理服务器A

1、安装squid软件

[root@master-0 ~]# yum install -y squid

利用squid建立代理服务器,让内网的docker服务器节点能够下载镜像插图

2、配置squid.conf配置文件

[root@master-0 ~]# vi /etc/squid/squid.conf

只修改了如下图所示的参数。

利用squid建立代理服务器,让内网的docker服务器节点能够下载镜像插图1

3、启动squid服务并验证

[root@master-0 ~]# systemctl start squid [root@master-0 ~]# systemctl status squid

利用squid建立代理服务器,让内网的docker服务器节点能够下载镜像插图2

[root@master-0 ~]# netstat -ntlp | grep squid

利用squid建立代理服务器,让内网的docker服务器节点能够下载镜像插图3

二、内网服务器B

1、配置系统环境参数,并查看结果

(1)在~/.bashrc中设置代理参数

设置完成后,需要重新登录终端,或者source ~/.bashrc,使配置生效。

[root@k8s01 ~]# vi ~/.bashrc

利用squid建立代理服务器,让内网的docker服务器节点能够下载镜像插图4

(2)访问百度网站,查看效果

[root@k8s01 ~]# curl 202.108.22.5

可以看到返回了结果。

利用squid建立代理服务器,让内网的docker服务器节点能够下载镜像插图5

2、配置docker环境参数,并查看效果

(1)建立/etc/systemd/system/docker.service.d目录,并在该目录中建立http_proxy.conf配置文件。

[root@k8s01 ~]# mkdir -p /etc/systemd/system/docker.service.d [root@k8s01 ~]# vi /etc/systemd/system/docker.service.d/http_proxy.conf

利用squid建立代理服务器,让内网的docker服务器节点能够下载镜像插图6

(2)重新启动docker,并看配置参数

[root@k8s01 ~]# systemctl daemon-reload [root@k8s01 ~]# systemctl restart docker [root@k8s01 ~]# systemctl show --property=Environment docker 

利用squid建立代理服务器,让内网的docker服务器节点能够下载镜像插图7

(3)通过docker查找镜像检查结果

查找镜像hello-world

[root@k8s01 ~]# docker search hello-world

利用squid建立代理服务器,让内网的docker服务器节点能够下载镜像插图8

下载镜像hello-world

[root@k8s01 ~]# docker pull hello-world

利用squid建立代理服务器,让内网的docker服务器节点能够下载镜像插图9

利用squid建立代理服务器,让内网的docker服务器节点能够下载镜像插图10

原文链接:https://blog.csdn.net/bruceRong/article/details/107142947

© 版权声明
THE END
喜欢就支持一下吧
点赞0 分享