HomeBlogAboutLogin
返回列表

Docker 服务器运维速查手册

Docker 服务器运维速查手册

适用:

  • 阿里云服务器
  • Docker部署项目
  • Spring Boot
  • Vue/Next
  • MySQL
  • Redis
  • Nginx

1. 我要查看服务器运行了哪些服务

查看正在运行的容器

docker ps

用途:

查看当前线上运行:

例如:

nginx
next-app
ruoyi-backend
ruoyi-mysql
ruoyi-redis

查看所有容器(包括停止的)

docker ps -a

用途:

找旧项目。

例如:

old-backend     Exited
test-mysql      Exited

这些可能是历史残留。


2. 我要判断某个服务是否正常

例如:

后端接口打不开。

第一步:看容器是否运行

docker ps

正常:

ruoyi-backend   Up 3 months

异常:

没有这个容器。


第二步:看日志

docker logs -f ruoyi-backend

常见问题:

数据库连接失败:

Connection refused

端口冲突:

Port already in use

3. 我要重启一个服务

例如:

修改了后端配置。

重启

docker restart ruoyi-backend

适用:

  • Spring Boot
  • Nginx
  • Redis

4. 我要停止一个不用的服务

例如:

旧测试环境不用了。

停止

docker stop ruoyi-backend

注意:

只是停止。

数据还在。


5. 我要删除一个不用的服务(重点)

例如:

删除旧若依:

ruoyi-nginx
ruoyi-backend
ruoyi-redis
ruoyi-mysql

第一步:确认容器

docker ps -a

第二步:查看有没有数据挂载(非常重要)

执行:

docker inspect 容器名 | grep Source

例如:

docker inspect ruoyi-mysql | grep Source

看到:

Source:
/home/admin/ruoyi-docker/mysql/data

说明:

数据库真实文件在:

/home/admin/ruoyi-docker/mysql/data

⚠️ 删除容器不会删除这里。


第三步:删除容器

docker rm 容器名

例如:

docker rm ruoyi-mysql

第四步:删除数据文件(如果确定不要)

先看大小:

du -sh /home/admin/ruoyi-docker/mysql/data

确认后:

删除:

rm -rf /home/admin/ruoyi-docker/mysql/data

或者整个项目:

rm -rf /home/admin/ruoyi-docker

⚠️ 这一步才是真正删除数据库。


6. 我要删除旧项目完整流程(推荐)

例如删除旧若依。

1. 停止

docker stop \
ruoyi-nginx \
ruoyi-backend \
ruoyi-redis \
ruoyi-mysql

2. 查看数据位置

数据库:

docker inspect ruoyi-mysql | grep Source

Redis:

docker inspect ruoyi-redis | grep Source

3. 删除容器

docker rm \
ruoyi-nginx \
ruoyi-backend \
ruoyi-redis \
ruoyi-mysql

4. 删除项目目录

例如:

rm -rf /home/admin/ruoyi-docker

7. 我要部署新项目

进入项目:

cd /home/admin/c-cleaner

启动:

docker compose up -d

查看:

docker compose ps

8. 我要更新代码重新部署

例如:

Spring Boot代码更新。

执行:

docker compose up -d --build

含义:

重新构建镜像。

重新创建容器。


9. 我要查看服务器内存是不是被Docker占满

执行:

docker stats

例如:

mysql       2GB
backend     1GB
redis       100MB

找到占资源大的服务。


10. 我要查看Docker占用了多少磁盘

执行:

docker system df

例如:

Images     20GB
Containers 5GB
Volumes    30GB

决定清理哪里。


11. 我要清理Docker垃圾

查看镜像

docker images

用途:

查看旧版本镜像。

例如:

backend:v1
backend:v2
backend:v3

只使用:

backend:v3

删除旧:

docker rmi backend:v1

清理停止容器

docker container prune

12. 我要查看数据库在哪里

MySQL:

docker inspect mysql | grep Source

可能:

/home/admin/mysql/data

这个目录:

就是数据库文件。

备份:

cp -r /home/admin/mysql/data /backup/

删除:

rm -rf /home/admin/mysql/data

13. Docker本身挂了怎么办

查看Docker服务

sudo systemctl status docker

正常:

active (running)

如果:

inactive

启动:

sudo systemctl start docker

如果:

failed

查看:

sudo journalctl -u docker -n 100

14. 常见任务对应命令

我要做什么 命令
看有哪些服务 docker ps
找旧服务 docker ps -a
看报错 docker logs -f xxx
重启服务 docker restart xxx
停止服务 docker stop xxx
删除服务 docker rm xxx
查数据位置 docker inspect xxx | grep Source
删除数据库文件 rm -rf 数据目录
启动项目 docker compose up -d
重新部署 docker compose up -d --build
看内存 docker stats
看磁盘 docker system df
看镜像 docker images
Docker挂了 systemctl status docker

最重要的安全原则

删除顺序:

永远:

确认容器
 ↓
查看挂载目录
 ↓
备份(重要)
 ↓
删除容器
 ↓
删除数据目录

不要直接:

rm -rf /home/admin/xxx

否则可能:

  • 删除数据库
  • 删除上传文件
  • 删除配置

进入myslq:sudo docker exec -it c-cleaner-mysql mysql -u root -p

删除旧库:

DROP DATABASE `c-cleaner`;

创建新库

CREATE DATABASE `c-cleaner`
DEFAULT CHARACTER SET utf8mb4
COLLATE utf8mb4_general_ci;

退出

exit

导入:

sudo docker exec -i c-cleaner-mysql \
mysql -uroot -p你的MySQL密码 \
--default-character-set=utf8mb4 \
c-cleaner < /home/admin/c_cleaner.sql

导入完成检查:

sudo docker exec -it c-cleaner-mysql mysql -uroot -p
USE `c-cleaner`;
select nick_name from sys_user limit 10;

© 2026 转载请注明出处