文章目录

  • 一、容器常用命令
  • 二、查看容器
    • 2.1. 查看正在运行容器
    • 2.2. 查看所有的容器(启动过的历史容器)
    • 2.3. 查看最后一次运行的容器
    • 2.4. 查看停止的容器
  • 三、容器创建和运行
    • 3.1. 交互式容器和守护式容器的区别
    • 3.2. 目录映射
    • 3.3. 交互式容器(不建议使用)
    • 3.4. 守护式容器
    • 3.4. 容器——停止
    • 3.5. 容器——启动

一、容器常用命令

说明 命令
查看正在运行容器 docker ps
查看启动过的历史容器 docker ps –a
查看最后一次运行的容器 docker ps –l
查看停止的容器 docker ps -f status=exited
停止正在运行的容器 docker stop $CONTAINER_NAME/ID
例如:docker stop mycentos2
docker stop 33c17a8f35f3
启动已运行过的容器 docker start $CONTAINER_NAME/ID
例如:docker start mycentos2
docker start 33c17a8f35f3
创建交互式容器(不建议使用) docker run -it --name=容器名称 镜像:镜像版本 /bin/bash
创建守护式容器(推荐使用) docker run -di --name=容器名称 镜像:镜像版本
删除容器 docker rm 容器名称/容器ID
登录容器 docker exec -it 容器名称/容器ID /bin/bash
例如:docker exec -it mycentos2 /bin/bash
docker exec -it 33c17a8f35f3 /bin/bash

二、查看容器

2.1. 查看正在运行容器

docker ps

2.2. 查看所有的容器(启动过的历史容器)

docker ps -a

2.3. 查看最后一次运行的容器

docker ps –l

2.4. 查看停止的容器

docker ps -f status=exited

三、容器创建和运行

概念与联系:
由镜像创建并运行容器,一个镜像可以创建多个容器,镜像相当于类,容器相当于对象。一个类可以创建多个对象。

docker run
  • -i:表示运行容器
  • -t:表示容器启动后会进入其命令行。加入这两个参数后,容器创建就能登录进去。即分配一个伪终端。
  • –name :为创建的容器命名。
  • -v:表示目录映射关系(前者是宿主机目录,后者是映射到宿主机上的目录),可以使用多个-v做多个目录或文件映射。注意:最好做目录映射,在宿主机上做修改,然后共享到容器上。
  • -d:在run后面加上-d参数,则会创建一个守护式容器在后台运行(这样创建容器后不会自动登录容器,如果只加-i -t两个参数,创建后就会自动进去容器)。
  • -p:表示端口映射,前者是宿主机端口,后者是容器内的映射端口。可以使用多个-p做多个端口映射
    原理:创建容器并进入容器,退出容器,服务停止。

3.1. 交互式容器和守护式容器的区别

运行容器方式 说明
运行交互式容器 由镜像创建并运行进入容器,退出命令窗口,容器也随之停止。
运行守护式容器 由镜像创建并后台运行容器,不进入容器,对容器操作需要先进入容器。
  • 运行容器(必须要写的参数 -i):
docker run -i
  • 运行交互式容器:
docker run -it --name=容器名称 镜像:版本 /bin/bash
  • 运行守护式容器:
docker run -di --name=容器名称 镜像:版本 /bin/bash

3.2. 目录映射

-v 参数指宿主机上和容器之间的目录映射,在目录挂载场景下,会用到

  • 创建容器 添加-v参数 后边为 宿主机目录:容器目录
docker run -di -v /usr/local/myhtml:/usr/local/myhtml --name=mycentos2 centos:7

释义:
简单来说:目录同步。
将宿主机上的 /usr/local/myhtml目录和容器中的/usr/local/myhtml目录,进行目录映射,以后在myhtml目录增删改查这2个目录都是同步的。
栗子:
也就是需要想在容器中的/usr/local/myhtml下面,添加index.html文件,不用进入容器,直接在宿主机上和容器映射目录 /usr/local/myhtml下面添加index.html文件即可,这两个目录是同步的。

-p参数指的是端口映射:
你mysql容器的端口是3306
但是,外界访问你mysql容器的3306端口是访问不了的,可以将宿主机上的3306/9000端口和mysql容器中的3306端口进行端口映射,访问宿主机上的3306/9000端口就相当于访问mysql容器的3306端口


3.3. 交互式容器(不建议使用)

  • ① 创建一个交互式容器并取名为mycentos
docker run -it --name=mycentos centos:7 /bin/bash

/bin/bash:这个参数只有在与命令行交互的时候,才会用到

执行命令后,就已经进入容器中,不在宿主机上了
此时在容器中的操作,在宿主机上是看不到的。
当我们在容器中,执行exit
退出容器后,再在宿主机上查看运行的容器,可以看到,刚才运行的容器已经停止了
注:–name=mycentos指的是容器名称 centos:7 镜像名称 执行命令完成后,就已经进入centos7容器了,和宿主机centos7一样,只不过一个是宿主机,另一个是容器而已。

  • ②退出当前容器,使用exit命令

然后用docker ps -a 命令查看发现该容器也随之停止:

3.4. 守护式容器

  • 前提:创建容器,不进行容器,后台启动,只要不关闭容器,容器就一直处于启动状态。

  • ①创建一个守护式容器:

docker run -di --name=mycentos2 centos:7
  • ② 查看容器是否启动:
docker ps
  • ③登录守护式容器方式:
格式:docker exec -it container_name (或者 container_id)  /bin/bash
#建议使用
docker exec -it mycentos2  /bin/bash
#
docker exec -it 33c17a8f35f3  /bin/bash
  • ④退出容器:
exit
  • ⑤查看正在运行的容器
