重新建立一个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 downdocker-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 stopdocker-compose down 命令需要在 docker-compose.yml 文件所在的目录下执行

 

 

全部评论

·