Centos7 Docker容器操作_入门试炼03
文章目录
- 一、容器常用命令
- 二、查看容器
- 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相关推荐
- Centos7 Docker镜像操作_入门试炼02
文章目录 一.镜像操作常用命令 二.镜像基础操作 2.1. 删除所有镜像 2.2. 列出镜像 2.3. 搜索镜像 2.4. 拉取镜像 2.5. 查看所有镜像 2.6. 镜像加速器 2.7. 删除指定镜 ...
- Centos7 Docker 目录挂载_入门试炼06
文章目录 一.目录挂载格式 二.需求实战 2.1. 目录挂载 2.2. 测试目录挂载_同步文件 2.3. 测试目录挂载_同步文件夹 一.目录挂载格式 我们可以在创建容器的时候,将宿主机的目录与容器内的 ...
- Centos7 Docker 文件拷贝_入门试炼04
前提:容器服务必须启动才可以进行文件拷贝 一.常用命令 需求 宿主机某一文件/目录->>容器内部 docker cp 需要拷贝的文件或目录 容器名称:容器目录 容器内部某一文件/目录-&g ...
- Guns 查询列表_入门试炼03
一.插入数据进行测试: INSERT INTO `guns`.`sys_house` (`id`, `house_user`, `house_address`, `house_date`, `hous ...
- Jenkins_安装基础软件_入门试炼03
应用部署服务器准备: 本章对Linux系统简介.安装Java环境.安装并配置 Git.安装并配置 Maven.安装并配置 Tomcat.以及将部署服务器配置到Jenkins上. 一.Linux操作系统 ...
- 用Jenkins自动化搭建测试环境_jenkins基础搭建_入门试炼02
Jenkins基础: 本篇介绍Jenkins的安装.Jenkins中的常用插件的安装方法.Jenkins用户配置以及提醒邮件的配置. 接上一篇:使用Jenkins搭建自动化测试环境_环境准备_入门试炼 ...
- Docker 容器操作
容器是 Docker 又一核心概念.简单的说,容器是独立运行的一个或一组应用,以及它们的运行态环境.对应的,虚拟机可以理解为模拟运行的一整套操作系统(提供了运行态环境和其他系统环境)和跑在上面的应用. ...
- Docker 容器操作 1
2019独角兽企业重金招聘Python工程师标准>>> 容器是 Docker 又一核心概念.简单的说,容器是独立运行的一个或一组应用,以及它们的运行态环境.对应的,虚拟机可以理解为模 ...
- TortoiseGit 单文件版本对比_入门试炼_09
文章目录 一.单文件版本数据模拟 二.单文件版本对比 2.1. 查询单文件提交记录 2.2. 单文件版本之间差异对比 案例场景: 依次提交5次,推送远程,同一个文件5个版本之间的相互对比 一.单文件版 ...
最新文章
- 【智能家居篇】wifi网络结构(上)
- X86中的RDTSC指令
- 【采用】【科技金融】CART树现金贷风控策略
- 用c语言实现存储和读取图片文件,C++实现单张图片读取和保存
- Dubbo之——将Dubbo服务打包成Jar包
- 《大数据》第2期“专题”——我国政府数据开放现状和保障机制
- NBR100多IP出口解决方案的配置方法
- OPENCV3.0 单目摄像头标定(使用官方自带的标定图片)
- internet缓存Temp中的tmp文件
- Eclipse中输入点号(.)不提示类成员(函数、字段)的解决办法
- C C++编程子资料库(小程序)
- html中加js弹窗,前端html+css+js弹窗的实现
- 为什么油猴脚本会运行两次?
- WIN10下删除Hiberfil.sys文件
- ie11不兼容java_IE11浏览器网页不兼容的四种解决方法
- 4A 统一安全管理平台解决方案。
- 用zookeeper体验监听服务器是否还活着
- php mail 垃圾邮件,如何避免我的邮件从PHP邮件()被标记为垃圾邮件? - 程序园
- vue 关于父组件同时多次调用子组件而产生的 this取值 的bug问题
- Java 服务接入「东方通(tongweb)」