docker ps

exit退出容器,mycentos2容器,还是可以正常处于启动状态。

3.4. 容器——停止

  • 停止已经运行的容器
格式:docker stop $CONTAINER_NAME/ID
#第一种
docker stop mycentos2
#第二种
docker stop 33c17a8f35f3

3.5. 容器——启动

  • 启动已经运行的容器
格式:docker start $CONTAINER_NAME/ID
#第一种
docker start mycentos2
#第二种
docker start 33c17a8f35f3
#启动之后,查看mycentos是否已经运行
docker ps
#查看启动过的容器 前提:先查看那些容器启动过。
docker ps -a

想学习更多微服务、分布式、中间件、数据库、项目快速构建等系列技术
请访问Gblfy主页:https://blog.csdn.net/weixin_40816738
让我们一起进步!!!

Centos7 Docker容器操作_入门试炼03相关推荐

  1. Centos7 Docker镜像操作_入门试炼02

    文章目录 一.镜像操作常用命令 二.镜像基础操作 2.1. 删除所有镜像 2.2. 列出镜像 2.3. 搜索镜像 2.4. 拉取镜像 2.5. 查看所有镜像 2.6. 镜像加速器 2.7. 删除指定镜 ...

  2. Centos7 Docker 目录挂载_入门试炼06

    文章目录 一.目录挂载格式 二.需求实战 2.1. 目录挂载 2.2. 测试目录挂载_同步文件 2.3. 测试目录挂载_同步文件夹 一.目录挂载格式 我们可以在创建容器的时候,将宿主机的目录与容器内的 ...

  3. Centos7 Docker 文件拷贝_入门试炼04

    前提:容器服务必须启动才可以进行文件拷贝 一.常用命令 需求 宿主机某一文件/目录->>容器内部 docker cp 需要拷贝的文件或目录 容器名称:容器目录 容器内部某一文件/目录-&g ...

  4. Guns 查询列表_入门试炼03

    一.插入数据进行测试: INSERT INTO `guns`.`sys_house` (`id`, `house_user`, `house_address`, `house_date`, `hous ...

  5. Jenkins_安装基础软件_入门试炼03

    应用部署服务器准备: 本章对Linux系统简介.安装Java环境.安装并配置 Git.安装并配置 Maven.安装并配置 Tomcat.以及将部署服务器配置到Jenkins上. 一.Linux操作系统 ...

  6. 用Jenkins自动化搭建测试环境_jenkins基础搭建_入门试炼02

    Jenkins基础: 本篇介绍Jenkins的安装.Jenkins中的常用插件的安装方法.Jenkins用户配置以及提醒邮件的配置. 接上一篇:使用Jenkins搭建自动化测试环境_环境准备_入门试炼 ...

  7. Docker 容器操作

    容器是 Docker 又一核心概念.简单的说,容器是独立运行的一个或一组应用,以及它们的运行态环境.对应的,虚拟机可以理解为模拟运行的一整套操作系统(提供了运行态环境和其他系统环境)和跑在上面的应用. ...

  8. Docker 容器操作 1

    2019独角兽企业重金招聘Python工程师标准>>> 容器是 Docker 又一核心概念.简单的说,容器是独立运行的一个或一组应用,以及它们的运行态环境.对应的,虚拟机可以理解为模 ...

  9. TortoiseGit 单文件版本对比_入门试炼_09

    文章目录 一.单文件版本数据模拟 二.单文件版本对比 2.1. 查询单文件提交记录 2.2. 单文件版本之间差异对比 案例场景: 依次提交5次,推送远程,同一个文件5个版本之间的相互对比 一.单文件版 ...

最新文章

  1. 【智能家居篇】wifi网络结构(上)
  2. X86中的RDTSC指令
  3. 【采用】【科技金融】CART树现金贷风控策略
  4. 用c语言实现存储和读取图片文件,C++实现单张图片读取和保存
  5. Dubbo之——将Dubbo服务打包成Jar包
  6. 《大数据》第2期“专题”——我国政府数据开放现状和保障机制
  7. NBR100多IP出口解决方案的配置方法
  8. OPENCV3.0 单目摄像头标定(使用官方自带的标定图片)
  9. internet缓存Temp中的tmp文件
  10. Eclipse中输入点号(.)不提示类成员(函数、字段)的解决办法
  11. C C++编程子资料库(小程序)
  12. html中加js弹窗,前端html+css+js弹窗的实现
  13. 为什么油猴脚本会运行两次?
  14. WIN10下删除Hiberfil.sys文件
  15. ie11不兼容java_IE11浏览器网页不兼容的四种解决方法
  16. 4A 统一安全管理平台解决方案。
  17. 用zookeeper体验监听服务器是否还活着
  18. php mail 垃圾邮件,如何避免我的邮件从PHP邮件()被标记为垃圾邮件? - 程序园
  19. vue 关于父组件同时多次调用子组件而产生的 this取值 的bug问题
  20. Java 服务接入「东方通(tongweb)」

热门文章

  1. pytorch命令式和符号式混合编程
  2. 数据结构上机实验之二分查找
  3. cmake 学习笔记
  4. 【观点】传统企业如何在数字化时代实现进化?
  5. 实时化或成必然趋势?新一代 Serverless 实时计算引擎
  6. 通过SQL即可让监控分析更简单更高效
  7. 10分钟上线 - 利用函数计算构建微信小程序的Server端
  8. 啥情况?为什么我的 Service 无法注入进来?
  9. 蚂蚁链发布新一代网络平台「FAIR」 区块链进入隐私计算原生时代
  10. 入局视频会议市场 揭秘“腾讯会议”背后的创新黑科技