1.nextcloud简介
nextcloud 是一个开源的网盘,里面还有丰富的插件功能(php),也具有很强大的协作功能,当然个人使用是用不到这部分功能的。总之我用来做各个操作系统的上同步网盘很好用(linux,window,android都有相应的客户端)
2. nextcloud部署
这里我建议使用docker进行部署,docker部署 和 直接裸机部署 性能相比几乎没有损耗,优点是不会破坏本机环境依赖,方便快捷 。 不用找各种依赖
这里怎么安装docker 就不细讲了,自行查询
安装docker-compose
sudo apt install docker-compose
编写docker-compose.yaml
version: '2'
services:
db:
image: mariadb:10.5
restart: always
command: --transaction-isolation=READ-COMMITTED --binlog-format=ROW
networks:
- nextcloud_netbridge
volumes:
- /nextcloud/db:/var/lib/mysql
environment:
- MYSQL_ROOT_PASSWORD=123456
- MYSQL_PASSWORD=nextcloud
- MYSQL_DATABASE=nextcloud
- MYSQL_USER=nextcloud
app:
image: nextcloud
restart: always
ports:
- 1234:80 # 1234 为对外暴漏的端口(可以修改),80为容器内端口不用修改
networks:
- nextcloud_netbridge
links:
- db
volumes:
- /nextcloud/app:/var/www/html
environment:
- MYSQL_PASSWORD=nextcloud
- MYSQL_DATABASE=nextcloud
- MYSQL_USER=nextcloud
- MYSQL_HOST=db
networks:
nextcloud_netbridge:
driver: bridge
启动容器:
docker-compose up -d
3. nextcloud升级
对于docker 镜像里面的 nextcloud 版本是比较低的版本,最新的nextcloud提供主题。
这也是我更新的最大动力
docker 部署后再设置里本身可以更新,但是受限网络等种种原因我一直没有更新成功,所有这里采用另一种方式,直接到nextcloud 官网,下载最新版本:https://nextcloud.com/install/#instructions-server
将其下载下来
建立 Dockerfile
文件
FROM nextcloud:latest
copy ./latest.tar /usr/src/
RUN cd /usr/src && rm -rf nextcloud && tar -xvf latest.tar && rm -rf latest.tar
然后重新构建镜像
docker build -t nextcloud27 .
修改前面docker-compose.yaml 文件,重新启动容器:
app:
image: nextcloud27
4. nextcloud一些命令
nextcloud 有一个occ命令,可以控制nextcloud数据库以及配置文件的内容修改:
docker exec -u 33 nextcloud_app_1 php occ config:app:set serverinfo token --value yourtoken #监控服务设置token
docker exec -u 33 nextcloud_app_1 php occ
docker exec -u 33 nextcloud_app_1 php occ files:scan --all #扫描本地文件,更新nextcloud显示