Windows docker 搭建Nextcloud筆記


一、Docker安裝

 

1.打開linux子系統和虛擬機平台,如果用wsl1需要打開Hyper,只用wsl2不打開Hyper也可以。

 

 

 

 

 

2.首先安裝Docker for win,右上角Get Started,下載Windows版

 

3.安裝好之后默認是wsl2,將Use the WSL2 based engine勾選去掉切換成wsl1內核,本次用wsl2內核。 

 

 

 

 4.wsl1與wsl2比較

 

 

 

微軟官方文檔:https://docs.microsoft.com/zh-cn/windows/wsl/compare-versions#whats-new-in-wsl-2

Docker 桌面 wsl2 后端文檔:https://docs.docker.com/desktop/windows/wsl/

 

 二、Nextcloud安裝

 

1.系統可以選用Debian或Ubuntu,本次采用Debian系統,微軟商店下載安裝好之后默認是wsl1,cmd執行下命令將系統升級到wsl2。

wsl --set-version debian 2

 (如出現不能升級問題,需先安裝WSL 2 Linux 內核更新包,微軟官網下載地址: https://wslstorestorage.blob.core.windows.net/wslblob/wsl_update_x64.msi)

 

 

2.安裝Nextcloud

Debian安裝好之后打開,再打開cmd

(1)拉取最新nextcloud鏡像(出現拉取進度停止取消重新拉取)

docker pull nextcloud

(2)拉取最新mysql鏡像

docker pull mysql

(3)啟動mysql實例

docker run --name test-mysql -p 3306:3306 -e MYSQL_ROOT_PASSWORD=123456 -d mysql

這里是把剛才下載的image運行一個實例,name隨意,docker中顯示名字,-p 本地端口:當前實例虛擬機里端口,-e參數設置數據庫root默認密碼

 

 mysql已經在運行,端口3306

繼續用命令行,可以登錄到當前實例的shell,也可以在docker界面上點”CLI”按鈕進入。

 進數據庫mysql -u root -p,可以創建用戶、創建nextcloud數據庫、創建表創建權限。

 docker exec -it test-mysql bash

本次直接用root+密碼,直接安裝nextcoud,安裝數據庫完成。

(2)啟動nextcoud實例

本次使用wsl2,只將/var/www/html/data數據掛載到C盤。如果掛載整個/var/www/html/會出錯,Nextcloud一直初始化。

C:\nextcloud\ 該目錄需要自己創建

docker run -dit -p 8080:80 --volume=/c/test:/var/www/html/data nextcloud   

 Nextcloud已在8080端口運行。

如果用docker run -d啟動過一會容器會停止。

 

3.cmd操作wsl命令

wsl -l -v    #查看wsl版本及wsl運行狀態

wsl --set-version debian 2     #將wsl1升級為wsl2

wsl--shutdown     #關閉wsl子系統

debian config --default-user root      #打開debian終端默認賬戶root

debian -c "service ssh start" ssh       #ssh開機自啟,需新建bat添加到啟動項

 

三、Nextcloud配置

 

1.進入localhost:8080配置Nextcloud

輸入賬號密碼,數據庫選擇Mysql,Mysql占用內存較大,個人選擇SQlite也沒問題,不需要配置Mysql。

 

 數據庫名填寫nextcloud自動創建nextcloud數據庫,為了快速安裝推薦安裝應用打勾取消,之后安裝完成。

 

 

 進入Nextcloud

 

 

-可信任域名

當前訪問是來自本地,本機可以直接訪問,局域網或者外網訪問,需要修改config。

解決方法:

打開 /config/config.php

找到 trusted_domains

增加一項

preg_match('/cli/i',php_sapi_name())?'127.0.0.1':$_SERVER['SERVER_NAME']
//添加之后完整的代碼
//索引數字順延就可以
'trusted_domains' => array(
        0 => '127.0.0.1',
        1 => preg_match('/cli/i',php_sapi_name())?'127.0.0.1':$_SERVER['SERVER_NAME'],
),

 

 四、其他

1.換源

默認源是ubuntu、Debian的官方源,下載速度很慢,建議更換為清華源。

換源之后需前查看系統版本:

cat /etc/os-release 與 lsb_release -a  #查看系統版本  uname -a#查看內核信息

Debian 11清華源一鍵導入(需先備份原sources.list)

 

sudo  mv /etc/apt/sources.list /etc/apt/sources.list.backup

 

echo "# 默認注釋了源碼鏡像以提高 apt update 速度,如有需要可自行取消注釋" >> /etc/apt/sources.list && \
echo "deb https://mirrors.tuna.tsinghua.edu.cn/debian/ bullseye main contrib non-free" >> /etc/apt/sources.list && \
echo "# deb-src https://mirrors.tuna.tsinghua.edu.cn/debian/ bullseye main contrib non-free" >> /etc/apt/sources.list && \
echo "deb https://mirrors.tuna.tsinghua.edu.cn/debian/ bullseye-updates main contrib non-free" >> /etc/apt/sources.list && \
echo "# deb-src https://mirrors.tuna.tsinghua.edu.cn/debian/ bullseye-updates main contrib non-free" >> /etc/apt/sources.list && \
echo "deb https://mirrors.tuna.tsinghua.edu.cn/debian/ bullseye-backports main contrib non-free" >> /etc/apt/sources.list && \
echo "# deb-src https://mirrors.tuna.tsinghua.edu.cn/debian/ bullseye-backports main contrib non-free" >> /etc/apt/sources.list && \
echo "deb https://mirrors.tuna.tsinghua.edu.cn/debian-security bullseye-security main contrib non-free" >> /etc/apt/sources.list && \
echo "# deb-src https://mirrors.tuna.tsinghua.edu.cn/debian-security bullseye-security main contrib non-free" >> /etc/apt/sources.list

 

Ubuntu20.04清華源一鍵導入(需先備份原sources.list)

 

sudo  mv /etc/apt/sources.list /etc/apt/sources.list.backup

 

echo "\
# 默認注釋了源碼鏡像以提高 apt update 速度,如有需要可自行取消注釋
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ focal main restricted universe multiverse
# deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ focal main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ focal-updates main restricted universe multiverse
# deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ focal-updates main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ focal-backports main restricted universe multiverse
# deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ focal-backports main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ focal-security main restricted universe multiverse
# deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ focal-security main restricted universe multiverse">/etc/apt/sources.list

 

 其他源到清華大學開源軟件鏡像站復制:https://mirrors.tuna.tsinghua.edu.cn/help/debian/

ubuntu20.04換清華源后可能出現不能更新、https更新失敗,解決方案:

(1)換回默認的官方源

(2)更新/安裝 ca-certificates

apt install ca-certificates

 

2.SSH配置過程:

(1)修改root密碼

passwd 

(2)刪除原ssh

apt-get remove openssh-server -y

(3)重新安裝ssh服務

apt-get install openssh-server ssh -y

(4)編輯sshd_config文件

vi /etc/ssh/sshd_config

 

#sshd_config需修改內容

#以下幾行需要刪除#號
Port 22
AddressFamily any
ListenAddress 0.0.0.0
ListenAddress ::

#以下內容no改為yes
PermitRootLogin yes # 如果需要用 root 直接登錄系統則此處no改為 yes
PasswordAuthentication yes # 將 no 改為 yes 表示使用帳號密碼方式登錄

(5)重新啟動ssh

service ssh restart

 

 3.查看docker鏡像版本和tag

https://hub.docker.com/r/library/  要想查看鏡像的版本和TAG,需要在docker hub查看

https://www.az009.com/tool/docker-search/  這個網站也能查詢

使用docker search 命令可以搜索Docker Hub 官方倉庫中的鏡像。

docker images查看已拉取鏡像

 

4.docker常用命令

docker ps  #查看所有容器

 docker start 容器ID       #啟動容器

docker stop 容器ID        #停止容器

docker restart 容器ID    #重啟容器

docker exec -it 容器ID /bin/bash      #進入容器終端並且的保留為容器終端的輸入形式,exit退出。

例:docker exec -it 3e0ec828337b /bin/bash

 

5.配置WSL內存

win+r輸入 %UserProfile%,在文件夾內新建 .wslconfig,memory后是最大內存。

[wsl2] memory=4GB swap=0 localhostForwarding=true

 

 

如有侵權請聯系刪除。

 

參考:https://www.cnblogs.com/waterlufei/p/6994338.html

參考:https://zhuanlan.zhihu.com/p/428428649?ivk_sa=1024320u

參考:https://blog.csdn.net/MrLoading/article/details/122161089

參考:https://www.h5av.com/archives/191.html

參考:https://blog.csdn.net/lin252552/article/details/89336899

參考:https://www.cnblogs.com/mydailycoding/p/12375273.html


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM