Docker介绍:
(1)什么是Docker?
Docker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的Linux机器上,也可以实现虚拟化,容器是完全使用沙箱机制,相互之间不会有任何接口;
由Docker客户端、Docker Daemon守护进程、Docker Image镜像、DockerContainer容器组成。
(2)Docker的应用场景
web应用的自动化打包和发布;
自动化测试和持续集成、发布;
在服务型环境中部署和调整数据库或其他的后台应用;
从头编译或者扩展现有的OpenShift或Cloud Foundry平台来搭建自己的PaaS环境
(3)传统虚拟机化与容器技术对比

docker的安装
1台7.3虚拟机和真机
保证虚拟机可以上网,网关设成真机ip,真机的ip_forward=1 防火墙地址伪装功能开启。
server1中用阿里云的yum源镜像,然后安装,docker-ce,(将CentOS7-Base.repo 和docker-ce.repo放到/etc/yum.repo下)

将CentOS7中的gpgcheck都改成0,docker-ce中不用改

yum repolist

yum install docker-ce -y

打开docker服务
也可以设置开机启动

在安装好docker后,系统会为docker容器分配一个ip,利用ip addr中查看docker0的ip
这个IP是为了容器通信用的

查看docker的版本信息
docker version

查看docker宿主机(server1)的信息
docker info


接下来要基于镜像运行容器
管理docker常用的基础命令

掌握这些命令是最基本的,然后才能操作docker
容器的运行是基于镜像的,这里我使用ubuntu的镜像来举例
docker load -i ubuntu.tar 导入镜像
docker run -it --name vm1 ubuntu 创建容器(以ubuntu镜像为模板)
docker ps 查看容器状态
docker ps -a 查看容器状态(包括不活跃的容器)
docker attach vm1 连接容器
docker top vm1 查看容器进程
docker logs vm1 查看容器指令输出 -f 参数可以实时查看
docker inspect vm1 查看容器详情
docker stats vm1 查看容器资源使用率
docker diff vm1 查看容器修改
docker stop vm1 停止容器
docker start vm1 启动容器
docker kill vm1 强制干掉容器
docker restart vm1 重启容器
docker pause/unpause vm1 暂停/恢复容器
docker rm vm1 删除容器

镜像的导入和容器的使用
说白了也就是基于镜像拉起一个容器,其实真实的服务是封装在镜像中的,不过拉起一个容器就可以使用服务了
容器类似于一个虚拟机,基于镜像拉起一个容器,就相当于部署了一个服务,快速高效
注意:所有的镜像都可以到官网去下载,为了方便起见,直接使用我下载好的
接下来举几个例子

实例一:利用容器简单搭建一个2048小游戏
利用docker命令导入镜像game2048.tar docker load -i game2048.tar

查看镜像信息
docker images

创建容器vm1,并运行
有镜像才有容器,基于镜像把容器运行起来,容器是基于镜像的
docker run -d -p 80:80 --name vm1 game2048

上面命令的功能是创建一个名为vm1的容器,并将本机(server1宿主机)80端口映射到容器的80端口
通过本机80端口访问容器内部的80端口上运行的服务
运行容器并打入后台,这个容器是基于game2048这个镜像运行的

参数 功能
-d 打入后台
-p 端口映射
- -name 指定容器的名字

这里要提到docker的端口映射
我们使用以下命令可以看到在创建容器时有很多的参数,其中关于端口的参数有【-p】与【-P】

当容器中运行一些网络应用,要让外部访问这些应用时,可以通过-p或-P参数来指定端口映射。
当使用-P(大写P)标记时,Docker会随机映射一个端口到内部容器开放的网络端口(端口范围在Linux系统使用的端口之外,一般都过万)
当使用-p(小写p)可以指定要映射的端口,并且在一个指定的端口上只可以绑定一个容器。
支持的格式有:IP:HostPort:ContainerPort | IP::ContainerPort | HostPort:ContainerPort

查看容器运行状态,看端口是否开启
docker ps

查看容器信息
docker inspect vm1

在真机浏览器访问server1的ip,前提是只要server1的80端口没有被占用,这样就可以通过server1访问容器vm1的80端口
输入server1的ip:172.25.15.1
可以看到2048的游戏就出来了

可以看出:通过运行容器,2048游戏就这样轻松上线,前提只要有镜像,拉起一个容器来应用就非常的简单
其实当我们执行完【docker run】命令以后就已经完成了上线,后续的操作也只是为了查看相关信息而已
这样看来,我们上线一个应用就只用了两步,非常方便,这也是为什么如今docker这么火爆的原因

