创建owncloud目录

mkdir /usr/local/src/other/owncloud


owncloud目录下创建一个docker-compose.yml

version: "3"
services:
  app:
    image: owncloud:10.0.10
    container_name: owncloud
    restart: always
    ports:
      - 9090:80
    volumes:
      - ./data:/var/www/html     #/var/www/html 是owncloud默认目录,数据及配置在在里面
    extra_hosts:
      - "dockerhost:192.168.1.123"   # 宿主机的内网IP,便于容器内访问宿主机网络。dockerhost直接可以解析为192.168.1.123


当前目录下执行

docker-compose up --build -d

数据库创建数据库与用户(坑!)

不能直接用root连接,会一直连接失败,需要提前创建一个用户给owncloud连接,并开放远程连接权限

1、进入数据库

mysql -uroot -p

2、创建数据库

CREATE DATABASE IF NOT EXISTS own_cloud;

3、进入mysql数据库

use mysql;

4、创建用户并设置权限

CREATE USER 'own_cloud_admin'@'%' IDENTIFIED BY 'password'; 

GRANT ALL PRIVILEGES ON own_cloud.* TO 'own_cloud_admin'@'%' IDENTIFIED BY 'password';

5、刷新权限

FLUSH PRIVILEGES;


初始化owncloud配置

浏览器输入

192.168.1.123:9090

配置数据库选择MySQL,连接地址:dockerhost:3306