Docker 實戰 -- Nextcloud

文章目錄

    • 前言
    • 1. 創建 `docker-compose.yml`
    • 2. 啟動 Nextcloud
    • 3. 訪問 Nextcloud
    • 4. 配置優化(可選)
      • 使用 PostgreSQL
      • 使用 redis
      • 添加 Cron 后臺任務
    • 5. 常用命令
    • 6. 反向代理(Nginx/Apache)

前言

當你迷茫的時候,請點擊 Docker 實戰目錄 快速查看前面的技術文章,相信你總能找到前行的方向

本文用使用 Docker Compose 快速搭建 Nextcloud, 搭建個人網盤


1. 創建 docker-compose.yml

version: '3.0'services:nextcloud:image: nextcloud:latestcontainer_name: nextcloudrestart: unless-stoppedports:- "6780:80"  # 映射到宿主機的 6780 端口(避免與現有 80 端口沖突)volumes:- ./apps:/var/www/html/custom_apps  # 自定義應用- ./config:/var/www/html/config  # 配置文件- ./data:/var/www/html/data  # 文件存儲environment:- NEXTCLOUD_ADMIN_USER=admin  # 初始管理員用戶名- NEXTCLOUD_ADMIN_PASSWORD=12345678  # 初始管理員密碼depends_on:- db- redisnetworks:- nextcloud_networkdb:image: mysql:8.2.0container_name: nextcloud_dbrestart: unless-stoppedvolumes:- ./db:/var/lib/mysql  # 數據庫持久化environment:- MYSQL_ROOT_PASSWORD=aa12345678- MYSQL_PASSWORD=aa12345678- MYSQL_DATABASE=nextcloud- MYSQL_USER=nextcloudnetworks:- nextcloud_networkredis:image: redis:latestcontainer_name: nextcloud_redisrestart: unless-stoppednetworks:- nextcloud_networknetworks:nextcloud_network:driver: bridge

2. 啟動 Nextcloud

docker-compose up -d  # 后臺啟動

3. 訪問 Nextcloud

  • 瀏覽器訪問:http://localhost:6780
  • 初始登錄:
    • 用戶名:admin
    • 密碼:12345678(在 docker-compose.yml 中設置)

初始會有在頁面上提示在數據庫創建管理員賬號, 數據庫主機填docker 中的服務名, 在這里是 db, 也可以用外置數據庫,只要nextcloud能訪問到
在這里插入圖片描述

之后就可以愉快地使用你的私有網盤了
在這里插入圖片描述

4. 配置優化(可選)

使用 PostgreSQL

修改 db 服務部分:

db:image: postgres:14container_name: nextcloud_dbrestart: unless-stoppedvolumes:- ./db:/var/lib/postgresql/dataenvironment:- POSTGRES_PASSWORD=dbpassword- POSTGRES_USER=nextcloud- POSTGRES_DB=nextcloud

使用 redis

config/config.php 中添加:

'memcache.local' => '\OC\Memcache\Redis',
'memcache.locking' => '\OC\Memcache\Redis',
'redis' => ['host' => 'redis','port' => 6379,
],

添加 Cron 后臺任務

nextcloud 服務中添加:

nextcloud:# ... 其他配置 ...environment:- NEXTCLOUD_CRONJOB_ENABLED=true  # 啟用 cron

5. 常用命令

命令說明
docker-compose logs -f查看日志
docker-compose down停止并刪除容器
docker-compose pull更新鏡像

6. 反向代理(Nginx/Apache)

