使用Docker Compose快速搭建个人云存储并配置多媒介存储

 

配置系统环境

安装Docker

执行下列代码在 Centos 或者其他 RedHat Compatible 的系统中安装 Docker

yum clean all
yum makecache
yum install docker -y

这样 Docker 已经安装完毕,你可以通过

docker -v

检查 docker 是否安装成功

配置Docker

因为 Docker 的默认源不在国内,导致拉取镜像时时常会很慢。于是,我们可以添加镜像加速器。

编辑并覆盖以下内容到/etc/docker/daemon.json

{
  "registry-mirrors": ["https://registry.docker-cn.com"]
}

启动Docker

执行以下命令启动 Docker

systemctl enable docker
systemctl start docker

安装Docker Compose

首先我们需要先安装并升级 pip

yum install python-pip -y
pip install --upgrade pip

然后通过 pip 安装 Docker Compose

pip install docker-compose --ignore-installed

通过一下命令可以检查 Docker Compose 是否安装正确

docker-compose -v

安装NextCloud

申请域名

因为私有云需要一个独立的域名来做 HTTPS 加密访问,所以这里推荐注册一个域名。

申请解析

前往域名控制台,然后,创建一条 A 记录,并把记录指向:193.112.96.151(服务器ip)这个你此刻正在使用的机器的 IP地址,具体过程你可以参考以下视频。

https://v.qq.com/x/page/t0507ps9kxo.html

域名设置解析后需要过一段时间才会生效,设置完成后,你可以通过 ping 命令查看解析是否生效:

ping -c 1 example.com

如果 ping 命令返回的信息中含有你设置的解析的 IP 地址,说明解析成功。

构建Docker Compose

执行一下指令初始化 Docker Compose 目录

mkdir -p nextcloud
cd nextcloud

添加并编辑构建文件docker-compose.yml输入以下内容

version: '3'

services:
  app:
    image: nextcloud:12
    restart: unless-stopped
    volumes:
      - nextcloud:/var/www/html

  web:
    image: abiosoft/caddy
    restart: unless-stopped
    privileged: true
    volumes:
      - ./Caddyfile:/etc/Caddyfile
      - caddy:/root/.caddy
    environment:
      - VIRTUAL_HOST=193.112.96.151
    links:
      - app
    ports:
      - 80:80
      - 443:443
    networks:
      - default

volumes:
  nextcloud:
  caddy:

networks:
  default:

构建上游服务器Caddy

在本次教程中,我们采用 Docker + Caddy + PHP + SQLite 的构架。

Caddy 是一个非常优秀的上游服务器(功能类似于 Nginx),但是它自带免费申请 SSL证书 的功能,它的配置方法如下:

添加并编辑构建文件Caddyfile

域名 //请将 域名 改成你自己的域名。

errors error.log {
    404 https://error.yuuno.cc
}

proxy / app:80 {
    transparent
    header_downstream Content-Security-Policy none
}

这里需要强调的是,如果没有自己的域名,将不能启用 SSL,因为 let's encrypt 只支持域名证书,如果无绑定域名,会被直接拒绝。因此,这里强烈建议使用自己的域名!

启动服务

最后我们只需要让 Docker Compose 自动构建并维护这几个 Docker 即可

此处可能要等待几分钟,具体时间是网络情况而定。(如果过于缓慢,请检查是否参考第一步中配置了国内镜像)

docker-compose up -d

你可以通过如下命令检查 Docker 状态

docker-compose ps

注: Caddy 在第一次获取 SSL 是会自动重启两次,较慢为正常现象。如果看到两个容器都为 Up 状态。即可进入下一步

至此,NextCloud 已经配置完毕。请访问

https://你的域名/

查看安装界面,或者,你也可以访问不加密的页面

http://你的域名/

自配域名的同理

配置NextCloud

初始化

接下来就是简单的配置部分

image

此处输入你的管理员用户名和密码,就完成了,是不是很简单!

这就是你的文件目录啦

image

开启多媒介存储

这里只以 Amazon S3 作为案例。其他的配置都类似,根据提示来即可

image

如图所示,示例添加的是 Amazon S3 亚太区的一个 bucket。bucket 名字为 yu

链接成功后,左侧会出现一个绿点,这时候回到主页,就能看到 S3 已经被当做一个 『网盘』 一样挂载了进来。

image

image

本教程就到此结束啦。

image

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值