proxy-docker.sh

docker代理脚本

解释:本脚本为docker代理开启和关闭功能

vim proxy-docker.sh
#!/bin/bash


toggle_proxy() {
    file_path="/usr/lib/systemd/system/docker.service"
    proxy_line1='Environment="HTTP_PROXY=http://192.168.10.12:10811"'
    proxy_line2='Environment="HTTPS_PROXY=http://192.168.10.12:10811"'

    case $1 in
        1)
            # Enable proxy
            if ! grep -q "$proxy_line1" "$file_path"; then
                sed -i '/\[Service\]/a '"$proxy_line1"'' "$file_path"
                sed -i '/\[Service\]/a '"$proxy_line2"'' "$file_path"
                echo "Proxy enabled."
            else
                echo "Proxy is already enabled."
            fi
            systemctl daemon-reload
            systemctl restart docker.service
            ;;
        2)
            # Disable proxy
            if grep -q "$proxy_line1" "$file_path"; then
                sed -i '\|Environment="HTTP_PROXY=http://192.168.10.12:10811"|d' "$file_path"
                sed -i '\|Environment="HTTPS_PROXY=http://192.168.10.12:10811"|d' "$file_path"
                echo "Proxy disabled."
            else
                echo "Proxy is already disabled."
            fi
            systemctl daemon-reload
            systemctl restart docker.service
            ;;
        *)
            echo "Usage: $0 <1 or 2>"
            echo "1 - Enable proxy"
            echo "2 - Disable proxy"
            exit 1
            ;;
    esac
}

# Check if argument is passed
if [ $# -eq 0 ]; then
    echo "Please specify 1 to enable proxy or 2 to disable proxy."
    exit 1
fi

# Call function with argument
toggle_proxy $1

添加权限
chmod +x toggle_proxy.sh

/root/proxy-docker.sh	1		#开启
/root/proxy-docker.sh	2		#关闭

#添加别名、放到环境变量和配置别名全局生效文件
vim /etc/profile
alias proxy-docker1='/path/to/proxy-docker.sh 1'
alias proxy-docker2='/path/to/proxy-docker.sh 2'

#执行命令
proxy-docker1
proxy-docker2

posted @ 2024-07-24 09:42  姬高波  阅读(43)  评论(0)    收藏  举报