配置系统环境
安装 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
为您的域名创建一条 A
记录,并把记录指向:
<您的服务器IP 地址>
域名设置解析后需要过一段时间才会生效,设置完成后,你可以通过 ping
命令查看解析是否生效
ping -c 1 example.com
构建 Docker Compose
执行一下指令初始化 Docker Compose
目录
mkdir -p nextcloud
cd nextcloud
添加并编辑构建文件
docker-compose.yml
输入以下内容
示例代码:/root/nextcloud/docker-compose.yml
注:image: nextcloud:12,最新版本为15。13及以后不再支持google drive挂载,如需挂载,请使用12。
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=<您的服务器IP 地址>
links:
- app
ports:
- 80:80
- 443:443
networks:
- default
volumes:
nextcloud:
caddy:
networks:
default:
构建上游服务器 Caddy
在本次教程中,我们采用 Docker
+ Caddy
+ PHP
+ SQLite
的构架。
Caddy
是一个非常优秀的上游服务器(功能类似于 Nginx
),但是它自带免费申请 SSL证书
的功能,它的配置方法如下:
添加并编辑构建文件
Caddyfile
示例代码:/root/nextcloud/Caddyfile
example.com
errors error.log {
404 https://example.com/404.html
}
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://example.com 查看安装界面
注:挂在外部存储需要在应用市场中找到 External storage support
并启用它,然后在设置->外部存储中添加配置。
常用命令:
docker 文件地址:
var/lib/docker
docker命令输入:
docker exec
docker exec --user www-data -it nextcloud_app_1 ./occ upgrade #更新
docker exec --user www-data -it nextcloud_app_1 occ user:resetpassword 用户名 #忘记密码
存档链接:
https://cloud.tencent.com/developer/labs/lab/10414
本文由 ukuq 创作,采用 知识共享署名4.0 国际许可协议进行许可
本站文章除注明转载/出处外,均为本站原创或翻译,转载前请务必署名
最后编辑时间为: Feb 12, 2019 at 10:16 pm
cool.但是你讲哩啥?俺听不懂
study 一起学习 go