docker安装过程 和部署2048小游戏相关推荐

  1. Docker(3)具体的安装部署过程和一些简单应用(2048小游戏,nginx,ubuntu)

    1.实验环境 一台rhel7.3的虚拟机server1和一台rhel7.3的物理机 主机信息 作用 server1(172.25.70.1) 搭建docker 物理机(172.25.70.250) 测 ...

  2. 安装Docker,在本机上跑一个‘2048’小游戏(脉冲云在线体验)

    安装Docker,在本机上跑一个'2048'小游戏 脉冲云–让软件开发效率提升十倍.在线免费体验   下面的步骤是在本机上运行的,也可以免费在脉冲云官网上部署一个在线的'2048'小游戏体验一下. 1 ...

  3. linux安装2048游戏,如何在CentOS上安装一个2048小游戏

    如何在centos上安装一个2048小游戏 最近在学习CentOS系统,就琢磨着玩点什么,然后我看到有人在玩2048小游戏,所有我就在想,为啥不装一个2048小游戏搞一下嘞,于是乎,我就开始工作啦 由 ...

  4. ​.NET手撸2048小游戏

    前言 2048是一款益智小游戏,得益于其规则简单,又和 2的倍数有关,因此广为人知,特别是广受程序员的喜爱. 本文将再次使用我自制的"准游戏引擎" FlysEngine,从空白窗口 ...

  5. c#小游戏_.NET手撸2048小游戏

    前言 2048是一款益智小游戏,得益于其规则简单,又和 2的倍数有关,因此广为人知,特别是广受程序员的喜爱. 本文将再次使用我自制的"准游戏引擎" FlysEngine,从空白窗口 ...

  6. 2048小游戏----嵌入式系统实训

    嵌入式系统设计实训 引言 本次嵌入式系统实训式设计一款2048小游戏,在Linux编译环境下及ARM Cortex-A8开发平台下的,实现2048游戏的开发,且对其进行性能分析.<2048> ...

  7. 一文梳理2048小游戏从开发到上云全流程

    摘要:本文主要以Cocos2d Web项目2048小游戏的开发上云为例,介绍DevOps开发实践的全流程 前言 本文主要以Cocos2d Web项目2048小游戏的开发上云为例,介绍DevOps开发实 ...

  8. CSDN官方2048小游戏通关秘诀及复现

    目录 一.前言 二.通关小诀窍 1.游戏规则介绍 2.基于规则的一种相对全局最优方法 三.游戏复现 1.编程环境介绍 2.tkinter介绍 3.编程复现游戏效果 四.尾声及附录代码 1.尾声 2.附 ...

  9. python游戏代码五子棋_用20行Python代码实现2048小游戏,你会吗?

    前些天在b站上看到有个大佬用c写了一个2048小游戏,我便一下来了兴趣.心想着,我貌似也能用Python来整一波,话不多说,直接开搞. 2048的游戏规则: 2048游戏总共有16个格子,初始时会有两 ...

最新文章

  1. Go 学习笔记(70)— Go 变量声明、变量初始化、值类型变量赋值、指针类型变量赋值
  2. 习题7-1 选择法排序 (20 分)
  3. 把base64转为blob
  4. 数据结构探险——队列篇
  5. Qt学习笔记-自绘时钟
  6. 百度之星资格赛 J题 百度的新大厦
  7. h5 html被缓存,【Web前端问题】html5离线缓存,不能被缓存问题
  8. vim 系统剪切板及 ubuntu 无法使用 vim 系统剪贴板(或 :reg 无+号寄存器)
  9. Win10如何彻底删除360的办法
  10. 智慧物流园区供应链管理系统解决方案:数智化供应链赋能物流运输行业供应链新模式
  11. Latex 字体调整-斜体-下划线-加粗-罗马数字
  12. 逍遥棋牌怎么样,是不是骗人的?
  13. login shell和non-login shell
  14. R语言中的函数1:outer(张量积)
  15. 南理工硕士论文latex模板
  16. 高定价预计将降低iPhone XS的需求
  17. STM32F4xx时钟配置的三种方法
  18. spring cache ttl 过期
  19. html制作菱锥旋转,怎样用几何画板实现三棱锥的旋转
  20. Allegro输出DXF文件操作指导

热门文章

  1. 吴军,阅读与写作,18,如何写好简历
  2. pytorch 源_Windows10+CUDA 10.1.0+pytorch安装过程
  3. 10w 行级别Excel数据量导入优化记录
  4. 手机的“隔空打印”功能了解一下,不需要电脑也可以打印
  5. IP-Guard安全U盘使用说明书
  6. MATLAB处理信号得到频谱、相谱、功率谱
  7. 【ACM-ICPC 2018 南京赛区网络预赛 E】AC Challenge
  8. 吴金贵有望二次助教国足 成顶替刘春明热门人选
  9. Spring Boot 下 zookeeper搭配dubbo 服务注册与发现 搭建
  10. 从零玩转jQuery之项目开发(QQ音乐播放器)