在阿里云ECS部署NextCloud私有网盘笔记
参考自简书的大作:http://www.jianshu.com/p/a2798b1ac8a4
仅供自己备忘。
基于ubuntu 16 64bit
winscp+putty登陆ecs后,
1. 安装 Docker 与 Compose
1.1. 配置 Docker 镜像源
1.2. 部署 NextCloud(阿里云ECS单核单1G内存1MB带宽耗时约
2. 配置 NextCloud
2.1. 客户端安装与使用
正面开始:
说明:Nextcloud 和 Owncloud 的界面非常相似,Owncloud并没有停止开发,而是由原来的德国团队接手了。
- 安装 Docker 与 Compose
安装 Docker
curl -sSL https://get.docker.com/ | sh
安装 Compose
curl -L https://github.com/docker/compose/releases/download/1.10.0/docker-compose-`uname -s`-`uname -m` > /usr/local/bin/docker-compose
chmod +x /usr/local/bin/docker-compose
以上搭好了基础软件环境。
1.1. 配置 Docker 镜像源
接下来我们会拉取几个镜像,默认的镜像仓库在海外,速度不理想,所以我们使用国内的镜像源,这里以中科大的为例:
首先编辑文件 /etc/docker/daemon.json,在该配置文件中加入下面内容(没有该文件的话建一个):
{
"registry-mirrors": ["https://docker.mirrors.ustc.edu.cn"]
}
保存之后最好重启一下 Docker 服务,这样就可以使用国内镜像源拉取镜像了:
service docker restart
1.2. 部署 NextCloud
首先为Nextcloud建立一个独立的容器网络:
docker network create nextcloud
接下来在当前目前下新建一个文件夹cloud,然后在cloud文件夹里面新建一个文件Caddyfile,在文件Caddyfile写入以下内容(您自己的域名example.com和IP233.233.233.233和端口2333自己改一下哦):
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
}
接下来再在当前目录cloud下新建一个文件,名为docker-compose.yml,文件的内容如下,注意修改以下内容中的MYSQL_ROOT_PASSWORD行的密码为您自己的MYSQL数据库密码:
version: '2'
services:
db:
container_name: cloud_db
image: mysql
volumes:
- "./data/cloud/mysql:/var/lib/mysql"
restart: always
environment:
MYSQL_ROOT_PASSWORD: 这里填写你的密码
MYSQL_DATABASE: nextcloud
app:
container_name: cloud_app
depends_on:
- db
image: nextcloud
volumes:
- ./data/cloud/config:/var/www/html/config
- ./data/cloud/data:/var/www/html/data
- ./data/cloud/apps:/var/www/html/apps
links:
- db
ports:
- "2333:80"
restart: always
cron:
container_name: cloud_cron
image: nextcloud
links:
- db
volumes_from:
- app
user: www-data
entrypoint: |
bash -c 'bash -s <<EOF
trap "break;exit" SIGHUP SIGINT SIGTERM
while /bin/true; do
/usr/local/bin/php /var/www/html/cron.php
sleep 900
done
EOF'
restart: always
web:
container_name: cloud_web
image: abiosoft/caddy
volumes:
- ./Caddyfile:/etc/Caddyfile
- ~/.caddy:/root/.caddy
ports:
- 80:80
- 443:443
restart: always
networks:
default:
external:
name: nextcloud
保存后在当前目录cloud下输入以下命令:
docker-compose up -d
然后就是漫长的等待(视ECS配置高低和带宽大小而定等待时长)~~~
最后打开上边配置文件中的域名example.com(您自己的域名自己改一下哦)即可看到NextCloud安装界面了,跟其他web系统没什么两样的。数据库的选择您随意就好。mysql或sqlite都随意了。
你的用户名就是 root,数据库地址是 db,不是 localhost。
- 配置 NextCloud
安装完成还要做两件事,当然不是必须的,但是为了安全起见,最好再折腾一下。
2.1. 配置两步验证
两步验证可以防暴力入侵什么的,建议使用。首先在后台启用两步验证,然后手机安装下面的应用:
https://play.google.com/store/apps/details?id=com.google.android.apps.authenticator2
登录时需要手机上的离线验证码验证,安全有了多一层保障。
2.2. 客户端安装与使用
首先客户端几乎是全平台的,地址在下面:
https://nextcloud.com/install/#install-clients
因为开启了二步验证,在客户端直接使用帐号密码肯定无法登录了,所以需要在后台设置应用密码,地址格式:
http://你的地址/index.php/settings/personal#apppasswords
在设置中设置应用一次性密码,使用随机密码登录客户端即可。
作者:左蓝
链接:http://www.jianshu.com/p/a2798b1ac8a4
來源:简书
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。