本站面向开发者与科研用户,提供开源镜像的搜索和下载加速服务。
所有镜像均来源于原始开源仓库,本站不存储、不修改、不传播任何镜像内容。

arcanist Docker 镜像下载 - 轩辕镜像

arcanist 镜像详细信息和使用指南

arcanist 镜像标签列表和版本信息

arcanist 镜像拉取命令和加速下载

arcanist 镜像使用说明和配置指南

Docker 镜像加速服务 - 轩辕镜像平台

国内开发者首选的 Docker 镜像加速平台

极速拉取 Docker 镜像服务

相关 Docker 镜像推荐

热门 Docker 镜像下载

arcanist
nasqueron/arcanist
自动构建

arcanist 镜像详细信息

arcanist 镜像标签列表

arcanist 镜像使用说明

arcanist 镜像拉取命令

Docker 镜像加速服务

轩辕镜像平台优势

镜像下载指南

相关 Docker 镜像推荐

Phabricator的Arcanist命令行客户端Docker镜像,可在无PHP环境的Docker引擎服务器上使用arc命令,避免在各处安装PHP。
1 收藏0 次下载activenasqueron镜像

arcanist 镜像详细说明

arcanist 使用指南

arcanist 配置说明

arcanist 官方文档

nasqueron/arcanist 镜像文档

镜像概述和主要用途

提供nasqueron/arcanist镜像,用于在Docker容器中运行Arcanist(Phabricator的命令行客户端)。旨在无需在Docker引擎服务器上安装PHP的情况下使用arc命令,特别适用于在服务器上调整Docker镜像时使用Arcanist,避免在各处安装PHP环境。

核心功能和特性

  • 作为Docker容器运行Arcanist,无需本地PHP环境
  • 提供两个专用卷:配置卷(存储.arcrc.gitconfig)和工作区卷(存储待操作仓库)
  • 支持通过包装脚本简化arc命令调用,实现直接执行arc <命令>
  • 提供两种增强型包装器:支持普通用户/root运行,解决SSH用户存在性问题和arc call-conduit命令的标准输入传递问题
  • 包含arc update命令,可自动拉取最新镜像并重建用户专用镜像

使用场景和适用范围

适用于需要在无PHP环境的Docker引擎服务器上使用Arcanist的场景,例如:

  • 维护Git仓库(尤其是Docker镜像和PaaS工具相关仓库)
  • 执行各类arc命令(如arc diffarc shellarc call-conduit等)
  • 在Docker环境中进行Phabricator代码审查和仓库管理

详细使用方法和配置说明

安装

拉取镜像后即可直接运行容器或调用arc命令:

bash
# 拉取镜像
docker pull nasqueron/arcanist

# 启动交互式shell
docker run -it --rm nasqueron/arcanist bash

# 直接执行arc命令(示例:arc anoid)
docker run -it --rm nasqueron/arcanist arc anoid

配置和工作区卷

镜像提供两个关键卷,需正确挂载以确保功能正常:

配置卷(/opt/config)

用于存储Arcanist和Git的配置文件,包含:

  • .arcrc:Arcanist配置文件
  • .gitconfig:Git配置文件(含用户身份等信息)

配置方法

  1. 创建本地配置目录:mkdir -p ~/.arc
  2. 复制配置文件到该目录:
    bash
    cp ~/.arcrc ~/.arc/
    cp ~/.gitconfig ~/.arc/
    

工作区卷(/opt/workspace)

用于挂载待操作的Git仓库目录,需将本地仓库路径挂载至此卷。

注意:使用pwd获取当前目录路径(而非.),避免Docker客户端与服务器不在同一机器时的路径解析问题。

简化arc命令调用

方法一:基础包装脚本

创建/usr/local/bin/arc脚本,实现直接调用arc命令:

bash
cat > /usr/local/bin/arc << 'EOF'
#!/bin/sh

if [ "$1" = "shell" ]; then
    shift
    COMMAND=bash
else
    mkdir -p ~/.arc
    COMMAND=arc
fi

docker run -it --rm -v ~/.arc:/opt/config -v $(pwd):/opt/workspace nasqueron/arcanist $COMMAND "$@"
EOF

# 添加执行权限
chmod +x /usr/local/bin/arc

使用示例

bash
arc shell  # 启动包含当前目录的交互式shell
arc diff   # 执行arc diff命令

方法二:增强型包装脚本

contrib/目录提供两种生产级包装器,解决基础脚本的局限性:

推荐:contrib/arc
  • 用户适配:非root用户运行时,自动构建nasqueron/arcanist:<uid>-<gid>专用镜像,解决OpenSSH客户端对用户存在性的要求(仅--user $UID参数不足)
  • 命令增强:提供arc update命令,自动拉取最新基础镜像并重建用户镜像
  • conduit支持:通过日志重定向机制解决arc call-conduit的标准输入传递问题
兼容版:contrib/arc-runs-as-root

跳过用户镜像构建步骤,直接以root身份运行容器,适合无需多用户隔离的场景。

使用优势

  • 已在生产环境验证,可稳定维护数十个Docker镜像和PaaS工具的Git仓库
  • 自动处理容器生命周期、日志读取和命令退出机制

完整使用示例

基础用法

bash
# 挂载配置和工作区运行arc命令
docker run -it --rm \
  -v ~/.arc:/opt/config \
  -v $(pwd):/opt/workspace \
  nasqueron/arcanist arc diff

使用基础包装脚本

bash
# 创建脚本后直接使用
arc shell          # 进入交互式环境
arc list           # 列出待提交的变更
arc commit         # 创建提交

使用增强型包装脚本

bash
# 安装contrib/arc后
arc update         # 更新基础镜像和用户镜像
arc call-conduit differential.query  # 执行conduit API调用
arc shell          # 进入带用户环境的交互式shell

注意事项

  • 路径挂载:始终使用$(pwd)而非.挂载当前目录,确保跨机器环境兼容性
  • 配置完整性:配置卷必须包含.arcrc.gitconfig,否则可能导致认证或命令执行失败
  • conduit命令:基础包装脚本中的-it参数可能导致arc call-conduit异常,建议使用增强型包装脚本
  • 用户权限:普通用户场景下推荐使用contrib/arc,通过用户镜像解决文件权限和SSH客户端问题
  • 更新维护:定期执行arc update(增强型脚本)确保使用最新镜像版本

用户好评

来自真实用户的反馈,见证轩辕镜像的优质服务

oldzhang的头像

oldzhang

运维工程师

Linux服务器

5

"Docker加速体验非常流畅,大镜像也能快速完成下载。"