一、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