当前位置: 首页 > news >正文

macm1使用docker部署opencode arm

一、下载arm版本opencode cli

github地址:https://github.com/anomalyco/opencode/releases/download/v1.18.3/opencode-linux-arm64.tar.gz

二、使用Dockerfile构建镜像

1、新建opencode-docker目录

opencode-linux-arm64.tar.gz解压后放此目录下;

2、新建Dockerfile配置:

FROM --platform=linux/arm64 debian:trixie-slimRUN apt-get update && apt-get install -y --no-install-recommends \ca-certificates \git \openssh-client \libssl3 \&& rm -rf /var/lib/apt/lists/* \&& useradd -m -s /bin/bash -u 1000 opencode# 复制你解压出的二进制
COPY opencode /usr/local/bin/opencode
RUN chmod +x /usr/local/bin/opencode# 关键:创建所有需要的目录并设置权限
RUN mkdir -p /home/opencode/.config/opencode \/home/opencode/.local/share/opencode \/home/opencode/.local/state \/home/opencode/.ssh \/workspace \&& chown -R opencode:opencode /home/opencodeUSER opencode
WORKDIR /home/opencode# 挂载配置和 SSH 密钥
VOLUME ["/home/opencode/.config/opencode"]
VOLUME ["/home/opencode/.ssh"]
VOLUME ["/workspace"]ENV BUN_RUNTIME_TRANSPILER_CACHE_PATH=0ENTRYPOINT ["opencode"]

3、构建

docker build -t opencode:1.18.3-arm64 .

三、启动容器

1、新建serve目录

2、目录下新建docker-compose.yaml配置

version: "3.8"services:opencode:image: opencode:1.18.3-arm64platform: linux/arm64container_name: opencode# Web 服务端口ports:- "${OPENCODE_PORT:-4096}:4096"volumes:- ${PROJECT_PATH:-$(pwd)}:/workspace- ./opencode-config:/home/opencode/.config/opencode- ./opencode-auth:/home/opencode/.local/share/opencode- ~/.ssh/id_ed25519:/home/opencode/.ssh/id_ed25519:roenvironment:- GH_TOKEN=${GH_TOKEN:-}- OPENCODE_SERVER_USERNAME=${OPENCODE_SERVER_USERNAME:-opencode}- OPENCODE_SERVER_PASSWORD=${OPENCODE_SERVER_PASSWORD:-}working_dir: /workspace# 关键:覆盖默认 entrypoint,启动 serve 模式,API交互command: ["serve", "--hostname", "0.0.0.0", "--port", "4096"]

3、新建.env配置

# .env
PROJECT_PATH=./workspace
OPENCODE_PORT=4096
OPENCODE_SERVER_USERNAME=opencode
OPENCODE_SERVER_PASSWORD=opencode123
GH_TOKEN=ghp_xxxxxxxxx

4、serve目录下新建workspace目录、opencode-config、opencode-auth目录,挂载

5、启动

docker compose up -d
http://www.jsqmd.com/news/1221036/

相关文章:

  • 「ECG信号处理——(32)面向可穿戴设备的ECG运动伪影去除算法对比研究」2026年05月25日
  • LongCat-2.0-FP8在企业级应用中的实践:美团AI技术栈解析
  • 构建企业级配置系统:node-jsonc-parser在微服务架构中的应用
  • 2026武汉钻石回收价格行情指南 正规渠道无隐形扣费实测推荐 - 奢侈品回收机构参考
  • Windows Terminal Quake 支持哪些系统?跨平台兼容性详解
  • GraphRAG真能提效吗?先看流程里最慢的那一步
  • M-EMACS编程环境配置指南:支持Python、C++、Rust、Go等20+编程语言
  • 别让用户干等:流式对话的中断、重试与多会话并发管理
  • 第4天:数据到底存在哪里?——理解内存的本质
  • Slug未来路线图:URL短链服务的演进方向和技术趋势
  • 2026年7月最新劳力士济南万达广场(章丘店)维修保养服务电话 - 劳力士官方服务中心
  • 壶关县室内空气检测公司哪家靠谱?横向对比多家机构,甲醛检测治理专业度深度评测 - 专注室内空气检测治理
  • 开源项目第163期:wigolo — 零 API Key、零费用的本地优先 Agent 网络搜索工具,对比 Tavily/Exa/Firecrawl
  • ScrollScreenshot安装与配置:从零开始搭建Android滚动截图环境
  • Traquer社区精选:用户分享的3个创意应用场景
  • WAIC2026:一键拍出文物“证件照”,扫描全能王AI去反光“看清”千年古画
  • 067、3A联动与协同控制:曝光、对焦、白平衡的闭环优化
  • 如何永久保存微信聊天记录:WeChatMsg让你的数字记忆不再消失
  • Devstral-Small-2-24B-Instruct-2512-5bit核心功能解析:图像描述、视觉问答、多模态对话
  • 数据压缩原理与应用 | 实验五 | 基于DCT量化的音频编解码
  • 提升SEO排名:gulp-htmlmin助力网站性能优化的终极方案
  • 2026 国内高端网站建设公司靠谱推荐,13家高端网站设计公司综合排名(大型建站大厂 + 独立设计工作室),专注品牌官网、企业站定制开发的知名高端建站企业完整盘点 - 产业观察报
  • 港口AI预警系统(散货监控+跨境跟踪+一屏全域管控)
  • 2026丽水大冰块优选推荐榜单:哪家配送更靠谱? - 热点咨讯
  • 【记录】什么时候选择 .Net Framework
  • 国产开源表单系统:填鸭表单TDuckX3.7版本发布!
  • Seashells安全最佳实践:保护你的命令行数据传输安全指南
  • 拉萨人卖黄金别踩坑!这五家正规回收门店街坊都在推 - 小城生活闲谈
  • AI 评测系列(02):评测指标设计——从业务目标到可量化指标
  • 番茄小说下载器完整指南:如何免费实现离线阅读自由