Docker Proxy and Env Variables
为 Docker 容器设置代理及环境变量的教程
在本教程中,我们将深入探讨如何为 Docker 容器设置代理及环境变量。我们将使用 Alpine Linux 作为基础环境,并特别针对在 NAS 上运行的 Docker。
📖 目录
- 确定 Docker 容器环境
- APK 镜像源的修改
- 为 Docker 容器设置代理
- NAS 中的 Docker 管理
- 设置容器启动时自动加载的脚本
1。确定 Docker 容器环境
在 Docker 容器中运行以下命令,以查看您的操作系统版本:
1 | cat /etc/os-release |
定义:/etc/os-release
文件为您提供有关您正在运行的操作系统版本的信息。
2。APK 镜像源的修改
如果你在 Alpine Linux 容器中感觉 apk
命令很慢,可能是因为默认的镜像源速度不佳。您可以考虑切换到其他的镜像源,例如中国的镜像源。
步骤:
-
打开 APK 的镜像源配置文件:
1
vi /etc/apk/repositories
-
替换默认的源为中国的源:
1
http://mirrors.aliyun.com/alpine/v3.x/main
-
更新 APK 的包索引:
1
apk update
3。为 Docker 容器设置代理
定义:代理服务器是一个中间服务器,可以为其它计算机的网络请求提供服务。设置代理可以帮助您绕过网络限制,或加速网络请求。
步骤:
-
在容器内设置代理环境变量:
1
2export http_proxy=http://192.168.31.247:7890
export https_proxy=http://192.168.31.247:7890 -
如果您使用的是
uvicorn
命令启动应用,您可以考虑将上述代理环境变量直接加入启动命令。但这取决于您的具体应用和设置。
4。NAS 中的 Docker 管理
在某些 NAS 设备上,您可能不能直接使用 docker run
命令。在这种情况下,您需要使用 NAS 提供的界面或 API 来管理 Docker 容器。
5。设置容器启动时自动加载的脚本
如果您希望在容器启动时自动设置某些环境变量或执行其他命令,您可以考虑修改启动脚本。
步骤:
-
在
/etc/profile.d/
目录下创建一个新的脚本文件,例如setup.sh
:1
2echo "export http_proxy=http://192.168.31.247:7890" > /etc/profile.d/setup.sh
echo "export https_proxy=http://192.168.31.247:7890" >> /etc/profile.d/setup.sh -
为新创建的脚本赋予执行权限:
1
chmod +x /etc/profile.d/setup.sh
定义:/etc/profile.d/
目录下的脚本通常会在系统启动时自动执行。
希望以上教程能够帮助您在 Docker 容器中设置代理和环境变量!🚀
评论