用nextcloud搭建個人網盤

nextcloud

nextcloud是一個私有云存儲網盤項目,nextcloud是owncloud的衍生版本,2016年4月27日,ownCloud聯合創始人Frank Karlitschek宣佈離開ownCloud ltc.,轉而成立另一家公司“Nextcloud”,由於ownCloud程序本身歸其開發人員所有,所以Nextcloud可以直接使用ownCloud的核心技術。nextcloud具有強大的擴展性,同時主打 a safe home for all your data,所以在安全性上nextcloud也十分出色。


用nextcloud搭建個人網盤


nextcloud安裝

參考:https://hub.docker.com/_/nextcloud/

nextcloud安裝最簡單的方式就是用docker來拉起應用:

<code>$ docker run -d \
    -v nextcloud:/

var

/www/html \ -v apps:/

var

/www/html/custom_apps \ -v config:/

var

/www/html/config \ -v

data

:/

var

/www/html/

data

\ -v theme:/

var

/www/html/themes/ \ -p

8080

:

80

\ nextcloud /<code>

nextcloud文件目錄說明:

  • /var/www/html主文件夾
  • var/www/html/custom_apps安裝其他應用APP的文件夾
  • /var/www/html/config本地配置
  • /var/www/html/datanextcloud的實際數據存儲
  • /var/www/html/themes/主題

如果採用默認的形式啟動,其默認是採用sqlite數據庫做數據的存儲,如果想用mysql或PostgreSQL可以通過--link的方式連接,再設置對應的環境變量:

SQLite:

  • SQLITE_DATABASE 數據庫名稱

MYSQL/MariaDB:

  • MYSQL_DATABASE 數據庫名稱
  • MYSQL_USER 數據庫用戶名
  • MYSQL_PASSWORD 數據庫密碼
  • MYSQL_HOST 數據庫服務器地址

PostgreSQL:

  • POSTGRES_DB Name 數據庫名稱
  • POSTGRES_USER 數據庫用戶名
  • POSTGRES_PASSWORD 數據庫密碼
  • POSTGRES_HOST 數據庫服務器地址

比如連接一個MySQL:

<code>  

docker run -d \ -e MYSQL_DATABASE="nextcloud" \ -e MYSQL_USER="shikanon" \ -e MYSQL_PASSWORD="123456" \ -e MYSQL_HOST="127.0.0.1:3306" \ -p 8080:80 \ nextcloud

/<code>

docker設置管理員用戶名密碼:

  • NEXTCLOUD_ADMIN_USER管理員用戶名
  • NEXTCLOUD_ADMIN_PASSWORD管理員密碼

如果在安裝得時候沒設置管理員用戶名和密碼,在第一次打開界面得時候會讓你設置。

用nextcloud搭建個人網盤


nextcloud docker遷移

可以採用docker-compose的形式部署,將數據存在容器的數據卷中,

<code>

version

: '2'

volumes:

nextcloud:

db:

services:

db:

image:

mariadb

command:

--transaction-isolation=READ-COMMITTED

--binlog-format=ROW

restart:

always

volumes:

-

db:/var/lib/mysql

environment:

-

MYSQL_ROOT_PASSWORD=

-

MYSQL_PASSWORD=

-

MYSQL_DATABASE=nextcloud

-

MYSQL_USER=nextcloud

app:

image:

nextcloud

ports:

-

8080

:80

links:

-

db

volumes:

-

nextcloud:/var/www/html

restart:

always

/<code>

在容器升級或者數據遷移的時候直接重新拉起即可:

<code>$ docker-compose pull
$ docker-compose up -d/<code> 


分享到:


相關文章: