初玩Docker
Docker 和VM的区别
Docker就是类似于一个打包好的环境,相关的服务都安装在里面,可以直接使用的。
VM就相当于另外一套独立的系统,独立的IP,虚拟硬件。 要使用就需要单独构建一套才可以。
Docker就可以直接拉取使用。快速构建业务环境。
三块东西:
@1、Image,镜像

@2、容器操作。

Docker run --name container-name -d image-name (自定义容器名,后台运行)
docker ps (查看运行中的容器)
docker stop container-name/container-id (停止运行的容器)
docker rm container-id (删除指定容器)
端口映射: -p 6379:6379
docker run -d -p 6379:6379 --name myredis docker.io/redis
容器日志: docker logs container-name/container-id
@3.容器注册中心。
Docker Hub 注册中心用于上传和下载镜像,分为公共注册中心和私有注册中心两种。
https://hub.docker.com/
Docker安装, Linux系统内核要高于3.10,否则会出现问题。
uname -r 查看
yum -y install docker 安装docker
启动Docker systemctl start docker
设置Docker开机自启: systemctl enable docker
使用docker 安装一个mysql的命令
docker run -d -p 3307:3306 --name myMysql -e MYSQL_ROOT_PASSWORD=123456 53ebe3d4d330

运行之后会生成一个CONTAINER ID
docker ps -a 可以查看所有 docker的运行状态

[root@VPN ~]# docker logs 209c6c8da98e
查看docker运行的日志记录。
举例使用Docker安装部署一个tomcat服务:
docker pull docker.io/bitnami/tomcat

docker run -d -p 8088:8080 950725979338
运行docker安装的tomcat服务。
然后在本地使用tcping 工具看8088 端口是否能ping通。

使用docker启动另外一个tomcat,端口8089
[root@VPN ~]# docker run -d -p 8089:8080 950725979338
41902506d388122fa3b2ff854f5369648b9757bbab02fb59585f113000a8e56c
可以查看docker启动的服务:

docker关闭指定的容器:
docker stop 容器id 关闭容器
Docker是容器管理工具, 轻量级,便携式,与外界隔离的容器。
所有容器磁盘操作其实都是对/var/lib/docker/的操作,
简介见:https://www.jianshu.com/p/f58eeaf73d69
容器和虚拟机的概念并不相同,容器也并不能取代虚拟机。
在容器中很方便地构建、传输、运行应用的引擎
Docker的部署目录:/var/lib/docker

