docker一些基础的命令

–name=“容器新名字” ,为指定容器指定一个名字

-d:后台运行容器并返回一个容器ID,即启动守护式容器(后台运行)

-i:以交互模式运行容器,通常与-t同时使用

-t:为容器重新分配一个伪输入终端,通常与-i同时使用,即启动交互式容器(前台有伪终端,等待交互)

-P:随机端口映射

-p:指定端口映射
在这里插入图片描述
-a:列出当前所有正在运行的容器+历史运行过的

-l:显示最近创建的容器

-n:显示最近n个创建的容器

-q:静默模式,只显示容器编号

退出容器:有两种方式:

exit:run进去容器,exit退出,容器停止

ctrl+p+q:run进去容器,ctrl+p+q退出,容器不停止

这是因为 Ctrl+Q+P 组合键不会发送任何命令或信号给容器,它只是从容器的终端中分离(detach)你的当前会话。这样,你可以退出容器的终端,但容器仍然在后台继续运行。

这种行为通常适用于某些情况,例如当你在容器中执行某个长时间运行的任务时,你希望退出终端但保持容器继续运行。你可以随时重新附加(attach)到容器的终端,以查看任务的输出或进行其他操作。

需要注意的是,使用Ctrl+Q+P组合键前提是在非交互式的容器终端中使用,如果你正在使用交互式终端(如通过docker run -it启动容器),则Ctrl+C组合键将会中断(stop)容器。只有在非交互式终端中使用Ctrl+Q+P才会分离你的会话而不停止容器。

容器启动相关

启动已经停止的容器:docker start 容器id或者容器名

重启容器:docker restart容器id或者容器名

停止容器:docker stop容器id或者容器名

强制停止容器:docker kill 容器id或者容器名

删除已经停止的容器:docker rm 容器id

  • 重要:有镜像才能创建容器,这是根本前提(下载一个Redis镜像演示)

    • 前台交互式启动:docker run -it redis
      • 不建议使用前台交互式启动
      • 终端被锁定:当你使用交互式启动 Redis,并且 Redis 进程在前台运行时,该终端将一直被 Redis 所占用,你无法执行其他操作或者关闭终端。
      • 容器无法自动化:如果你希望将 Redis 放在容器中,并通过自动化工具(如 Docker Compose 或编排工具)进行管理,那么使用前台交互式启动将变得非常困难。自动化工具通常需要通过后台启动 Redis 进程,并记录容器的运行状态、日志等信息。
    • 后台守护式启动:docker run -d redis
  • 启动守护式容器(后台服务器)

  • 查看容器日志:docker logs 容器id

  • 查看容器内运行的进程:docker top 容器id

  • 查看容器内部细节:docker inspect 容器id

  • 进入正在运行的容器并以命令交互

    • docker exec -it 容器id bashshell
    • 重新进入docker attach 容器id
    • 上述两者的区别
      • attach直接进入容器启动命令的终端,不会启动新的进程,用exit退出,会导致容器的停止
      • exec是在容器中打开新的终端,并且可以启动新的进程,用exit退出,不会导致容器的停止
    • 推荐使用docker exec命令,应为退出容器终端,不会导致容器的停止
  • 从容器内拷贝文件到主机上

  • 导入和导出容器

    • export导出容器的内容流作为一个tar归档文件[对应import命令]
    • import从tar包中的内容创建一个新的文件系统再导入为镜像[对应为export]
    • 案例
      • docker export容器id>文件名.tar
      • cat文件名.tar|docker import-镜像用户/镜像名:镜像版本号
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Docker是一种开源的容器化平台,可以帮助用户将应用程序及其依赖打包成一个独立的容器,以实现跨平台和可移植性。下面是一些常用的Docker基础命令: 1. docker --help:查看Docker命令的帮助信息或者查看官方文档。 2. docker images:查看所有的镜像。 3. docker run:运行镜像生成容器。 4. docker run -it --name:运行镜像生成一个容器并给容器起名。 5. docker container ls(或docker ps):查看正在运行中的容器信息。 6. docker container ls -a(或docker ps -a):查看所有容器信息。 7. docker container ls -aq(或docker ps -aq):查看所有容器的ID号。 8. docker search:搜索某个服务的所有镜像信息。 9. docker pull:拉取镜像。 10. docker push:上传镜像到Docker Hub。 11. docker create:创建一个容器。 12. docker start:开启容器(并不常用)。 13. docker stop:关闭某个容器。 14. docker rename:修改容器的名称(重命名)。 15. docker build:构建镜像。 16. docker logs:查看容器的日志。 17. docker image prune:删除没有使用的镜像。 18. docker container prune:删除所有没有运行或停止的容器。 19. docker rm:删除某一个没有运行的容器。 20. docker rm $(docker ps -a):删除所有没有运行的容器。 21. docker rmi:删除某一个镜像。 22. docker rm -f:强制删除容器,可以删除正在运行中的容器。 23. docker history:查看镜像的层级信息。 以上是Docker的一些基础命令,更多命令行信息可以查看docker --help帮助或者官方文档。同时还可以使用一些其他命令来查看网络信息,如ifconfig、brctl show、docker network ls。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *2* *3* [docker基础命令](https://blog.csdn.net/ShenShuaiHu/article/details/125358024)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT3_1"}}] [.reference_item style="max-width: 100%"] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值