Docker容器详解
什么是docker?
Docker是一个开源的应用容器引擎;是一个轻量级容器技术; Docker支持将软件编译成一个镜像;然后在镜像中各种软件做好配置,将镜像发布出去,其他使用者可以直接使 用这个镜像; 运行中的这个镜像称为容器,容器启动是非常快速的
docker里面的一些概念
1.docker主机(Host):安装了Docker程序的机器(Docker直接安装在操作系统之上)
2.docker客户端(Client):连接docker主机进行操作(比如windowns的cmd窗口)
3.docker仓库(Registry):用来保存各种打包好的软件镜像
4.docker镜像(Images):软件打包好的镜像;放在docker仓库中
5.docker容器(Container):镜像启动后的实例称为一个容器;容器是独立运行的一个或一组应用
原理图:
docker常用命令
##查看docker容器版本
docker version
##查看docker容器信息
docker info
##查看docker容器帮助
docker --help
##搜索仓库MySQL镜像
docker search mysql
##下载Redis官方最新镜像,相当于:docker pull redis:latest
docker pull redis
##下载仓库所有Redis镜像
docker pull -a redis
##下载私人仓库镜像
docker pull bitnami/redis
##列出本地images
docker images
##单个镜像删除,相当于:docker rmi redis:latest
docker rmi redis
##强制删除(针对基于镜像有运行的容器进程)
docker rmi -f redis
##多个镜像删除,不同镜像间以空格间隔
docker rmi -f redis tomcat nginx
##删除本地全部镜像
docker rmi -f $(docker images -q)
##新建并启动容器,参数:-i 以交互模式运行容器;-t 为容器重新分配一个伪输入终端;--name 为容器指定一个名称 -d 以后台进程方式运行
docker run -i -t --name mytomcat -d tomcat:latest
----------------------------------------------------------------------------------------------
docker ps -a #查看后台进程
##启动一个或多个已经被停止的容器
docker start redis
##重启容器
docker restart redis
##使用run方式在创建时进入
docker run -it centos /bin/bash
##关闭容器并退出
exit
##在 centos 容器中打开新的交互模式终端,可以启动新进程,参数:-i 即使没有附加也保持STDIN 打开;-t 分配一个伪终端
docker exec -i -t centos /bin/bash
##以交互模式在容器中执行命令,结果返回到当前终端屏幕
docker exec -i -t centos ls -l /tmp
将宿主机的8888映射到容器的8080上.
docker run -d --name mytomcat -p 8888:8080 tomcat
##停止一个运行中的容器
docker stop redis
##杀掉一个运行中的容器
docker kill redis
##删除一个已停止的容器
docker rm redis
##删除一个运行中的容器
docker rm -f redis
-----------------------------------------------------------------------------
拉取mysql8的镜像
docker pull mysql:8
查看镜像
docker images
利用镜像创建mysql8的容器 本机端口为 3308, 解决编码问题
docker run -p 3308:3306 --name ycmysql8 -e MYSQL_ROOT_PASSWORD=a -d mysql:8 --character-set-server=utf8mb4 --collation-server=utf8mb4_unicode_ci
查看容器是否启动
docker ps -a
进入容器 -it 以交互式终端进入容器
docker exec -it ycmysql8 /bin/bash
登录mysql
mysql -uroot -pa
创建数据库设置utf8编码集
create database yc108109res default character set = 'utf8';
显示数据库
show databases;
use res109;
show tables;
链接某个网桥
docker network connect 网桥名 容器名
查看链接网桥的容器
docker network inspect 网桥名
创建网桥
docker network create -d bridge 网桥名
Docker容器详解相关推荐
- 图形化管理工具Portaniner安 以及 Docker镜像详解(三)
文章目录 图形化管理工具Portaniner安装 Docker镜像详解 1 什么是镜像 2 Docker镜像加载原理 3 分层理解 提交镜像 常用容器部署 Nginx部署 图形化管理工具Portani ...
- 虚拟化技术之docker技术详解
文章目录 虚拟化技术之docker技术详解 关于作者 作者介绍 前言 虚拟化技术概述及简介 一 .什么是虚拟化技术? 二.常见的虚拟化技术有哪些? 2.1 KVM 虚拟化技术概念 2.2 ESXI 虚 ...
- Docker全面详解(二)
3. run运行流程图 4. 底层原理 4.1. Docker是怎么工作的 4.2. Docker为什么比VM快? 5. Docker的常用命令(重) 5.1. 帮助命令 5.2. 镜像命令(基础) ...
- STL 之 deque容器详解
Deque 容器 deque容器是C++标准模版库(STL,Standard Template Library)中的部分内容.deque容器类与vector类似,支持随机访问和快速插入删除,它在容器中 ...
- STL 之 list 容器详解
STL之list容器详解 List 容器 list是C++标准模版库(STL,Standard Template Library)中的部分内容.实际上,list容器就是一个双向链表,可以高效地进行插入 ...
- c语言stl模板,c/c++开发分享C++ 标准模板库 STL 顺序容器详解
c++ 标准模板库 stl 顺序容器 容器 顺序性 重复性 支持迭代器 vector 动态数组 无序 可重复 随机访问迭代器 deque 双向队列 无序 可重复 随机访问迭代器 list 双向链表 无 ...
- 读Java并发编程实践记录_原子性_锁_同步容器详解_任务执行
原子性: 单独的,不可分割的操作 不要使用过期状态值来决策当下的状态, 一定要先检查再执行(不检查, 将引发数据修改,丢失) 避免延迟初始化(懒加载: 先查看对象 == null, 然后new), 有 ...
- 【36C++STL-常用容器----5、stack容器详解】
文章目录 12.5 stack容器 12.5.1 stack基本概念 12.5.2 stack常用接口 12.5 stack容器 12.5.1 stack基本概念 概念:stack是一种先进后出(Fi ...
- 高并发之并发容器详解
高并发之并发容器详解 一.vector Vector 是矢量队列,它是JDK1.0版本添加的类.继承于AbstractList,实现了List, RandomAccess, Cloneable这些接口 ...
最新文章
- mpvue开发小程序所遇问题及h5转化方案
- 自己动手写C语言编译器(1)
- MySQL执行计划解读
- iOS正则表达式验证
- 干货 | 携程酒店MOCK全链路实践
- 全球云计算大会起航,网易云阮良解读人工智能在产品中的创新实践
- 基于mindspore的口罩检测训练与在线推理
- SAP UI5 createBindingContext in local JSON model
- Windows下的ssh姐妹花 Xshell 和 Xftp
- form数据请求参数格式
- TLS握手、中断恢复与证书中心的原因
- python代理ip连接失败_遇到问题--python--爬虫--使用代理ip第二次获取代理ip失败
- QUT期末考试《电子商务概论》思维导图
- Selenium使用之——键盘操作方法
- Flutter 底部导航栏实现方式
- L2十档行情API接口(十档委托、买卖队列、逐笔成交)web或软件应用xml数据接口
- matlab编译后方交会,后方交会MATLAB程序实习报告.docx
- 大数据查询语句SQL
- 一文教你学会使用GitHub!(附视频)
- 保险也能拼购?个人可以凑够人数组团购买医疗保险的4大风险