Nextcloud是一款开源的私有云盘项目,适用于个人或团队内部文件存储与共享。本篇主要介绍它的部署以及集成ldap实现认证。
服务端部署
这里使用docker搭建nextcloud服务端,后端选择postgresql数据库;
mkdir nextcloud && cd nextcloud
cat > docker-compose.yml <<EOF
version: "3.9"
networks:
cloud:
driver: bridge
services:
nextcloud:
container_name: nextcloud
hostname: nextcloud
image: docker.io/library/nextcloud:30.0.4-apache
restart: unless-stopped
ports:
- 8080:80
networks:
- cloud
environment:
- NEXTCLOUD_ADMIN_USER=root
- NEXTCLOUD_ADMIN_PASSWORD=root202412
- POSTGRES_HOST=postgresql
- POSTGRES_DB=cloud
- POSTGRES_USER=cloud
- POSTGRES_PASSWORD=cloudx1234
- TZ=Asia/Shanghai
volumes:
- /etc/localtime:/etc/localtime:ro
- ./data:/var/www/html
postgresql:
image: postgres:15
container_name: postgresql
hostname: postgresql
restart: always
#ports:
# - "5432:5432"
networks:
- cloud
volumes:
- ./pgsql:/var/lib/postgresql/data
- /etc/localtime:/etc/localtime:ro
environment:
- POSTGRES_USER=cloud
- POSTGRES_PASSWORD=cloudx1234
- POSTGRES_DB=cloud
- TZ=Asia/Shanghai
EOF
在浏览器访问nextcloud,出现如下页面;
按照提示修改配置文件;
vim data/config/config.php
---
'trusted_domains' =>
array (
0 => 'localhost',
1 => '10.0.0.70:8080', # 当前访问的url地址
),
再次刷新页面;
集成ldap
关于ldap服务的搭建与配置可以参考之前的文章。如下,在应用页中启用ldap功能;
在管理配置中找到ldap进行配置;
对登陆的用户组进行筛选;
配置后查看用户列表;
验证登陆;