你掉的是这个免费服务器,还是这个 Docker 实验平台
小孩子才做选择,成年人全都要。那么我们现在就来看看如何获得一台免费的 8 核 4G 公网 Docker 实验平台服务器。
Play With Docker
直接打开 https://labs.play-with-docker.com/ 即可访问 Play With Docker 平台。 注册一个 DockerHub 账号便可以访问这个站点,轻松地获得一台 8 核 4G 的公网服务器。 接下来我们就来了解一下如何使用这台服务器进行一些 Docker 的操作。
部署 Nginx
本示例,我们部署一个 nginx ,并且通过将服务公开在一个公网地址上。
登录并创建实例
这一步非常简单,不多说明,成功创建完成之后便可以看到如下所示的界面。
拉取镜像
运行以下命令,便可以拉取最新的 nginx 镜像。
docker pull nginx |
---|
拉取速度非常快速,因为这个实例节点是部署在国外的,因此无需设置镜像也可以极速下载。
启动 nginx 容器
运行以下命令,便可以启动一个 nginx container
docker run --name nginx-test -p 8080:80 -d nginx |
---|
公网访问
部署完成之后,界面上会自动出现一个新的按钮,表示当前可以已经部署成功的公网地址,如下图所示:
点击按钮便可以在浏览器中访问刚刚部署成功的 nginx 服务。 如果生成按钮,也可以点击 “OPEN PORT” 来选择开放的端口。
部署火车票售票系统
如果只是部署一个简单的 nginx 显然不够快乐。因此,我来部署一个稍微复杂一点的系统。 这是一个由 7 个容器构成的演示系统,参考《火车票售票系统 - 部署》的说明,运行以下命令来启动一个模拟的火车票售票系统:
git clone https://github.com/newbe36524/Newbe.Claptrap.Examples.git cd Newbe.Claptrap.Examples/src/Newbe.Claptrap.Ticketing docker-compose build cd Docker/LocalClusterMongodb docker-compose up -d |
---|
脚本运行完成之后,通过 “OPEN PORT” 打开 10080 端口,便可以查看刚刚部署完成的火车票模拟售票系统。
最后但是最重要!
最近作者正在构建以反应式
、Actor模式
和事件溯源
为理论基础的一套服务端开发框架。希望为开发者提供能够便于开发出 “分布式”、“可水平扩展”、“可测试性高” 的应用系统 ——Newbe.Claptrap
本篇文章是该框架的一篇技术选文,属于技术构成的一部分。如果读者对该内容感兴趣,欢迎转发、评论、收藏文章以及项目。您的支持是促进项目成功的关键。
联系方式:
GitHub 项目地址:https://github.com/newbe36524/Newbe.Claptrap Gitee 项目地址:https://gitee.com/yks/Newbe.Claptrap
您当前查看的是先行发布于 www.newbe.pro 上的博客文章,实际开发文档随版本而迭代。若要查看最新的开发文档,需要移步 claptrap.newbe.pro。
- 本文作者: newbe36524
- 本文链接: https://www.newbe.pro/Newbe.Claptrap/Play-With-Docker/
- 版权声明: 本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法
- Mono for Android 实现高效的导航
- MyBatis版本升级导致OffsetDateTime入参解析异常问题复盘
- elasticSearch学习(二)
- 146. LRU缓存机制 Krains 2020-08-05 12:50:28 链表
- 337. 打家劫舍 III Krains 2020-08-05 10:18:45 动态规划
- 58道Vue常见面试题集锦,涵盖入门到精通,自测 Vue 掌握程度
- 记一次Linux计划任务cron无结果的排查过程
- 一文学会使用 CSS 中的 min(), max(), clamp() 以及它们的使用场景用例
- 5 个 JS 数组技巧可提高你的开发技能
- 一个有意思的方案:不借助后台和 JS ,只用 CSS 让一个列表编号倒序,你会怎么做?
- 关于MySQL LOAD DATA特性的利用与思考
- NHibernate 缓存
- 渗透测试 | 突破前端JS加密限制
- 使用 Task 简化异步编程
- Task 编程中的异常处理