首先部署是需要数据库的,我们这边选择Mysql。Docker容器网络通信,通过端口映射到容器内
文件放在/root/docker-home/nextCloud
,提前准备起来额
nextCloud
- mysql
- nextCloud
- data
- readme.md
docker network create nextCloud
docker run --name nextCloud-mysql --network nextCloud --network-alias nextCloud-mysql -p 3306:3306 -v /root/docker-home/nextCloud/mysql/conf:/etc/mysql -v /root/docker-home/nextCloud/mysql/logs:/var/log/mysql -v /root/docker-home/nextCloud/mysql/data:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=EZpZ2OBF3c02WMt0 -d mysql:5.7
设置允许远程链接,创建数据库nextcloud
docker exec nextCloud-mysql /bin/bash -c ‘mysql -uroot -p$MYSQL_ROOT_PASSWORD -e "use mysql;grant all privileges on *.* to root@\"%\" identified by \"$MYSQL_ROOT_PASSWORD\" with grant option;flush privileges" ‘
docker exec nextCloud-mysql /bin/bash -c ‘mysql -uroot -p$MYSQL_ROOT_PASSWORD -e "create database nextcloud default character set utf8mb4 collate utf8mb4_unicode_ci;" ‘
docker run --name nextCloud-nextCloud --network nextCloud -p 8081:80 -v /root/docker-home/nextCloud/data:/var/www/html/data -d nextcloud:latest
docker run --name myadmin --network nextCloud -e PMA_HOST=nextCloud-mysql -e PMA_PORT=3306 -p 8082:80 -d phpmyadmin
docker exec --user www-data nextCloud-nextCloud php occ files:scan admin
原文:https://www.cnblogs.com/x-mao/p/14854275.html