视频加载失败

在 Linux 中创建和运行 Docker 登录脚本及配置 Docker 局域网代理

397 字
2 分钟
在 Linux 中创建和运行 Docker 登录脚本及配置 Docker 局域网代理

本文撰写于 2025 年 7 月 2 日。

配置Docker登录脚本#

创建脚本文件#

Terminal window
sudo nano /usr/local/bin/docker_login

docker_login内容#

#!/bin/bash
# ====== 配置部分 ======
REGISTRY="https://index.docker.io/v1/" # 默认为 Docker Hub
# ====== 获取用户输入 ======
read -p "请输入 Docker 用户名: " DOCKER_USER
read -s -p "请输入 Docker 密码: " DOCKER_PASS
echo
# 是否使用代理
read -p "是否使用 SOCKS5 代理?(y/n,默认 n): " USE_PROXY
if [[ "$USE_PROXY" =~ ^[Yy]$ ]]; then
read -p "请输入 SOCKS5 代理地址(例如 socks5://user:pass@192.168.1.10:10810): " PROXY_ADDR
export ALL_PROXY="$PROXY_ADDR"
echo "🌐 已设置 SOCKS5 代理:$PROXY_ADDR"
else
echo "🚫 不使用代理。"
fi
# ====== 登录操作 ======
echo "$DOCKER_PASS" | docker login --username "$DOCKER_USER" --password-stdin "$REGISTRY"
LOGIN_RESULT=$?
if [ $LOGIN_RESULT -eq 0 ]; then
echo "✅ 用户 $DOCKER_USER 登录成功!"
else
echo "❌ 登录失败,请检查用户名或密码是否正确。"
fi
# 清理代理设置(如果设置了的话)
unset ALL_PROXY

赋予执行权限#

Terminal window
sudo chmod +x /usr/local/bin/docker_login

在任意目录下直接输入docker_login即可运行脚本:

Terminal window
docker_login

⚠️ 注意事项 / 常见问题#

Docker CLI 本身不直接支持 SOCKS5 代理,但如果是在 Linux 环境下,并且系统全局网络走的是某个 SOCKS5 代理,可以使用 proxychains 来强制 Docker 命令走代理。

如果只是临时用途,可以将以上脚本直接放在工作目录中,在使用脚本时,需要先进入脚本所在目录后运行。

配置Docker使用局域网代理#

创建或编辑Docker服务的systemd配置文件:#

Terminal window
sudo mkdir -p /etc/systemd/system/docker.service.d
sudo nano /etc/systemd/system/docker.service.d/http-proxy.conf

http-proxy.conf内容#

[Service]
Environment="HTTP_PROXY=socks5://192.168.0.13:10810"
Environment="HTTPS_PROXY=socks5://192.168.0.13:10810"
Environment="NO_PROXY=localhost,127.0.0.1,.local,.internal,docker.sock"

重新加载systemd配置并重启Docker服务#

Terminal window
sudo systemctl daemon-reload
sudo systemctl restart docker

文章分享

如果这篇文章对你有帮助,欢迎分享给更多人!

在 Linux 中创建和运行 Docker 登录脚本及配置 Docker 局域网代理
https://blog.azxle.cn/posts/docker-login-script-and-lan-proxy/
作者
azxle
发布于
2026-07-23
许可协议
CC BY-NC-SA 4.0
Profile Image of the Author
azxle
持续折腾,持续记录。
公告
博客已上线,目前处于初期阶段,内容持续补充中。如有问题或建议,欢迎留言。
分类
标签
最新动态
站点统计
文章
12
分类
2
标签
27
总字数
4,914
运行时长
0 天
最后活动
0 天前
站点信息
构建平台
EdgeOne Pages
博客版本
Firefly v6.16.8
文章许可
CC BY-NC-SA 4.0
文章目录