本文主要是介绍【linux】docker下nextcloud数据迁移,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
首先进行数据备份,找到nextclou的 /www/html/data/admin/files 对admin用户下的文件进行备份。然后在新电脑下执行以下操作:
1、切换root
sudo su -
2、切换apt下载源
vi /etc/apt/sources.list
清华源
# 默认注释了源码镜像以提高 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 # 预发布软件源,不建议启用 # deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ focal-proposed main restricted universe multiverse # deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ focal-proposed main restricted universe multiverse
然后执行命令:
sudo apt-get update
3、下载宝塔国际版
Centos
yum install -y wget && wget -O install.sh http://www.aapanel.com/script/install_6.0_en.sh && bash install.sh aapanel
Ubuntu/Deepin
wget -O install.sh http://www.aapanel.com/script/install-ubuntu_6.0_en.sh && sudo bash install.sh aapanel
Debian
wget -O install.sh http://www.aapanel.com/script/install-ubuntu_6.0_en.sh && bash install.sh aapanel
4.解决宝塔国际版,docker组件安装失败问题
在先前更新了国内的镜像地址后,直接安装即可,安装最新版本的 Docker Engine-Community 和 containerd
sudo apt-get install docker-ce docker-ce-cli containerd.io
如果还不行,请依次执行下面的指令
sudo apt-get install -y containerd
sudo apt-get install -y docker.io
sudo apt-get install -y docker.ce
5、修改ip
vi /etc/sysconfig/network-scripts/ifcfg-eth33
修改完成后重启网络服务
service network restart
6、docker镜像迁移
查看镜像
docker images
将镜像导出
docker save -o mysql.tar mysql
导入镜像
docker load -i mysql.tar
7、ubuntu安装宝塔 提示无法自动认证 解决
sudo apt-get install openssh-server
8、清空docker中的指定项目
docker stop nextcloud && docker rm nextcloud
9、安装nextcloud
docker pull nextcloud
10、启动nextcloud
docker run -d --restart=always --name nextcloud -p 8180:80 nextcloud:latest
11、nextcloud文件迁移及手动刷新
获取nextcloud的id,例如:9a557d7541d5
docker ps
进入Nextcloud容器的Shell环境,且只能用 ls 来查看目录层级,不能使用ll
docker exec -u 0 -it 9a557d7541d5 /bin/bash
拷贝文件
使用以下命令将文件复制到Nextcloud容器中:
Copy Codedocker cp <local_file_path> <container_name_or_id>:<path_in_container>
- 是要复制的本地文件路径。
- 是Nextcloud容器的名称或ID。
- 是要将文件复制到的容器内部路径
例如,如果要将本地的 /home/user/data.txt 文件复制到名为nextcloud的容器的 /var/www/html 目录下,可以执行以下命令:
docker cp /home/user/data.txt nextcloud:/var/www/html/
拷贝完成后需要退出当前容器,然后重新进入
docker exec -u 0 -it nextcloud /bin/bash
执行扫描文件并刷新
su www-data -s /bin/bash -c 'php occ files:scan --all'
此时再登录nextcloud就可以看到在命令行复制过去的文件了
这篇关于【linux】docker下nextcloud数据迁移的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!