Docker基本命令使用详解(推荐)

 更新时间:2017年03月14日 10:35:33   作者:tianpy5  
因为工作中需要将服务容器化,所以最近开始学习Docker相关的知识,对于Docker入门常用的命令总结下分享到脚本之家平台,需要的的朋友参考下

 因为工作中需要将服务容器化,所以最近开始学习Docker相关的知识,对于Docker入门常用的命令总结如下:

1. 运行容器

$ sudo docker run -i -t ubuntu /bin/bash

-i 标志保证容器中的STDIN是开启的
-t 标志告诉Docker为要创建的容器分配一个伪tty终端
ubuntu 表示我们创建容器使用的镜像
/bin/bash 表示当容器创建完成之后,Docker就会执行容器中的/bin/bash命令

2. 给容器命名

$ sudo docker run --name my_container -i -t ubuntu /bin/bash

--name为容器指定一个名称,使用指定的容器名称比使用容器ID更方便。

3. 重新启动已停止的容器

#使用容器ID启动容器
$ sudo docker start f5a9f05f4214
#使用容器名称启动容器
$ sudo docker start my_container
$ sudo docker restart my_container

除了容器ID,我们还可以使用容器名称来运行容器,也可以用`docker restart`命令来重新启动一个容器,运行以上命令,使用`sudo docker ps`就可以看到我们的容器已经开始运行了。

4. 附着到容器上

$ sudo docker attach my_container

Docker容器重新启动的时候,会沿用`docker run`命令时制定的参数来运行,因此我们的容器重新启动后会运行一个交互式的shell,此外可以用`docker attach`命令重新附着到该容器的会话上。
运行命令之后可以需要按下回车键才能进入该会话,如果退出容器的shell,容器会再次停止运行。

5. 创建守护式容器

$ sudo docker run --name my_container -d ubuntu /bin/bash

-d 标志Docker会将容器放到后台运行

`docker exec`命令会在容器内部额外启动新进程,可以在容器内运行的进程有两种类型:后台任务和交互式任务。
#在容器中运行后台任务
$ sudo docker exec -d my_container touch /etc/new_config_file
#在容器内运行交互式任务
$ sudo docker exec -t -i my_container /bin/bash

6.停止守护式容器

#通过容器名称停止正在运行的容器
$ sudo docker stop my_container
#通过容器ID停止正在运行的容器
$ sudo docker stop f5a9f05f4214
#停止容器进程
$ sudo docker kill f5a9f05f4214

如果想快速停止某个容器,使用`docker kill`命令在向容器发送停止信号。

7.自动重启容器

$ sudo docker run --restart=always --name my_container -d ubuntu /bin/bash
--restart 标志会检查容器的退出代码,并据此来决定是否要重启容器,默认是不会重启。
--restart的参数说明
always:无论容器的退出代码是什么,Docker都会自动重启该容器。
on-failure:只有当容器的退出代码为非0值的时候才会自动重启。另外,该参数还接受一个可选的重启次数参数,`--restart=on-fialure:5`表示当容器退出代码为非0时,Docker会尝试自动重启该容器,最多5次。

8. 删除容器

#根据容器标识删除容器
$ sudo docker rm my_container 
$ sudo docker rm f5a9f05f4214

如果容器已经不再使用,可以使用`docker rm`命令来删除他们,也可以通过给`docker rm`传递-f标志来删除运行中的Docker容器(Docker 1.6.2+)。

#删除所有容器
$ sudo docker rm `docker ps -a -q`

`docker ps`命令会列出现有的全部正在运行的容器信息
-a 标志代表列出所有容器,包括运行的和已经停止的
-q 标志表示只需要返回容器的ID而不会返回容器的其他信息

9. 查看容器信息

#查看容器信息
$ sudo docker ps
#通过docker inspect来获得更详细的容器信息
$ sudo docker inspect my_container

以上所述是小编给大家介绍的Docker基本命令使用详解,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对脚本之家网站的支持!

相关文章

  • 使用Docker方式启动tomcat,访问首页出现404的解决方案

    使用Docker方式启动tomcat,访问首页出现404的解决方案

    这篇文章主要介绍了使用Docker方式启动tomcat,访问首页出现404的解决方案,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2025-03-03
  • 详解Windows下运用Docker部署Node.js开发环境

    详解Windows下运用Docker部署Node.js开发环境

    这篇文章主要介绍了详解Windows下运用Docker部署Node.js开发环境,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-01-01
  • Docker MySQL每天定时自动备份的实现方法

    Docker MySQL每天定时自动备份的实现方法

    本文主要介绍了Docker MySQL每天定时自动备份的实现方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2023-01-01
  • Docker安装及阿里云镜像加速器的配置方法

    Docker安装及阿里云镜像加速器的配置方法

    这篇文章主要介绍了Docker安装及阿里云镜像加速器配置方法,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-06-06
  • docker 设置windows存储路径的操作

    docker 设置windows存储路径的操作

    这篇文章主要介绍了docker 设置windows存储路径的操作,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2021-03-03
  • 二进制部署docker的超详细教程

    二进制部署docker的超详细教程

    部署环境并不会一直顺利,有些时候因为时内网环境,无法使用yum等情况,对于一些中间件的部署缺少依赖,我们可以使用二进制包的形式部署docker,这篇文章主要给大家介绍了关于二进制部署docker的相关资料,需要的朋友可以参考下
    2024-04-04
  • Docker中编码和时区设置不生效问题排查小结

    Docker中编码和时区设置不生效问题排查小结

    本文主要介绍了在Docker容器中排查编码和时区设置不生效的问题,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2025-01-01
  • 详解docker compose搭建lnmpr环境实现

    详解docker compose搭建lnmpr环境实现

    这篇文章主要为大家介绍了使用docker compose搭建lnmpr环境实现详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2022-11-11
  • Docker快速部署gitlab+gitlab-runner实例

    Docker快速部署gitlab+gitlab-runner实例

    这篇文章主要介绍了Docker快速部署gitlab+gitlab-runner实例,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2024-06-06
  • mysql8.4.0实现主从复制部署

    mysql8.4.0实现主从复制部署

    主从复制是 MySQL 中一种用于实现数据冗余、提高可用性和性能的重要机制,本文主要介绍了mysql8.4.0实现主从复制部署,具有一定的参考价值,感兴趣的可以了解一下
    2024-07-07

最新评论