ARTICLE DETAIL

资讯详情

深耕网站建设与运营推广的一线实战洞察。

dockercontainerd代理设置脚本

dockercontainerd代理设置脚本

具体脚本

root@ubuntu-21:~# cat RQproxy.sh
#!/bin/bash
#用于docker或者containerd开启代理#####################修改成自己的代理的ip+port###########################
httpipp='Environment="HTTP_PROXY=http://10.0.0.1:7897/"'
httpsipp='Environment="HTTPS_PROXY=http://10.0.0.1:7897/"'
######################################################################if [ $# -eq 0 ];thenecho -e "\033[41;33m 请输入正确命令: \033[0m"echo "开启代理命令:$0 0"echo "关闭代理命令:$0 1"exit 1
fiopenDockerProxy() {
sed -i '/^\[Service\]$/ a '"$httpipp"'    '  /usr/lib/systemd/system/docker.service
sed -i '/^\[Service\]$/ a '"$httpsipp"'    '  /usr/lib/systemd/system/docker.servicesystemctl daemon-reload
systemctl restart dockerecho -e "\033[32m docker_proxy open \033[0m"}
closeDockerProxy() {
sed -i '\|Environment="HTTP_PROXY=http://10.0.0.1:7897/"| d '  /usr/lib/systemd/system/docker.service
sed -i '\|Environment="HTTPS_PROXY=http://10.0.0.1:7897/"| d '  /usr/lib/systemd/system/docker.servicesystemctl daemon-reload
systemctl restart dockerecho -e "\033[31m docker_proxy close \033[0m"
}openContainerdProxy() {
sed -i '/^\[Service\]$/ a '"$httpipp"'    '  /usr/lib/systemd/system/containerd.service
sed -i '/^\[Service\]$/ a '"$httpsipp"'    '  /usr/lib/systemd/system/containerd.servicesystemctl daemon-reload
systemctl restart containerdecho "\033[32m containerd_proxy \033[0m"}
closeConatinerdProxy() {
sed -i '\|Environment="HTTP_PROXY=http://10.0.0.1:7897/"| d '  /usr/lib/systemd/system/containerd.service
sed -i '\|Environment="HTTPS_PROXY=http://10.0.0.1:7897/"| d '  /usr/lib/systemd/system/containerd.servicesystemctl daemon-reload
systemctl restart containerdecho "\033[31m containerd_proxy close \033[0m"
}if [ -e /etc/containerd/config.toml  ];thencase $1 in"0")echo "正在开启containerd代理..."openContainerdProxy;;"1")echo "正在清理containerd代理..."closeConatinerdProxy;;esac
elsecase $1 in"0")echo "正在开启docker代理..."openDockerProxy;;"1")echo "正在清理docker代理..."closeDockerProxy;;esac
fi

使用验证

加权限:
chmod +x RQproxy.sh
执行:
./RQproxy.sh 0 #开启代理
./RQproxy.sh 1 #关闭代理
验证:
root@ubuntu-21:~# docker info | grep ProxyHTTP Proxy: http://10.0.0.1:7897/HTTPS Proxy: http://10.0.0.1:7897/
返回列表