云端干货|如何使用Docker制作镜像
上一讲,我们引入了Docker的学习环境,并且运行了一个 “Hello world”。本期内容,我们将开始制作镜像,并且把它运行起来。
基于云原生开发的云资源优化服务 SpotMax 无缝集成了k8s、Docker等工具,可便捷实现容器的管理与发布,并实现用云降本增效。==>> 戳链接了解 SpotMax
准备代码
首先我们需要准备一份简单的代码。前往SpotMax文档中心(Welcome - Spotmax文档中心),打开学习文档,我们已经为你准备好了代码。它是一个简单的http服务代码,采用Node app.js的语法:
·如果你的本地有Node环境,也可以运行测试一下 note app .js。 在这里,你需要将它存到 app.js这个文件里面:
·curl一下,它就会打开一个端口8080,并显示你的机器名:
·在下方我们可以看到“安装Node环境”,你可以根据自己的需求,选择是否安装这个环境:
现在,让我们回到上述的页面,复制我们为你提供的代码,打开Docker Playground开始玩耍~
制作镜像与运行
在Docker Playground中,我们touch一个代码,把它放在 app.js文件里面,将上述复制的代码粘贴过来,保存、退出。如此,代码就准备好了:
因为在这里是Node的环境,我们要需要进行打包。在文档中心找到“构建与运行你的第一个应用”,复制代码:
并放在Dockerfile中,保存、退出。
现在,我们已经准备好了Docker file,可以开始运行指令了。我们要制作一些自己的Docker build,在文档中心复制粘贴代码docker build-t:
这里我们起个名字叫Kubia。请注意kubia后面需要有一点“.”这个点是代表“当前目录”。因为“当前目录”下面包括Dockerfile,以及 app.js。
如下图所示,现在已经成功完成build,将我们这个 app.js做成了一个镜像。
完成后,让我们来看一下自己的镜像长什么样子?
在文档中心复制docker images命令,粘贴到终端并运行。
如下便可见镜像:
现在,我们已经build好了Kubia。接下来我们去运行一下容器。
在文档中心找到下图所示的docker run指令,粘贴到终端并运行:
接下来,输入docker ps,我们就可以看到刚才制作的镜像 app.js已经开始运行了,同时,可以看到node环境也已经被打包进去、端口已经打开:
现在我们来试着访问一下端口。输入curl http://local host:8080/ 并运行——可以看到成功显示了You’ve hit 96d8883f7c15 (即当前机器的Host)。
一个简单的镜像就制作并运行完成啦!
想要了解更多?“扫码关注“云上说禅”吧

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
超强实时跟踪系统首次开源!支持跨镜头、多类别、小目标跟踪!
在琳琅满目的视觉应用中,对车辆、行人、飞行器等快速移动的物体进行实时跟踪及分析,可以说是突破安防、自动驾驶、智慧城市等炙手可热行业的利器。 但要实现又快又准的持续跟踪,往往面临被检目标多、相互遮挡、图像扭曲变形、背景杂乱、视角差异大、目标小且运动速度快等产业难题。 ▲视频引用公开数据集[1][2][3][4] 那如何快速获得这个能力呢?今天给大家介绍的不仅仅是单独的智能视觉算法,而是一整套多功能多场景的跟踪系统——PP-Tracking。 它融合了目标检测、行人重识别、轨迹融合等核心能力,并针对性地优化和解决上述实际业务的痛点难点,提供行人车辆跟踪、跨镜头跟踪、多类别跟踪、小目标跟踪及流量计数等能力与产业应用,还支持可视化界面开发,让你快速上手、迅速落地。 ⭐项目链接 ⭐ https://github.com/PaddlePaddle/paddledetection 想了解这套超强目标跟踪系统的详细结构、优势亮点及使用方法?下面带大家来快速领略下。 功能丰富效果佳 PP-Tracking 内置 DeepSORT[6]、JDE[7]与 FairMOT[8]三种主流高精度多目标跟...
- 下一篇
分布式锁及其实现
对于Java中的锁大家肯定都很熟悉,在Java中synchronized关键字和ReentrantLock可重入锁在我们的代码中是经常见的,一般我们用其在多线程环境中控制对资源的并发访问,但是随着分布式的快速发展,本地的加锁往往不能满足我们的需要,在我们的分布式环境中上面加锁的方法就会失去作用。为了在分布式环境中也能实现本地锁的效果,人们提出了分布式锁的概念。 分布式锁 分布式锁场景 一般需要使用分布式锁的场景如下: 效率:使用分布式锁可以避免不同节点重复相同的工作,比如避免重复执行定时任务等; 正确性:使用分布式锁同样可以避免破坏数据正确性,如果两个节点在同一条数据上面操作,可能会出现并发问题。 分布式锁特点 一个完善的分布式锁需要满足以下特点: 互斥性:互斥是所得基本特性,分布式锁需要按需求保证线程或节点级别的互斥。; 可重入性:同一个节点或同一个线程获取锁,可以再次重入获取这个锁; 锁超时:支持锁超时释放,防止某个节点不可用后,持有的锁无法释放; 高效性:加锁和解锁的效率高,可以支持高并发; 高可用:需要有高可用机制预防锁服务不可用的情况,如增加降级; 阻塞性:支持阻塞获取锁和非...
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- CentOS8编译安装MySQL8.0.19
- Docker快速安装Oracle11G,搭建oracle11g学习环境
- Eclipse初始化配置,告别卡顿、闪退、编译时间过长
- Springboot2将连接池hikari替换为druid,体验最强大的数据库连接池
- CentOS8安装MyCat,轻松搞定数据库的读写分离、垂直分库、水平分库
- Windows10,CentOS7,CentOS8安装Nodejs环境
- CentOS7设置SWAP分区,小内存服务器的救世主
- CentOS7安装Docker,走上虚拟化容器引擎之路
- 设置Eclipse缩进为4个空格,增强代码规范
- CentOS7,8上快速安装Gitea,搭建Git服务器