You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Artifactory容器启动时无法自动加载代理设置的问题咨询

Artifactory容器启动代理配置不生效问题解决

问题原因

Artifactory v7.x版本中,jfcon(JFrog连接服务)会在核心Artifactory服务完成初始化前启动并执行注册同步操作。Web界面配置的代理设置存储在Artifactory的内部配置存储中,此时核心服务尚未加载这些配置,导致jfcon无法获取代理信息,出现连接jes.jfrog.io失败的WARN日志。手动保存代理设置会触发配置刷新,让jfcon获取到代理,但重启容器后,由于启动顺序问题,该流程会重复。

解决方法

1. 通过环境变量配置全局代理(推荐)

直接为容器设置代理环境变量,jfcon启动时会优先读取这些系统级变量,无需等待核心服务加载配置。启动容器时添加以下环境变量:

docker run -d \
  -e HTTP_PROXY=http://你的代理地址:端口 \
  -e HTTPS_PROXY=http://你的代理地址:端口 \
  -e NO_PROXY=localhost,127.0.0.1,你的内部服务域名/IP \
  docker.bintray.io/jfrog/artifactory-pro:7.111.12
  • NO_PROXY需包含Artifactory内部通信的地址,避免内部请求走代理。

2. 提前写入系统配置文件

如果使用持久化存储,将代理配置提前写入Artifactory的系统配置文件$JFROG_HOME/artifactory/etc/system.yaml,容器启动时会自动加载该配置:

shared:
  proxy:
    proxyHost: "你的代理地址"
    proxyPort: 代理端口
    proxyUsername: "" # 代理需认证时填写用户名
    proxyPassword: "" # 代理需认证时填写密码
    proxyType: "http"
    nonProxyHosts: "localhost,127.0.0.1,你的内部服务域名/IP"
    platformProxy: true # 开启Platform代理,对应Web界面的默认代理设置

将该文件放置在容器的持久化目录中(如/var/opt/jfrog/artifactory/etc),启动容器时挂载该目录即可。此方式下,首次启动可能仍会出现一次失败日志,但后续同步周期会自动使用代理,无需手动操作。

3. 延迟jfcon启动(不推荐)

通过自定义启动脚本,让jfcon在Artifactory核心服务完全启动后再启动。此方式需修改容器启动逻辑,复杂度高,容易引发其他问题,仅作为应急方案使用。


内容的提问来源于stack exchange,提问作者user31382835

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.12 07:43:14