Docker 镜像安装
这两种方法都涉及到通过 Docker 拉取、保存并加载镜像,或者通过 GitHub 操作来获取 Docker 镜像。
方法 1:通过有梯子环境下载 Docker 镜像并导入
如果你在本地无法直接拉取 Docker 镜像,可以通过在有梯子环境下进行操作:
-
拉取镜像:
进入 Docker Hub (https://hub.docker.com),找到需要的镜像并执行docker pull <镜像名称>
来拉取镜像。 -
保存镜像:
使用docker save
命令将拉取下来的镜像保存成一个文件:docker save -o <镜像文件>.tar <镜像名称>
-
传输镜像文件:
将.tar
文件通过其他方式(如 U 盘、内网传输等)传输到需要使用该镜像的机器上。 -
加载镜像:
在目标机器上使用docker load
命令加载镜像:docker load -i <镜像文件>.tar
这样,你就可以在没有互联网连接的情况下在本地安装 Docker 镜像。
方法 2:使用 GitHub Fork 和 Actions 自动发布 Docker 镜像 (来自bilibili)
项目地址:https://github.com/wukongdaily/DockerTarBuilder
如果你对 GitHub Actions 有了解,可以使用它来自动构建和发布 Docker 镜像。以下是基本步骤:
-
Fork 镜像仓库:
- 进入 https://hub.docker.com 找到你需要的镜像仓库。
- 点击页面中的
Fork
按钮创建该仓库的副本。
-
配置 Actions 发布镜像:
- 在 自己的fork的GitHub 仓库页面,进入
Actions
选项卡。 - 在
Actions
中找到适合的发布工作流(根据镜像大小选择)。- 如果 Docker 镜像小于 2GB,可以使用
Get-AMD64-Docker-Images-Release
Get-ARM32-Docker-Images-Release
Get-ARM64-Docker-Images-Release。 - 如果 Docker 镜像大于 2GB 且小于 5GB,选择
ARM32 Pull and Save Docker Image
ARM64 Pull and Save Docker Image
x86-64 Pull and Save Docker Image。
- 如果 Docker 镜像小于 2GB,可以使用
- 在 自己的fork的GitHub 仓库页面,进入
-
运行工作流:
- 点击
Run Workflow
,填写镜像名称(多个用英文逗号分开)。 - GitHub Actions 会自动构建和发布镜像。
- 点击
-
下载并加载镜像:
- 下载构建好的镜像文件。
- 使用
docker load
命令将镜像加载到本地:docker load -i <镜像文件>.tar
参考链接
- pull-save-load 方法查看:
点击这里查看详细教程
方法 3:Clash Verge 代理配置( Podman)
在使用容器化应用时,我们经常需要配置代理以访问外部资源。本教程将指导你如何正确配置 Clash Verge 的代理端口,并将其应用到 Podman 容器中。
1. 查看 Clash Verge 配置文件中的端口设置
首先,我们需要确认 Clash Verge 的代理端口配置。通过以下命令查看配置文件:
cat /home/yys/.local/share/io.github.clash-verge-rev.clash-verge-rev/clash-verge.yaml | grep port
输出示例:
mixed-port: 7897
port: 19275
port: 476
port: 14563
# 其他端口配置...
从输出中可以看到,mixed-port
是 7897,这是我们需要使用的 HTTP/HTTPS 代理端口。
2. 配置系统环境变量使用代理
确认端口后,我们需要配置环境变量让 Podman 使用这个代理。在终端中执行以下命令:
# 设置 HTTP 和 HTTPS 代理
export HTTP_PROXY=http://127.0.0.1:7897
export HTTPS_PROXY=http://127.0.0.1:7897
# 可选:设置 NO_PROXY 排除本地地址
export NO_PROXY=localhost127.0.0.1.local
3. 验证代理配置是否生效
配置完成后,可以通过以下命令验证代理是否正常工作:
# 检查是否能通过代理访问外部网络
curl -vv https://www.google.com
如果看到正常的 HTML 输出,则表示代理配置成功。如果失败,请检查 Clash Verge 是否正在运行。
4. 持久化代理配置(可选)
为了避免每次启动终端都需要重新设置代理,可以将配置添加到 shell 的配置文件中:
# 对于 bash 用户
echo 'export HTTP_PROXY=http://127.0.0.1:7897' >> ~/.bashrc
echo 'export HTTPS_PROXY=http://127.0.0.1:7897' >> ~/.bashrc
echo 'export NO_PROXY=localhost127.0.0.1.local' >> ~/.bashrc
# 对于 zsh 用户
echo 'export HTTP_PROXY=http://127.0.0.1:7897' >> ~/.zshrc
echo 'export HTTPS_PROXY=http://127.0.0.1:7897' >> ~/.zshrc
echo 'export NO_PROXY=localhost127.0.0.1.local' >> ~/.zshrc
# 使配置立即生效
source ~/.bashrc # 或 source ~/.zshrc
5. 在 Podman 中使用代理
配置好环境变量后,就可以正常使用 Podman 拉取镜像了:
# 示例:使用 podman-compose 启动容器
cd ~/podman
podman-compose up -d
6. 常见问题及解决方法
问题1:连接被拒绝 (connect: connection refused)
这通常表示代理服务器未运行或端口配置错误。解决方法:
- 确认 Clash Verge 正在运行
- 使用
ss -tulpn | grep 7897
检查端口是否被监听 - 修正环境变量中的端口号
问题2:拉取镜像速度仍然很慢
可能是代理服务器性能不佳。可以尝试:
- 切换 Clash Verge 中的代理节点
- 添加更多高速代理服务器
通过以上步骤,你可以成功配置 Clash Verge 代理并在 Podman 中使用,确保容器能够顺利访问外部网络资源。
本文作者: 永生
本文链接: http://yys.zone:8080/detail/?id=374
版权声明: 本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明出处!
评论列表 (0 条评论)