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安裝
參考: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 \ -vdata
:/var
/www/html/data
\ -v theme:/var
/www/html/themes/ \ -p8080
: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:
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 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>