Docker:
是容器管理工具
不是虚拟化引擎
使用层级的文件系统
可以节约时间 docker-compose up 命令。
可以节省开销
2. docker 解决什么问题
@1.解决虚拟机资源消耗问题。
@2.快速部署
@3.提供一次性环境
@4.提供弹性的云服务
@5.组建微服务架构
1. 安装 docker 引擎
2. 使用 docker
1. 理解 docker 的架构
2. docker 命令
3. 卷的概念
4. 自制镜像并发布
5. docker 网络
6. docker pipework
7. docker 网络端口映射
总结
初玩Docker的更多相关文章
- 用前端姿势玩docker【四】基于docker快速构建webpack的开发与生产环境
目录 用前端姿势玩docker[一]Docker通俗理解常用功能汇总与操作埋坑 用前端姿势玩docker[二]dockerfile定制镜像初体验 用前端姿势玩docker[三]基于nvm的前端环境构建 ...
- 用前端姿势玩docker【五】快速构建中类Unix系统与Windows系统的差异化处理
目录 用前端姿势玩docker[一]Docker通俗理解常用功能汇总与操作埋坑 用前端姿势玩docker[二]dockerfile定制镜像初体验 用前端姿势玩docker[三]基于nvm的前端环境构建 ...
- 【Howie玩docker】-windows下玩docker
Windows下安装toolbox一直没成功,于是投机取巧,用虚拟机手工打造玩docker的方法. 步骤: 安装虚拟机,安装centos 在win下建立共享文件夹,假如是 f:/share 在cent ...
- d4d#9 玩Docker只要浏览器就够了,PWD是个神奇的网站
本文是d4d系列的第9篇,在这一篇中给大家介绍一个学习Docker最为快捷高效的方式,你不需要自己搭建环境,也不用担心把自己的开发环境搞乱,你需要的只是一个浏览器,就可以立即开始学习Docker的常用 ...
- 好久没玩docker了,温下手
好久没玩docker了,温下手 安装 Docker Docker 软件包已经包括在默认的 CentOS-Extras 软件源里.因此想要安装 docker,只需要运行下面的 yum 命令: yum i ...
- 用前端姿势玩docker【二】dockerfile定制镜像初体验
前言 书接上文,关于dockerfile指令的api在此处不做赘述,在此只是记录下注意事项: '示坑以埋之'. 配置指令 FROM dockerfile必须以此开头 一个dockerfile可执行添加 ...
- 【Howie玩docker】-命令行只显示-bash-4.1#
灵雀云上面用docker建了个centOS的实例,首个免费,正好当云主机来玩. 但是,打开有个问题,命令行不显示当前用户和路径. 只显示: -bash-4.1# 简单,配置文件不全而已. 下面对其重新 ...
- 用前端姿势玩docker【一】Docker通俗理解常用功能汇总与操作埋坑
前言 首先一句话表达个人对docker的理解:与传统虚拟技术基于硬件及物理资源的虚拟化相比,Docker更加轻量化,docker为基于操作系统或内核级别的虚拟化,并且提供了从各种机制与操作以满足从开发 ...
- 【Howie玩docker】-Centos 7 docker 启动容器iptables报No chain/target/match by that name
重启了一下服务器,以前能运行的docker网络应用都不能正常开启了. 因为用的是centos7,所以猜测有可能是iptables的问题. docker start 或者run 后总是提示类似的错误: ...
随机推荐
- leetcode 29 两数相除
问题描述 给定两个整数,被除数 dividend 和除数 divisor.将两数相除,要求不使用乘法.除法和 mod 运算符. 返回被除数 dividend 除以除数 divisor 得到的商. 示例 ...
- Starling 环形进度条实现
项目初期想实现这个效果来着,查了很多资料(包括式神的<神奇的滤镜>),也没找到完美的实现方法,,当时时间紧迫,就找了传统的进度条来代替实现. 最近偶然心血来潮,查了各方面资料,终于找到实现 ...
- 每个程序员都可以「懂」一点 Linux
提到 Linux,作为程序员来说一定都不陌生.但如果说到「懂」Linux,可能就没有那么多人有把握了.到底用 Linux 离懂 Linux 有多远?如果决定学习 Linux,应该怎么开始?要学到什么程 ...
- Tomcat源码分析 (四)----- Pipeline和Valve
在 Tomcat源码分析 (二)----- Tomcat整体架构及组件 中我们简单分析了一下Pipeline和Valve,并给出了整体的结构图.而这一节,我们将详细分析Tomcat里面的源码. Val ...
- Docker入门-docker compose的使用
Compose简介 Compose项目是Docker官方的开源项目,负责实现对Docker容器集群的快速编排.其代码目前在https://github.com/docker/compose 上开源. ...
- (18)ASP.NET Core 基于现有数据库创建EF模型(反向工程)
1.简介 Entity Framework Core可通过数据库提供给应用程序的插件访问许多不同的数据库.我们可以通过使用Entity Framework Core构建执行基本数据访问的ASP.NET ...
- Django+Vue前后端分离项目的部署
部署静态文件: 静态文件有两种方式 1:通过django路由访问 2:通过nginx直接访问 方式1: 需要在根目录的URL文件中增加 url(r'^$', TemplateView.as_view( ...
- 【数据结构】8.java源码关于HashMap
1.hashmap的底层数据结构 众所皆知map的底层结构是类似邻接表的结构,但是进入1.8之后,链表模式再一定情况下又会转换为红黑树在JDK8中,当链表长度达到8,并且hash桶容量超过64(MIN ...
- java 局部变量成员变量区别
首先,成员变量可直接初始化(即赋值),也可不赋值,不赋值java按照以下类型自动赋值 局部变量调用前必须初始化(赋值),java不会自动处理 局部变量可以和成员变量重名(但不建议),如果在当前对象的方 ...
- Vue中 父子传值 数据丢失问题
在Vue中,父子组件传值,子组件通过props接收父组件传递的数据 父组件 questionList : 传递数据参数 questionsLists: 传递数据源 子组件 porps 接收父组件方式 ...