一步搭建你的私密网盘

场景:最近一大批网盘倒下了,网盘文件又要搬家了,所以需要一个不限速、质量好、有保障、传输加密的网盘。

为方便大家搭建,本文优化了整个部署过程,一步到位~


准备工作

  • 一台服务器
  • Docker环境

安装Docker:
sudo curl -sSL https://get.docker.com/ | sh

  • Docker-Compose

安装Compose:

$ curl -L https://github.com/docker/compose/releases/download/1.8.0/docker-compose-`uname -s`-`uname -m` > /usr/local/bin/docker-compose
$ chmod +x /usr/local/bin/docker-compose

一步到位:安装OwnCloud

首先我们新建两个文件。

1.首先新建一个文件,叫做Caddyfile

  • 使用命令cd && mkdir caddy && cd caddy && vim Caddyfile新建文件,然后复制粘贴下面内容:
example.com {
    proxy / 233.233.233.233:2333 {
        proxy_header Host {host}
        proxy_header X-Real-IP {remote}
        proxy_header X-Forwarded-Proto {scheme}
    }
    log /var/log/caddy.log
    gzip
}
  • example.com替换为你的域名
  • 233.233.233.233替换为你服务器IP,2333替换为你想要设置的端口(默认为2333

2.然后再新建一个文件叫做docker-compose.yml

  • 使用命令cd && mkdir owncloud && cd owncloud && vim docker-compose.yml新建文件,然后复制粘贴下面内容(那个2333如果你上面改成其他端口了,下面的2333也要相应改成你的那个端口):

Owncloud 支持 Sqlite 和 Mysql,所以这里有两个 docker-compose 文件,按需复制即可:

Sqlite 版本:

owncloud:
    image: owncloud
    volumes:
      - ~/cloud/config:/opt/owncloud/config
      - ~/cloud/data:/opt/owncloud/data
    ports:
      - 2333:80
caddy:
    image: abiosoft/caddy
    volumes:
      - ~/caddy/Caddyfile:/etc/Caddyfile
      - ~/.caddy:/root/.caddy
    ports:
      - 80:80
      - 443:443

Mysql 版本:

version: '2'
services:
  db:
    container_name: db
    image: mysql:5.7
    volumes:
      - "~/mysql:/var/lib/mysql"
    restart: always
    environment:
      MYSQL_ROOT_PASSWORD: 这里填密码
      MYSQL_DATABASE: owncloud
      MYSQL_USER: 这里填数据库用户名
      MYSQL_PASSWORD: 这里还是填密码
  owncloud:
    container_name: owncloud
    depends_on:
      - db
    image: owncloud:latest
    volumes:
      - ~/cloud/config:/var/www/html/config
      - ~/cloud/data:/var/www/html/data
    links:
      - db
    ports:
      - "2333:80"
    restart: always

如果你使用 Mysql 安装,数据库地址是 db (不是 localhost),数据库名称是 owncloud

3.启动,然后就没你什么事了

然后就可以使用docker-compose up -d启动了,没什么问题的话,稍等片刻即可完成安装并启动。

更新:在 Centos 6 下使用脚本安装 Docker 会默认使用软件源里的 Docker,该软件源默认 Docker 是 1.9 版本的,因此无法使用 Docker Compose 启动,老版本用户请手动启动容器:

# 安装 Docker
sudo curl -sSL https://get.docker.com/ | sh
# 执行上面第一步的内容,配置 Caddy,然后跳过第二步执行下面的命令。
# 运行 Owncloud,端口 2333 可以修改为你喜欢的,注意和第一步的 Caddyfile 一致。
docker run -v ~/cloud/config:/opt/owncloud/config -v ~/cloud/data:/opt/owncloud/data -p 2333:80 -d --name=owncloud owncloud
# 运行 Caddy
docker run -v ~/caddy/Caddyfile:/etc/Caddyfile -v ~/.caddy:/root/.caddy -p 80:80 -p 443:443 --name=caddy -d abiosoft/caddy

  • 到这里呢教程就算是结束了,下面是配置以及进阶的用法,有兴趣可以看下去。
  • 有人反馈说国内网速拉取镜像很慢,其实你可以使用灵雀云、Daocloud、时速云或者阿里云这些镜像加速服务。

配置:设置管理员账号

打开浏览器输入你第一步设置的网址,只需要填写管理员账号以及密码即可。

配置管理员账号

Sqlite 安装界面的性能警告可以无视,毕竟只有一个人用的话不会有什么影响~

安装完成,看见欢迎界面

下载桌面客户端、手机版:官网链接


进阶之一:设置 WebDAV ( Linux 用户)

为了可以像访问本地文件夹一样访问私有网盘的内容,我们可以设置 WebDAV。不同操作系统具体操作有异,其他操作系统看官方文档:设置 WebDAV

复制你的 WebDAV 链接:

点击左下角“设置”

打开文件管理器,选择连接至服务器...(或者类似字眼),按照示例填写:

  • 服务器:davs://example.com/remote.php/webdav(这里换成你的域名哦~)
  • 用户名、密码填你设置的,其他保持默认。


    设置WebDAV

    然后你可以像访问本地文件夹一样访问私有网盘的内容了。但这个方法打开的文件不能即时保存到网盘。


进阶之二:一键挂载 WebDAV ( Linux 用户)

2.1 安装 davfs2

$ sudo apt install fuse davfs2
# 下面username改成你的用户名
$ cd /media/username
/media/username$ sudo mkdir Cloud/

修改 davfs2 配置(复制粘贴即可,什么都不用改):

$ sudo sed -i 's/# use_locks       1/use_locks       0/g' /etc/davfs2/davfs2.conf

使用命令su切换至root用户,然后执行:

# 替换“网盘用户名 网盘密码”,该文件只有root账号才能查看、修改。
$ echo "https://example.com/remote.php/webdav/ 网盘用户名 网盘密码" > /etc/davfs2/secrets

2.2 设置一键挂载

~/.bashrc(zsh 用户在~/.zshrc)后面加上一句:

alias cloud="mount.davfs https://example.com/remote.php/webdav/ /media/username/Cloud/"
  • bash
$ source ~/.bashrc
  • zsh
➜ source ~/.zshrc

这样你就可以使用cloud直接挂载云盘了~~


如果遇到网盘不可写,可以尝试:

$ sudo chown -R username:username /media/username/Cloud/

查看云盘容量:

$ df -h /media/username/Cloud/

卸载云盘:

$ sudo umount /media/username/Cloud/

本文可以转载,转载请保留本段内容,谢谢。
作者:左蓝(有问题可以联系本人邮箱i@zuolan.me或者简书简信。)
文章首发:左蓝的简书

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 195,018评论 5 460
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 82,046评论 2 372
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 142,215评论 0 320
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 52,303评论 1 266
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 61,181评论 4 357
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 46,171评论 1 272
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 36,577评论 3 384
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 35,260评论 0 253
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 39,546评论 1 292
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 34,630评论 2 311
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 36,390评论 1 326
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 32,260评论 3 313
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 37,633评论 3 299
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 28,920评论 0 17
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 30,210评论 1 251
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 41,569评论 2 342
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 40,767评论 2 335

推荐阅读更多精彩内容

  • 以下原文转载于(https://docs.docker.com/docker-for-mac/)(想找中文版的最新...
    Veekend阅读 7,532评论 0 17
  • Docker从2013年发布第一个版本以来,已经火遍全球,技术迭代也比较频繁,其周边产品和技术也越来越丰富。Doc...
    归海听雪阅读 12,248评论 7 44
  • 我要写一篇书评,这是件从来没有发生过的事,但在我心里却盘算了很久。至于为什么现在才开始着手,想来是因为内心驱动着自...
    质量过关阅读 722评论 2 3
  • 醒来是淅淅沥沥 窗外如常响着鸟鸣 这种跳脱的生灵 吟唱春天也就算了 干嘛撩拨秋冬 歌颂骄阳也就算了 干嘛打搅阴雨 ...
    夹馅锅锅阅读 187评论 0 0