本文最后更新于465 天前,其中的信息可能已经过时,如有错误请发送邮件到gengjiayong2022@outlook.com
PROXY_SERVER_IP=10.0.0.1
PROXY_PORT=10809
color () {
RES_COL=60
MOVE_TO_COL="echo -en \\033[${RES_COL}G"
SETCOLOR_SUCCESS="echo -en \\033[1;32m"
SETCOLOR_FAILURE="echo -en \\033[1;31m"
SETCOLOR_WARNING="echo -en \\033[1;33m"
SETCOLOR_NORMAL="echo -en \E[0m"
echo -n "$1" && $MOVE_TO_COL
echo -n "["
if [ $2 = "success" -o $2 = "0" ] ;then
${SETCOLOR_SUCCESS}
echo -n $" OK "
elif [ $2 = "failure" -o $2 = "1" ] ;then
${SETCOLOR_FAILURE}
echo -n $"FAILED"
else
${SETCOLOR_WARNING}
echo -n $"WARNING"
fi
${SETCOLOR_NORMAL}
echo -n "]"
echo
}
start () {
[ -d /etc/systemd/system/docker.service.d ] || mkdir -p /etc/systemd/system/docker.service.d
cat >> /etc/systemd/system/docker.service.d/http-proxy.conf <<EOF
[Service]
Environment="HTTP_PROXY=http://${PROXY_SERVER_IP}:${PROXY_PORT}/"
Environment="HTTPS_PROXY=http://${PROXY_SERVER_IP}:${PROXY_PORT}/"
Environment="NO_PROXY=127.0.0.0/8,172.17.0.0/16,10.0.0.0/24,10.244.0.0/16,192.168.0.0/16,wang.org,cluster.local"
EOF
systemctl daemon-reload
systemctl restart docker.service
systemctl is-active docker.service &> /dev/null
if [ $? -eq 0 ] ;then
color "Docker 服务代理配置完成!" 0
else
color "Docker 服务代理配置失败!" 1
exit 1
fi
}
stop () {
rm -f /etc/systemd/system/docker.service.d/http-proxy.conf
systemctl daemon-reload
systemctl restart docker.service
systemctl is-active docker.service &> /dev/null
if [ $? -eq 0 ] ;then
color "Docker 服务代理取消完成!" 0
else
color "Docker 服务代理取消失败!" 1
exit 1
fi
}
usage () {
echo "Usage: $(basename $0) start|stop"
exit 1
}
case $1 in
start)
start
;;
stop)
stop
;;
*)
usage
;;
esac