journeyapps/powersync-servicePowerSync 是一个同步引擎及SDK集合,用于构建本地优先(local-first)应用。其核心功能是保持客户端 SQLite 数据库与服务端数据库(PostgreSQL、MongoDB 或 MySQL)的实时同步,提供即时响应的用户界面和简化的状态传输能力。该 Docker 镜像封装了 PowerSync 服务端组件,便于快速部署和集成到现有系统中。
支持架构:amd64、arm64
config.yaml),详细格式参见 官方配置文档通过以下命令启动 PowerSync 服务实例:
bashdocker run \ -p 8080:80 \ # 端口映射:主机8080端口映射到容器80端口 -e POWERSYNC_CONFIG_B64="$(base64 -i ./config.yaml)" \ # 注入base64编码的配置文件 --network my-local-dev-network \ # 连接到包含数据库的网络(如有) --name my-powersync \ # 容器名称 journeyapps/powersync-service:latest # 镜像名称及标签
-p 8080:80:容器内服务默认监听80端口,映射到主机8080端口供外部访问-e POWERSYNC_CONFIG_B64:必填环境变量,值为 config.yaml 文件的 base64 编码字符串,用于配置服务端同步规则、数据库连接等核心参数--network:若服务端数据库(如PostgreSQL)运行在其他容器中,需通过共同网络实现通信参考 官方 Docker Compose 示例,以下为简化版配置(含PostgreSQL依赖):
yamlversion: '3.8' services: powersync: image: journeyapps/powersync-service:latest ports: - "8080:80" environment: - POWERSYNC_CONFIG_B64=${POWERSYNC_CONFIG_B64} # 从环境变量注入配置 depends_on: - postgres networks: - app-network postgres: image: postgres:14 environment: - POSTGRES_USER=powersync - POSTGRES_PASSWORD=secure_password - POSTGRES_DB=powersync_demo volumes: - postgres-data:/var/lib/postgresql/data networks: - app-network networks: app-network: volumes: postgres-data:
使用方法:
config.yaml 并编码:export POWERSYNC_CONFIG_B64=$(base64 -i ./config.yaml)docker-compose up -dconfig.yaml 是 PowerSync 服务的核心配置,需包含数据库连接信息、同步规则、认证配置等。示例结构(详细配置参见 官方文档):
yamldatabase: type: postgres url: "postgresql://user:password@postgres:5432/dbname" sync: rules: - table: "todos" columns: ["id", "title", "completed"] where: "user_id = auth.uid()"
配置文件需通过 base64 编码后注入环境变量 POWERSYNC_CONFIG_B64,编码命令:base64 -i ./config.yaml
PowerSync 可能收集***的使用遥测数据,用于优化产品功能和路线图。遥测数据收集为可选功能,用户可选择退出。详情参见 遥测文档。
本镜像发布遵循 FSL-1.1-ALv2 许可证。
镜像包含的软件许可证详情参见 源码许可证。
注意:镜像可能包含基础系统组件(如Bash)及依赖库,其使用需遵守各自的许可证条款。用户应确保使用本镜像符合所有包含软件的许可要求。


manifest unknown 错误
TLS 证书验证失败
DNS 解析超时
410 错误:版本过低
402 错误:流量耗尽
身份认证失败错误
429 限流错误
凭证保存错误
来自真实用户的反馈,见证轩辕镜像的优质服务