一 、安装MySQL
mysql官方docker镜像已经版本到8.x的版本了,这里需要安装mysql 5.7版本就可以了
docker run --name owncloud-mysql5.7 -d \
-p 3306:3306 \
-e MYSQL_ROOT_PASSWORD=Owncloud \
-e MYSQL_DATABASE=owncloud \
-e MYSQL_USER=owncloud \
-e MYSQL_PASSWORD=Owncloud \
-v /data/owncloud/mysql:/var/lib/mysql \
mysql:5.7
- 设置容器名为: owncloud-mysql5.7
- 映射端口为: 3306
- MYSQL_ROOT_PASSWORD: root账号密码
- MYSQL_DATABASE: 创建数据库
- MYSQL_USER: 新建用户
- MYSQL_PASSWORD: 新建用户密码
- 映射数据库数据目录/data/owncloud/mysql
二、查看MySQL容器中的IP
docker inspect -f '{{range .NetworkSettings.Networks}}{{.IPAddress}}{{end}}' owncloud-mysql5.7
这里查出来的ip是172.17.0.5
三、安装ownCloud
docker run --name owncloud --link owncloud-mysql5.7:mysql \
-v /data/owncloud/data:/var/www/html/data \
-p 8080:80 \
-d owncloud
- 映射ownCloud的/var/www/html/data目录到/data/owncloud/data
- 映射端口为8080
四、配置nginx反向代理
在nginx配置文件中添加配置
upstream pan_server{
server 127.0.0.1:8080;
}
server {
listen 80;
server_name cloud.xxx.cn;
access_log /etc/nginx/log/cloud.access.log;
error_log /etc/nginx/log/cloud.error.log;
proxy_set_header X-Forwarded-For $remote_addr;
location / {
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
add_header Cache-Control "no-cache";
proxy_pass http://pan_server;
limit_rate 256m;
client_max_body_size 0;
}
}
五、初始化owncloud配置
浏览器输入nginx代理地址: cloud.xxx.cn
六、修改owncloud主机地址
默认用的是初始设置时的域名为网盘的域名,如果要修改域名,可以进入容器改配置文件,如果不需要修改,后面步骤可以 直接跳过了。
- 进入容器
docker exec -it owncloud /bin/bash
- 安装文本编辑器
apt-get update
apt-get install vim
- 修改配置文件
# 用vip打开配置文件
vim /var/www/html/config/config.php
# 修改
array(
0=>'127.0.0.1'
)
# 修改为
array(
0=>'cloud.xxx.cn'
)
# 如果要修改端口,添加
'overwritehost' => 'cloud.xxx.cn:8080'
# 修改
'overwrite.cli.url' => 'http://127.0.0.1' ,
# 修改为
'overwrite.cli.url' => 'http://cloud.xxx.cn' ,