常用的Docker命令

发布于:2025-06-05 ⋅ 阅读:(39) ⋅ 点赞:(0)

命令

查看容器日志

  1. docker logs -f <容器ID或者容器名 >:查看容器日志。
  2. docker logs -f --tail 10 <容器ID或者容器名 >:可以持续追踪最后10行的日志,这个看日志更好。效果是,不会出现很长的内容把之前输入的命令行都顶上去,他只展示最后的10行数据。

注意:容器id可以写前几个字符,只要是唯一的就行。

查看镜像

docker images:查看镜像

查看容器

docker ps:查看已经正在运行的 docker 容器,包括暂停的容器

docker ps -a:查看所有docker容器,包括停止和暂停的容器

暂停容器,取消暂停

docker pause <容器ID或者容器名 >:暂停容器。

注意:暂停容器你在 docker ps 中还是能看到的,他还是占端口,还是存活的,所以 docker ps 可以看到,但是 status 你可以看到有 paused 这个状态。暂停就相当于是睡眠了,不消耗 cpu 了而已。

docker unpause <容器ID或者容器名 > :取消暂停。

停止和启动容器

停止容器

docker stop <容器ID或者容器名 >:停止容器。

注意:

停止容器不会出现在 docker ps 中。

stop 不会删除容器的。

容器的状态是 exited,是退出状态。可以使用docker start <容器ID或者容器名 >重新启动容器。

暂停容器和停止容器的区别: 暂停容器是冻结进程,容器还是存活的,只是他现在是 pause 状态,并且还占端口和内存。但是停止容器容器不会存活,释放大部分资源(内存、CPU、端口),仅保留容器元数据。还有就是,暂停容器是会保存内存中的数据的,但是停止容器是会情况内存数据的,这一点很重要。

启动容器

docker start <容器ID或者容器名 >:启动容器。这个不能跟参数,相当于使用容器创建时的参数来启动。

创建并启动容器

docker run [选项] 镜像名称 [命令]:创建并且启动一个新容器。每次执行都会产生一个新的容器。

例子:

docker run \
  --env MODE=standalone \
  --name nacos1 \
  --restart=always \
  -d \
  -p 8848:8848 \
  -p 9848:9848 \
  -p 9849:9849 \
  -v D:\nacos-source:/home/nacos \
  -v D:\nacos-conf:/home/nacos/conf \
  nacos/nacos-server:latest

解释:

  • –env MODE=standalone:设置环境变量 MODE 的值为 standalone,指示 Nacos 以单机模式运行。
  • –name nacos1:为容器指定一个名称为 nacos1。
  • –restart=always:无论容器因何原因停止(例如手动停止、崩溃或主机重启),Docker 都会自动重启该容器。
  • -d:在后台运行容器。
  • -p 8848:8848:端口映射,将宿主机的 8848 端口映射到容器的 8848 端口,用于 Nacos 的 Web 界面和 HTTP API。
  • -p 9848:9848:端口映射,将宿主机的 9848 端口映射到容器的 9848 端口,用于 Nacos 2.x 的 gRPC 服务。
  • -p 9849:9849:端口映射,将宿主机的 9849 端口映射到容器的 9849 端口,用于 Nacos 2.x 的 gRPC 配置同步。
  • -v D:\nacos-source:/home/nacos:卷映射,将宿主机的 D:\nacos-source 目录映射到容器内的 /home/nacos 目录,覆盖容器的工作目录,用于存放运行文件。
  • -v D:\nacos-conf:/home/nacos/conf:卷映射,将宿主机的 D:\nacos-conf 目录映射到容器内的 /home/nacos/conf 目录,用于存放配置文件。
  • nacos/nacos-server:latest:指定运行的镜像名称和版本,使用 Nacos 的最新官方镜像。

删除容器

docker rm 已有容器的ID或容器名称 :删除容器。需要容器停止才能删除。

进入容器的命令行

  1. docker exec -it <容器名> /bin/bash
  2. docker exec -it <容器名> /bin/sh

如果容器没有 /bin/bash(例如精简镜像),通常会有 /bin/sh(一个更轻量的 shell)。这是备用选项。

进入容器后的操作就是linux一样的操作了。

查看所有配置的镜像源

docker info | grep -A 1 “Registry Mirrors”:列出所有的镜像源。

查看docker信息

查看docker信息:docker info

启动docker

启动docker: systemctl start docker

停止并删除docker-compose容器

停止并删除docker-compose容器:docker-compose down

使用docker-compose进行后台启动

使用docker-compose进行后台启动:docker-compose up -d

查看docker-compose启动的容器

查看docker-compose启动的容器:docker-compose ps

映射源码出来

如果要把 docker某个镜像的源码映射出来,可以这样做:

docker run --name temp-nacos -d nacos/nacos-server:latest
docker cp temp-nacos:/home/nacos/. D:\nacos-source
docker cp temp-nacos:/home/nacos/conf/. D:\nacos-conf
docker stop temp-nacos
docker rm temp-nacos
docker run --env MODE=standalone --name nacos --restart=always -d -p 8848:8848 -p 9848:9848 -p 9849:9849 -v D:\nacos-source:/home/nacos -v D:\nacos-conf:/home/nacos/conf nacos/nacos-server:latest

解释:先启动一个临时容器,然后把里面的一些文件复制出来,然后删除这个临时容器,再重新创建一个容器,使用-v把我们映射出来的文件映射到容器中去,这样我们就可以让容器使用我们复制出来的内容进行执行了。

个人站点链接

我的博客链接:https://blog.yimengtut.online/


网站公告

今日签到

点亮在社区的每一天
去签到