常用的Docker命令
命令
查看容器日志
- docker logs -f <容器ID或者容器名 >:查看容器日志。
- 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或容器名称 :删除容器。需要容器停止才能删除。
进入容器的命令行
- docker exec -it <容器名> /bin/bash
- 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/