记录一下迁移服务器需要使用的一些命令

之前也有迁移过一些服务器,这次也是因为原来的续费太贵了,所以做了下迁移,直接续费1xxx每年,重新买一个99一年,
这里主要是两方面,一个是冷备份,我用的是rsync

1
rsync -avP --exclude xxxx1 --exclude xxxx2 server1:/home/username/xxx/ /local/xxx/

这里是三个注意点,一个是-avP表示是整个目录下的递归传输,显示具体的同步文件和进度,还能在断开后续传
第二个就是目录最后的/,如果缺少就不是目录下的整个同步
第三个是exclude,表示排除某些文件,如果有多个就像上面那样用多个--exclude

一个是最好用下zip压缩一些比如代码或者带有很多小文件的目录
zip命令因为不常用,也记录下

1
zip [options] output.zip file1 file2 ...

还有对应的解压缩

1
unzip -d destination output.zip

剩下的就是比较简单的docker命令
查看docker进行

1
docker ps 

从docker复制文件

1
docker cp containerId:/tmp/xxxx /home/username/xxx

或者反过来

1
docker cp /home/username/xxx containerId:/tmp/xxx

以及导入mysql

1
msyql --default-character-set=utf8mb4 -u$USER -p$PASS $DATABASE <xxx.sql

这些感觉用到的比较多,
还有一个是traefik的,因为最新版的docker不支持traefik使用的一个api
我是用的Ubuntu 24.04
可以用这个命令安装指定版本

1
sudo apt-get install docker-ce=5:28.5.2-1~ubuntu.24.04~noble docker-ce-cli=5:28.5.2-1~ubuntu.24.04~noble containerd.io docker-buildx-plugin docker-compose-plugin

这个traefik的issue在这里
有兴趣的可以仔细看看
保险起见还可以用

1
sudo apt-mark hold docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin

来把这些版本给固定住,就不会在每次apt udpate & apt upgrade 的时候给升级掉
还有docker
腾讯云经常是访问github跟docker.io这种会很慢
可以参考这篇
是官方的文章,来加速docker的安装
简单截下命令

1
2
3
4
5
6
7
8
sudo apt-get update
sudo apt-get install ca-certificates curl -y
sudo install -m 0755 -d /etc/apt/keyrings
sudo curl -fsSL https://mirrors.cloud.tencent.com/docker-ce/linux/ubuntu/gpg -o /etc/apt/keyrings/docker.asc
sudo chmod a+r /etc/apt/keyrings/docker.asc
echo "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.asc] https://mirrors.cloud.tencent.com/docker-ce/linux/ubuntu/ \
$(. /etc/os-release && echo "$VERSION_CODENAME") stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
sudo apt-get update

再安装

1
sudo apt-get install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin

启动

1
sudo systemctl start docker

还有拉取镜像加速
vim /etc/docker/daemon.json
写入以下内容

1
2
3
4
5
{
"registry-mirrors": [
"https://mirror.ccs.tencentyun.com"
]
}

然后保存

1
sudo systemctl start docker

重启下docker,完工