如果需要通過域名訪問(如 https://cloud.yourdomain.com),可添加 Nginx 反向代理:

server {listen 80;server_name cloud.yourdomain.com;return 301 https://$server_name$request_uri;
}server {listen 443 ssl;server_name cloud.yourdomain.com;ssl_certificate /path/to/ssl.crt;ssl_certificate_key /path/to/ssl.key;location / {proxy_pass http://localhost:6780;proxy_set_header Host $host;proxy_set_header X-Real-IP $remote_addr;}
}

通過以上步驟,你可以快速搭建一個高可用、可擴展的 Nextcloud 私有云! 🌟

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/pingmian/91972.shtml
繁體地址,請注明出處:http://hk.pswp.cn/pingmian/91972.shtml
英文地址,請注明出處:http://en.pswp.cn/pingmian/91972.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

【計算機網絡 | 第2篇】計算機網絡概述(下)

文章目錄七.因特網服務提供商🥝八.接入網🥝主流的家庭寬帶接入方式介入網工作原理🧐DSL技術:銅線上的“三通道”通信DSL的速率標準呈現出顯著的"不對稱"特征🤔電纜互聯網接入技術🍋?&#x1f7e…

SpringMVC 6+源碼分析(四)DispatcherServlet實例化流程 3--(HandlerAdapter初始化)

一、概述 HandlerAdapter 是 Spring MVC 框架中的一個核心組件,它在 DispatcherServlet 和處理程序(handler)之間扮演適配器的角色。DispatcherServlet 接收到 HTTP 請求后,需要調用對應的 handler 來處理請求(如控制器…

【lucene】FastVectorHighlighter案例

下面給出一套可直接拷貝運行的 Lucene 8.5.0 FastVectorHighlighter 完整示例(JDK 8),演示從建索引、查詢到高亮的全過程。 > 關鍵點:字段必須 1. 存儲原始內容(setStored(true)) 2. 開啟 TermVecto…

C++返回值優化(RVO):高效返回對象的藝術

在C開發中,按值返回對象的場景十分常見(如運算符重載、工廠函數等),但開發者常因擔憂“構造/析構的性能開銷”而陷入糾結:該不該返回對象?如何避免額外成本?本文將剖析痛點、拆解錯誤思路&#…

用 PyTorch 實現一個簡單的神經網絡:從數據到預測

PyTorch 是目前最流行的深度學習框架之一,以其靈活性和易用性受到開發者的喜愛。本文將帶你從零開始,用 PyTorch 實現一個簡單的神經網絡,用于解決經典的 MNIST 手寫數字分類問題。我們將涵蓋數據準備、模型構建、訓練和預測的完整流程&#…

四級頁表通俗講解與實踐(以 64 位 ARM Cortex-A 為例)

📖 🎥 B 站博文精講視頻:點擊鏈接,配合視頻深度學習 四級頁表通俗講解與實踐(以 64 位 ARM Cortex-A 為例) 本文面向希望徹底理解現代 64 位架構下四級頁表的開發者,結合 ARM Cortex-A 系列處理…

AI模型整合包上線!一鍵部署ComfyUI,2.19TB模型全解析

最近體驗了AIStarter平臺上線的AI模型整合包,包含2.19TB ComfyUI大模型,整合市面主流模型,一鍵部署ComfyUI,省去重復下載煩惱!以下是使用心得和部署步驟,適合AI開發者參考。工具亮點這款AI模型整合包由熊哥…

灰色優選模型及算法MATLAB代碼

電子裝備試驗方案優選是一個典型的多屬性決策問題,通常涉及指標復雜、信息不完整、數據量少且存在不確定性的特點。灰色系統理論(Grey System Theory)特別擅長處理“小樣本、貧信息”的不確定性問題,因此非常適合用于此類方案的優…

AI框架工具FastRTC快速上手6——視頻流案例之物體檢測(下)

一 前言 上一篇,我們實現了用YOLO對圖片上的物體進行檢測,并在圖片上框出具體的對象并打出標簽。但只是應用在單張圖片,且還沒用上FastRTC。 本篇,我們希望結合FastRTC的能力,實現基于YOLO的實時視頻流的物體檢測。 本篇文字將不會太多。學習完本篇,對比前面的文章,你…

PHP常見中高面試題匯總

一、 PHP部分 1、PHP如何實現靜態化 PHP的靜態化分為:純靜態和偽靜態。其中純靜態又分為:局部純靜態和全部純靜態。 PHP偽靜態:利用Apache mod_rewrite實現URL重寫的方法; PHP純靜態,就是生成HTML文件的方式&#xff0…

基于Java AI(人工智能)生成末日題材的實踐

Java AI 生成《全球末日》文章的實例 使用Java結合AI技術生成《全球末日》題材的文章可以通過多種方式實現,包括調用預訓練模型、使用自然語言處理庫或結合生成式AI框架。以下是30個實例的生成方法和示例代碼片段。 調用預訓練模型(如GPT-3或GPT-4) 使用OpenAI API生成末日…

針對軟件定義車載網絡的動態服務導向機制

我是穿拖鞋的漢子,魔都中堅持長期主義的汽車電子工程師。 老規矩,分享一段喜歡的文字,避免自己成為高知識低文化的工程師: 做到欲望極簡,了解自己的真實欲望,不受外在潮流的影響,不盲從,不跟風。把自己的精力全部用在自己。一是去掉多余,凡事找規律,基礎是誠信;二是…

Pytorch實現嬰兒哭聲檢測和識別

Pytorch實現嬰兒哭聲檢測和識別 目錄 Pytorch實現嬰兒哭聲檢測識別 1. 項目說明 2. 數據說明 (1)嬰兒哭聲語音數據集 (2)自定義數據集 3. 模型訓練 (1)項目安裝 (2)準備Tra…

海信IP810N/海信IP811N_海思MV320-安卓9.0主板-TTL燒錄包-可救磚

海信IP810N/海信IP811N_海思MV320處理器-安卓9主板-TTL燒錄包-可救磚準備工作:TTL線自備跑碼工具【putty跑碼中文版】路徑:【工具大全】-【putty跑碼中文版】測試跑碼以后將跑碼窗口關閉;然后到下方下載燒錄工具并大致看下教程燒錄…

Go 中的 interface{} 與 Java 中的 Object:相似之處與本質差異

在軟件系統開發中,“通用類型”的處理是各語言設計中不可忽視的一部分。Java 使用 Object,Go 使用 interface{},它們都可以容納任意類型的值,是實現動態行為或通用容器的基礎類型。然而,雖然兩者在使用層面看似相似&am…

Docker-07.Docker基礎-數據卷掛載

一.案例首先我們通過一則案例來引出問題。我們要修改nginx容器內的html目錄下的index.html文件,并且要將靜態資源部署到nginx的html目錄,就要首先知道該html目錄的所在位置。我們首先查看nginx鏡像的幫助文檔,這里就是將有關靜態資源目錄的&a…

數據結構(三)雙向鏈表

一、什么是 make 工具?make 是一個自動化構建工具,主要用于管理 C/C 項目的編譯和鏈接過程。它通過讀取 Makefile 文件中定義的規則,自動判斷哪些文件被修改,并僅重新編譯這些部分,從而大幅提高構建效率。二、什么是 M…

如何在沒有iCloud的情況下將聯系人轉移到新iPhone?

升級到新 iPhone 后,設置已完成,想在不使用 iCloud 的情況下將聯系人從 iPhone 轉移到 iPhone 嗎?別擔心。還有其他 5 種方法可以幫助您輕松地將聯系人轉移到新 iPhone。這樣,您就無需再次重置新設備了。第 1 部分:如何…

SpringBoot3.x入門到精通系列:4.2 整合 Kafka 詳解

SpringBoot 3.x 整合 Kafka 詳解 🎯 Kafka簡介 Apache Kafka是一個分布式流處理平臺,主要用于構建實時數據管道和流應用程序。它具有高吞吐量、低延遲、可擴展性和容錯性等特點。 核心概念 Producer: 生產者,發送消息到Kafka集群Consumer: 消…

Android audio之 AudioDeviceInventory

1. 類介紹 AudioDeviceInventory 是 Android 音頻系統中的一個核心類,位于 frameworks/base/services/core/java/com/android/server/audio/ 路徑下。它負責 管理所有音頻設備的連接狀態,包括設備的添加、移除、狀態更新以及策略應用。 設備連接狀態管理:記錄所有已連接的音…