重新建立一个docker服务
358 2025-04-12 13:59
[root@iZ2zed4vmulmu2gioymytpZ ~]# cd /mnt
[root@iZ2zed4vmulmu2gioymytpZ mnt]# ll
total 32
drwxr-xr-x 3 root root 4096 Apr 12 13:51 docker-compose-yml
drwx------ 2 root root 16384 Apr 12 09:25 lost+found
drwxr-xr-x 6 polkitd root 4096 Apr 12 13:54 mysql_data
drwxr-xr-x 4 root root 4096 Apr 12 11:45 vsftp
drwxr-xr-x 2 root root 4096 Apr 12 11:46 webapps
[root@iZ2zed4vmulmu2gioymytpZ mnt]# cd docker-compose-yml
[root@iZ2zed4vmulmu2gioymytpZ docker-compose-yml]# ll
total 8
drwxr-xr-x 2 root root 4096 Apr 12 13:52 tomcat-mysql
-rw-r--r-- 1 root root 718 Apr 12 13:36 vsftpd-compose.yml
[root@iZ2zed4vmulmu2gioymytpZ docker-compose-yml]# mkdir vsftp
[root@iZ2zed4vmulmu2gioymytpZ docker-compose-yml]# mv vsftpd-compose.yml vsftp/docker-compose.yml
[root@iZ2zed4vmulmu2gioymytpZ docker-compose-yml]# ll
total 8
drwxr-xr-x 2 root root 4096 Apr 12 13:52 tomcat-mysql
drwxr-xr-x 2 root root 4096 Apr 12 13:57 vsftp
[root@iZ2zed4vmulmu2gioymytpZ docker-compose-yml]# cd vsftp
[root@iZ2zed4vmulmu2gioymytpZ vsftp]# ll
total 4
-rw-r--r-- 1 root root 718 Apr 12 13:36 docker-compose.yml
[root@iZ2zed4vmulmu2gioymytpZ vsftp]# docker-compose up -d
[+] Running 1/2
? Network vsftp_default Created 0.0s
? Container vsftpd Creating 0.0s
Error response from daemon: Conflict. The container name "/vsftpd" is already in use by container "a8955bde97a6861820dd707babd67cc6f2947c51d82026577ed2f029c49d025a". You have to remove (or rename) that container to be able to reuse that name.
[root@iZ2zed4vmulmu2gioymytpZ vsftp]# docker rm -f vsftpd
vsftpd
[root@iZ2zed4vmulmu2gioymytpZ vsftp]# docker-compose up -d
[+] Running 1/1
? Container vsftpd Started 0.6s
[root@iZ2zed4vmulmu2gioymytpZ vsftp]#
cd /mnt/docker-compose-yml/tomcat-mysql
docker-compose up -d
docker-compose down
Q:删除docker image用什么命令
A:
docker rmi tomcat:8.5.55-jdk8-openjdk
docker-compose down
和 docker-compose stop
是 Docker Compose 的两个常用命令,它们在功能和用途上有一些区别。1. docker-compose stop
功能
-
该命令会停止由
docker-compose
配置文件定义的所有服务。 -
它会向容器发送
SIGTERM
信号,让容器优雅地停止,然后停止容器。如果容器没有在指定的超时时间内停止,它会发送SIGKILL
信号强制停止容器。
特点
-
不会删除容器:停止后,容器仍然存在,容器内的数据(如果有的话)也会保留。你可以随时通过
docker-compose start
重新启动这些容器。 -
不会删除网络和卷:与容器相关的网络和卷等资源不会被删除,只是容器被停止运行。
使用场景
-
当你需要暂时停止服务,但后续可能还会重新启动这些服务时,使用
docker-compose stop
是合适的。例如,在开发过程中,你可能需要暂停服务进行一些配置修改,之后再重新启动服务。
2. docker-compose down
功能
-
该命令会停止并删除由
docker-compose
配置文件定义的所有服务、网络和卷。 -
它会先执行
docker-compose stop
停止所有服务,然后删除容器、网络和卷(如果配置了volumes
)。
特点
-
删除容器:停止并删除所有容器,容器内的数据也会丢失(除非数据存储在外部卷中)。
-
删除网络和卷:会删除与服务相关的网络和卷(如果配置了
volumes
)。 -
清理资源:这个命令会更彻底地清理由
docker-compose
创建的资源,释放系统资源。
使用场景
-
当你不再需要这些服务,并且希望彻底清理由
docker-compose
创建的资源时,使用docker-compose down
。例如,在部署新版本的服务之前,你可能需要完全清理旧的环境,或者在测试完成后清理测试环境。
总结
-
docker-compose stop
:停止服务,但保留容器、网络和卷,适合暂时停止服务,后续可能还会重新启动。 -
docker-compose down
:停止并删除服务、网络和卷,适合彻底清理由docker-compose
创建的资源,释放系统资源。
通常情况下,docker-compose stop
和 docker-compose down
命令需要在 docker-compose.yml
文件所在的目录下执行
全部评论