使用OwnCloud Docker容器+阿里云OSS搭建自己的云盘服务 on Centos 7

使用OwnCloud Docker容器+阿里云OSS搭建自己的云盘服务 on Centos 7

 

阿里云的OSS存储比较便宜

OwnCloud免费

Docker容器部署简单

 

首先将oss挂载到阿里云的ECS主机上

ossfs安装请参考:

http://crabdave.iteye.com/blog/2355690

 

卸载ossfs(如果需要)

umount 宿主机上的挂载目录 # root user

 

挂载ossfs

挂载之前需要创建一个owncloud服务所使用的用户,容器使用的是www-data用户

useradd -u 33 -G root www-data

此时我用的是用户ID是33, 本机的root用户组ID是0

即 www-data root

可通过/etc/passwd 和 /etc/group 查看ID号

 

开始挂载(-ouid=33 -ogid=0  -oumask=007 -o allow_other 主要解决owncloud提示挂载目录0770的问题)

ossfs 你的bucket 宿主机上的挂载目录 -ourl=http://oss-cn-beijing-internal.aliyuncs.com   -ouid=用户id -ogid=组ID -oumask=007 -o allow_other

 

编排Docker容器(包括owncloud:9 和 MySQL 5.7)

docker-compose 的安装可参考:

http://crabdave.iteye.com/blog/2359617

 

vi docker-compose.yml 

 

owncloud:

  image: owncloud:9

  restart: always

  privileged: true

  links:

    - mysql:mysql

  volumes:  

    - /宿主机目录:/容器目录 

  ports:

    - "宿主机端口:80"

mysql:

  image: mysql:5.7

  restart: always

  environment:

    MYSQL_ROOT_PASSWORD: 数据库密码

    

后台启动:

docker-compose up -d

 

打开首页(宿主机IP:端口)进行配置,其中需要调整以下内容

管理员账号密码

配置数据文件目录,即挂载的OSSFS目录(compose描述文件中容器内部目录---/容器目录)

选择MYSQL数据库,填写账号密码、数据库名(owncloud)、地址(mysql)

 

配置数据库时偶尔会出现

error while trying to create admin user: failed to connect to the database: an exception occured in driver:SQLSTAT[HY000][1045]错误,

仔细观察后发现,使用的mysql数据库地址不对(docker mysql 容器对应的IP),界面上展示使用的是owncloud容器自己的IP (估计是默认数据库地址为localhost造成的)

然后我改一下管理员密码 就成功了,不知道为什么,估计是有缓存之类的

 

如果以后打算使用域名访问,最好是在安装的时候就使用域名打开首页进行安装,不然还得修改PHP配置文件设置可信任站点

 

nginx域名转发配置如下:

server {

    listen       80;

    server_name  你的域名;

 

    #charset utf-8;

    #access_log  /var/log/nginx/log/host.access.log  main;

 

    location / {

       proxy_set_header Host $host;

       proxy_set_header X-Real-IP $remote_addr;

       #proxy_set_header X-Forwarded-Proto https;

       proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;

       proxy_pass http://127.0.0.1:宿主机端口;

    }

 

 

参考:

https://bbs.aliyun.com/read/299139.html

https://github.com/aliyun/ossfs/issues/5

https://yq.aliyun.com/articles/67160

 

 

你可能感兴趣的:(Docker)