owncloud/ocisownCloud Infinite Scale (oCIS) 是新一代文件同步与共享平台,作为数据管理平台的基础。该Docker镜像提供了一种简单、一致的方式来部署和运行oCIS,适用于从个人使用到企业级部署的各种场景。
oCIS旨在替代传统的ownCloud Server,提供更高的可扩展性、更好的性能和简化的部署流程,通过单一容器即可运行完整的文件同步与共享服务。
bashmkdir -p $HOME/ocis/ocis-config mkdir -p $HOME/ocis/ocis-data sudo chown -Rfv 1000:1000 $HOME/ocis/
bashdocker pull owncloud/ocis
bashdocker run --rm -it \ --mount type=bind,source=$HOME/ocis/ocis-config,target=/etc/ocis \ --mount type=bind,source=$HOME/ocis/ocis-data,target=/var/lib/ocis \ owncloud/ocis init --insecure yes
bashdocker run -d \ --name ocis \ -p 9200:9200 \ --mount type=bind,source=$HOME/ocis/ocis-config,target=/etc/ocis \ --mount type=bind,source=$HOME/ocis/ocis-data,target=/var/lib/ocis \ -e OCIS_INSECURE=true \ -e PROXY_HTTP_ADDR=0.0.0.0:9200 \ -e OCIS_URL=https://localhost:9200 \ owncloud/ocis
打开浏览器访问 https://localhost:9200,使用初始化过程中显示的管理员凭据登录。
创建 docker-compose.yml 文件:
yamlversion: '3.7' services: ocis: image: owncloud/ocis container_name: ocis restart: always ports: - "9200:9200" environment: - OCIS_INSECURE=true - PROXY_HTTP_ADDR=0.0.0.0:9200 - OCIS_URL=https://localhost:9200 volumes: - ./ocis-config:/etc/ocis - ./ocis-data:/var/lib/ocis user: "1000:1000"
启动服务:
bashmkdir -p ocis-config ocis-data sudo chown -R 1000:1000 ocis-config ocis-data docker-compose up -d
| 环境变量 | 描述 | 默认值 |
|---|---|---|
OCIS_INSECURE | 是否允许不安全的HTTPS连接 | false |
PROXY_HTTP_ADDR | 代理服务监听地址 | 0.0.0.0:9200 |
OCIS_URL | oCIS实例的基础URL | https://localhost:9200 |
IDM_CREATE_DEMO_USERS | 是否创建演示用户 | false |
OCIS_LOG_LEVEL | 日志级别 (debug, info, warn, error) | info |
| 环境变量 | 描述 | 默认值 |
|---|---|---|
STORAGE_HOME_PATH | 用户主目录存储路径 | /var/lib/ocis/storage/users |
STORAGE_USERS_DRIVER | 用户存储驱动 | local |
| 环境变量 | 描述 | 默认值 |
|---|---|---|
IDP_IDENTIFIER_REGISTRATION_DISABLED | 是否禁用注册 | true |
IDP_LDAP_SERVER | LDAP服务器地址(如需使用LDAP) | 未设置 |
oCIS需要持久化存储以下数据:
/etc/ocis目录/var/lib/ocis目录建议使用Docker卷或绑定挂载来持久化这些目录,如上述示例所示。
默认情况下,oCIS监听9200端口。在生产环境中,建议使用反向代理(如Nginx或Traefik)来处理SSL终止和请求路由。
要启动包含演示用户的实例,可以设置IDM_CREATE_DEMO_USERS环境变量:
bashdocker run --rm -it \ --mount type=bind,source=$HOME/ocis/ocis-config,target=/etc/ocis \ --mount type=bind,source=$HOME/ocis/ocis-data,target=/var/lib/ocis \ -e IDM_CREATE_DEMO_USERS=true \ owncloud/ocis server
演示用户包括:
可以通过修改挂载的ocis-config目录中的配置文件来自定义oCIS实例。主要配置文件包括:
ocis.yaml: 主配置文件idp.yaml: 身份提供商配置proxy.yaml: 代理服务配置修改配置后需要重启容器使更改生效。
生产环境配置:
OCIS_INSECURE选项数据保护:
ocis-data目录网络安全:
bashdocker logs ocis
bashdocker inspect ocis
权限问题:确保宿主机上的ocis-config和ocis-data目录具有UID/GID 1000的权限
端口冲突:如果9200端口已被占用,可以修改端口映射:
bashdocker run -p 8080:9200 ... owncloud/ocis
配置错误:删除配置目录并重新初始化可以解决大多数配置问题
Copyright (c) 2020-2023 ownCloud GmbH <[***]>
本镜像基于Apache 2.0许可证发布。
manifest unknown 错误
TLS 证书验证失败
DNS 解析超时
410 错误:版本过低
402 错误:流量耗尽
身份认证失败错误
429 限流错误
凭证保存错误
来自真实用户的反馈,见证轩辕镜像的优质服务