Docker安装部署nextcloud个人网盘
环境搭建:
- 先完成docker的安装配置
- 配置好镜像加速器,不然速度可能上龟速。
mysql配置
然后拉取mysql镜像:
docker pull mysql
查看是否拉取成功:
docker images #查看是否成功
然后基于镜像运行容器:
docker run -d -p 3306:3306 -v /mnt/sde/mysql:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=WZS134125 --name mysql mysql
-d 以后台进程方式运行
-p 端口映射 将容器3306 映射到主机3306端口
-v 将容器/var/lib/mysql 映射到主机的/mnt/sde/mysql下
-e 设置环境变量 数据库密码WZS134125
--name 设置容器名称 mysql 最后指定镜像mysql
配置mysql数据库容器
docker exec -it mysql /bin/bash #进入docker容器
-it: 提供一个虚拟终端
mysql:容器名称或者id
/bin/bash: 终端命令行
进入容器内,然后登陆数据库
mysql -uroot -pWZS134125
然后配置权限,远程登陆
CREATE database nextcloud; #创建一个nextcloud的数据库
GRANT ALL ON *.* TO 'root'@'%'; #设置root账号任意ip登录
ALTER USER 'root'@'localhost' IDENTIFIED BY 'password' PASSWORD EXPIRE NEVER;
ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY 'WZS134125';
flush privileges;
上面的命令是设置root用户远程登陆以及无法登陆时的
数据库操作完成
nextclouda安装
docker pull nextcloud # 拉取nextcloud镜像
docker run -d --restart=always -p 8888:80 -v /mnt/sde/nextcloud:/var/www/html -link mysql:mysql --name nextcloud nextcloud
-d 后台进程运行
-p 映射端口, 将容器80端口映射为主机的8888端口,可以自行修改端口,不过防火墙需要放通。
-v 挂载目录,将容器/var/www/html挂载到主机/mnt/sde/nextcloud下面
--link 链接数据库容器,链接使用mysql容器镜像mysql(容器名称)
--name 名称,指定容器的名称为nextcloud
nextcloud 使用的基础镜像。
网页配置
http://ip:8888, 这个是刚刚配置的服务器地址加上刚刚映射的主机端口。
输入用户名密码,数据库使用MYSQL,数据库以后用户密码,数据库nextcloud,地址写内部地址172.17.0.2.
然后安装指示一路填写信息,安装就好了。
错误
如果提示不信任域名访问
vim /mnt/sde/nextcloud/config/config.php 编辑配置文件。
0 =>'10.10.0.212:8888',添加。
重启容器服务docker restart nextcloud
。
完成。