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

mobile-testkit Docker 镜像下载 - 轩辕镜像

mobile-testkit 镜像详细信息和使用指南

mobile-testkit 镜像标签列表和版本信息

mobile-testkit 镜像拉取命令和加速下载

mobile-testkit 镜像使用说明和配置指南

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

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

极速拉取 Docker 镜像服务

相关 Docker 镜像推荐

热门 Docker 镜像下载

mobile-testkit
couchbase/mobile-testkit
自动构建

mobile-testkit 镜像详细信息

mobile-testkit 镜像标签列表

mobile-testkit 镜像使用说明

mobile-testkit 镜像拉取命令

Docker 镜像加速服务

轩辕镜像平台优势

镜像下载指南

相关 Docker 镜像推荐

用于部署Couchbase Mobile后端并在其上运行功能和性能测试的Docker镜像。
0 次下载activecouchbase镜像

mobile-testkit 镜像详细说明

mobile-testkit 使用指南

mobile-testkit 配置说明

mobile-testkit 官方文档

Couchbase Mobile TestKit 镜像文档

镜像概述和主要用途

该Docker镜像用于部署Couchbase Mobile后端环境,并在其上执行功能测试和性能测试。支持本地迭代开发、Jenkins CI/CD测试执行、网络流量捕获分析以及自定义镜像构建,为Couchbase Mobile相关组件的测试提供完整环境。

核心功能和特性

  • 支持Couchbase Mobile后端环境部署与测试
  • 提供本地开发环境挂载,实现代码实时修改与测试
  • 集成"docker in docker"模式,支持容器内Docker操作
  • 包含测试套件执行入口,适配Jenkins自动化流程
  • 支持网络流量捕获,便于测试调试与问题定位
  • 提供本地镜像重建及Sync Gateway交叉编译部署能力

使用场景和适用范围

  • 本地Couchbase Mobile应用迭代开发与测试验证
  • Jenkins等CI/CD系统中自动化测试流程执行
  • 测试过程中的网络流量分析与问题排查
  • 自定义测试环境构建与镜像定制
  • Sync Gateway组件的交叉编译与部署验证

详细使用方法和配置说明

重要前置说明

  • SSH访问配置:镜像会复制公钥,以允许mobile-testkit容器SSH访问其他集群容器
  • 清理 stale 状态:若在主机开发,可能需要执行clean.sh清除挂载卷中的陈旧状态(如.pyc文件、测试缓存等)
  • 依赖拉取:如需拉取docker/create_cluster.py所需依赖,需重新执行source setup.sh
    bash
    $ source setup.sh
    

本地开发环境配置

通过挂载本地开发目录到容器,实现代码实时修改与测试执行。

使用"docker in docker"模式

本地机器执行(挂载本地目录和配置文件):

bash
$ docker run --privileged -it --network=cbl --name mobile-testkit \
  -v $(pwd):/opt/mobile-testkit \
  -v $(pwd)/resources/pool.json:/opt/mobile-testkit/resources/pool.json \
  -v /var/run/docker.sock:/var/run/docker.sock \
  -v /usr/bin/docker:/usr/bin/docker \
  couchbase/mobile-testkit /bin/bash

远程机器执行(无需挂载本地目录,手动复制配置文件):

bash
docker run --privileged -it --network=cbl --name mobile-testkit \
  -v /var/run/docker.sock:/var/run/docker.sock \
  -v /usr/bin/docker:/usr/bin/docker \
  couchbase/mobile-testkit /bin/bash

之后需手动将主机的pool.json文件复制到容器中。

Centos7主机 workaround(解决libltdl.so.7缺失错误):

bash
docker run ... -v /usr/lib64/libltdl.so.7:/usr/lib64/libltdl.so.7 ...
容器内操作步骤

进入容器后执行以下命令配置测试环境:

bash
# 复制并修改ansible配置
cp ansible.cfg.example ansible.cfg
sed -i 's/remote_user = vagrant/remote_user = root/' ansible.cfg

# 生成集群配置
python libraries/utilities/generate_clusters_from_pool.py --use-docker

# 执行测试(示例)
pytest -s --mode=cc --server-version=4.6.1 --sync-gateway-version=1.4.0.2-3 testsuites/syncgateway/functional/tests

执行完整测试套件(Jenkins适用)

通过entrypoint.sh执行预设测试套件(适用于CI/CD流程):

cc/no xattrs模式

bash
docker run --rm --privileged --network=cbl --name mobile-testkit \
  -v hosts.json:/opt/mobile-testkit/hosts.json \
  -v /var/run/docker.sock:/var/run/docker.sock \
  -v /usr/bin/docker:/usr/bin/docker \
  mobile-testkit-local ./entrypoint.sh master base_cc 'pytest -s --sequoia --server-version=4.6.2 --sync-gateway-version=1.4.1-3 testsuites/functional/tests/'

网络流量捕获

在运行Docker的Linux主机上捕获测试相关网络流量:

bash
# 安装tcpdump
$ yum install -y tcpdump

# 捕获docker0接口4984端口流量并保存
$ tcpdump -i docker0 -w /tmp/docker.pcap port 4984
^C  # 按Ctrl+C停止捕获

/tmp/docker.pcap文件传输到OSX主机,使用Wireshark打开即可分析测试套件与Sync Gateway之间的HTTP流量。

本地重建镜像

若Docker Hub上的镜像不是最新版本,可本地重建:

bash
$ cd docker/mobile-testkit
$ docker build -t mobile-testkit-dev .

在OSX上交叉编译Sync Gateway并部署到容器

OSX主机上编译

bash
$ ./build.sh && rm -f sync_gateway && GOOS=linux GOARCH=amd64 go build -v github.com/couchbase/sync_gateway && cp sync_gateway /tmp/cbl.1-sg/sync_gateway/

容器内部署

bash
$ cd /home/sync_gateway && systemctl stop sync_gateway && \
  rm -f /opt/couchbase-sync-gateway/bin/sync_gateway && \
  cp sync_gateway /opt/couchbase-sync-gateway/bin/sync_gateway && \
  systemctl restart sync_gateway

用户好评

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

oldzhang的头像

oldzhang

运维工程师

Linux服务器

5

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