docker下安装ownCloud
ownCloud项目的内核是使用PHP5编写的,环境基于LAMP,支持SQLite、MySQL、Oracle、PostgreSQL等数据库。
要是在服务器中,先搭建LAMP环境,再去安装ownCloud,调试环境会很麻烦,耗时也长。可以通过Docker来快速部署ownCloud。
安装docker 百度centos7.4安装docker
拉取ownCloud官方镜像
ownCloud的官方docker镜像页面
这个镜像,已经集成了 Apache + PHP 的环境。目前版本是:10.0.1。
docker pull owncloud
改用MySQL数据库
owncloud 默认使用 SQLite 数据库,但对于更大的安装,官方建议选择另外一个不同的数据库,特别当使用桌面客户端同步文件时,不鼓励使用 SQLite。
拉取 mysql 官方docker镜像(目前最新是:8.0,请拉去安装mysql5.7的)
docker pull mysql
启动 MySQL 容器,用作 owncloud 容器的数据库。
docker run --name mysql5.7 -d \
-p 3306:3306 \
-e MYSQL_ROOT_PASSWORD=1111.qwe \
-e MYSQL_DATABASE=owncloud \
-e MYSQL_USER=owncloud \
-e MYSQL_PASSWORD=1111.qwe \
-v /root/owncloud/mysql:/var/lib/mysql \
mysql:5.7
启动 owncloud 容器
docker run --name owncloud --link mysql5.7:mysql \
-v /data/ownclouddata:/data \
-p 81:80 \
-d owncloud
配置nginx反向代理
upstream pan_server{
server 127.0.0.1:81;
}
server {
listen 80;
server_name cloud.xxx.cn;
access_log /etc/nginx/log/cloud.access.log;
error_log /etc/nginx/log/cloud.error.log;
proxy_set_header X-Forwarded-For $remote_addr;
location / {
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
add_header Cache-Control "no-cache";
proxy_pass http://pan_server;
limit_rate 256m;
client_max_body_size 0;
}
}
安装owncloud
MySQL数据库配置:
数据库用户:root
数据库密码:1111.qwe
数据库名:owncloud
数据库主机:mysql 或 my-mysql或者本级IP地址
583 docker search nextcloud
584 docker pull docker.io/nextcloud
585 docker run -d --restart=always --name nextcloud -p 82:80 --link mysql5.7:mysql -v /data/nextcloud:/data docker.io/nextcloud
586 docker ps -a
587 docker logs -f -t --tail 100 nextcloud
查看容器的IP:
docker inspect -f '{{range .NetworkSettings.Networks}}{{.IPAddress}}{{end}}' eaa19cf7d46e(容器ID)