参考以下三篇安装docker和docker-compose
docker版本:20.10.*
docker-compose版本:2.2.2
mariadb-docker版本:10.5.17
redis-docker版本:6.2.7
nextcloud-docker版本:24.0.4
# 拉取数据库镜像
docker pull mariadb:10.5.17
# 拉取redis镜像
docker pull redis:6.2.7-bullseye
# 拉取nextcloud-apache镜像
docker pull nextcloud:24.0.4-apache
# 查看镜像
docker images
# 创建程序目录
mkdir -p /opt/nextcloud
# 进入目录
cd /opt/nextcloud
# 创建并编辑docker-compose.yml配置文件
vi docker-compose.yml
主要数据都存储在docker卷内,默认在docker工作目录下的volumes目录内
version: '3'
volumes:
# apache数据卷
nextcloud-data:
# 数据库数据卷
nextcloud-db:
# redis数据卷
nextcloud-redis:
services:
nextcloud-mysql:
image: mariadb:10.5.17
container_name: nextcloud-mysql
volumes:
- nextcloud-db:/var/lib/mysql
- /etc/localtime:/etc/localtime
restart: always
command: --transaction-isolation=READ-COMMITTED --binlog-format=ROW --character-set-server=utf8 --collation-server=utf8_bin
environment:
# root密码
- MYSQL_ROOT_PASSWORD=root@nextcloud
# 新建数据库
- MYSQL_DATABASE=nextcloud
# 新建用户
- MYSQL_USER=nextcloud
# 新用户密码
- MYSQL_PASSWORD=admin@nextcloud
- TZ=Asia/Shanghai
- LANG=en_US.UTF-8
ports:
- "3306:3306"
networks:
nextcloud-net:
nextcloud-redis:
image: redis:6.2.7-bullseye
container_name: nextcloud-redis
volumes:
- ./redis.conf:/usr/local/etc/redis/redis.conf
- /etc/localtime:/etc/localtime
- nextcloud-redis:/data
restart: always
networks:
nextcloud-net:
nextcloud-apache:
image: nextcloud:24.0.4-apache
container_name: nextcloud-apache
volumes:
- /etc/localtime:/etc/localtime
- nextcloud-data:/var/www/html
restart: always
environment:
# 数据库地址
- MYSQL_HOST=nextcloud-mysql
# 数据库名
- MYSQL_DATABASE=nextcloud
# 数据库用户
- MYSQL_USER=nextcloud
# 数据库密码
- MYSQL_PASSWORD=admin@nextcloud
# Redis地址
- REDIS_HOST=nextcloud-redis
# Redis端口
- REDIS_HOST_PORT=6379
# Redis密码
#- REDIS_HOST_PASSWORD=
# PHP脚本最大内存
- PHP_MEMORY_LIMIT=512M
# PHP文件上传限制
- PHP_UPLOAD_LIMIT=2048M
ports:
- "8080:80"
networks:
nextcloud-net:
links:
- nextcloud-mysql
- nextcloud-redis
networks:
nextcloud-net:
driver: bridge
ipam:
config:
# 配置容器网段
- subnet: 172.22.15.0/24
gateway: 172.22.15.1
# 进入目录
cd /opt/nextcloud
# 创建并后台启动容器
docker-compose up -d
# 查看所有日志
docker-compose logs -f
# 查看mysql日志
docker-compose logs nextcloud-mysql
# 查看redis日志
docker-compose logs nextcloud-redis
# 查看apache日志
docker-compose logs nextcloud-apache
# 查看docker卷
docker volume ls
# 以root权限进入容器nextcloud-apache
#docker exec -u root -ti nextcloud-apache /bin/bash
浏览器访问:http://IP地址:8080
创建管理员用户并安装
Windows客户端
Windows客户端-Fastgit加速
a) 安装客户端后打开
b) 输入服务器地址
c) 网页授权访问
d) 选择本地文件夹和远程文件夹创建同步
e) 本地目录已经和服务器虚同步
苹果客户端-AppStor-Nextcloud
安卓客户端
安卓客户端-Fastgit加速
a) 输入服务器URL
b) 点击登录后输入用户名密码
c) 授权设备登录
d) 登录完成,可以进行上传、下载、分享、同步等操作了