windows应用x64和x86运行效率_Windows环境下,如何在Docker里运行SAP UI5应用

5aab820734585a6bc316d46d96b51107.png

本文面向的读者是对Docker技术有一些基本概念,但因为没有测试环境,所以没有动手操作过的朋友们。

最近Jerry因为要做一个新的SAP云产品开发,得搭各种开发环境,其中之一就是Docker.

Jerry之前的文章曾经简单介绍过Docker:

  • 站在巨人肩膀上的牛顿:Kubernetes和SAP Kyma
  • 在Kubernetes上运行SAP UI5应用(上)
  • 在Kubernetes上运行SAP UI5应用(下)

当时给出的例子是,在Ubuntu操作系统下用Docker和Kubernetes运行一个UI5应用。因为我知道ABAP从业者们很多用的还是Windows开发环境,所以本文简单地把我在Windows操作系统下搭建Docker的步骤罗列出来,有兴趣的朋友可以照着做一遍。

这里的Windows特指Windows10.

Windows操作系统使用Docker的前提是要开启Hyper V虚拟技术,在控制面板里把Hyper-V前面的勾选中,重启即可。

3696e48b7ab90505af7312490c08b0b8.png

Docker官网下载Docker For Windows的Community版本:

cb4cd62c906406850e137adc3cda00ad.png

下载下来是一个900多兆的可执行文件:

fc292f77c5f33d16292fed0446464e6d.png

安装后,在右下角任务栏里能看到Docker的图标:

f5c41ba360f9a95db60bc6a6f1ebf742.png

安装默认会把Docker命令行工具docker.exe和容器编排工具docker-compose.exe安装到Program Files的Docker文件夹内:

9f4abed8dba1313ca735567e635a8b25.png

右键可以使用GUI的方式来管理:

a270401f9f4d428057ae7d23c8a994c8.png

但我们一般情况下还是更习惯于使用命令行工具docker.exe对各种容器镜像进行操作。

Jerry已经事先开发好了一个SAP UI5应用,将其部署并运行在Nginx服务器上,并且把该应用和Nginx服务器一起打包在一个容器镜像内,并发布到Docker Hub上了,地址如下:

c37e2e9301cf95c62d861067e77f4f05.png

命令行里直接运行这个镜像即可:

docker run i042416/ui5-nginx:v2.0

a34404ae34de501f043936655ef29a26.png

从命令打印日志能看出,因为我的本地环境没有这个名为i042416/ui5-nginx,标签为v2.0的镜像,因此首先会自动从Docker Hub将镜像下载到本地。

之后使用docker images命令就能看到这个成功下载到本地的镜像了,大小约为109MB:

c5d4947c22c188e182d17ddba4f4ccd6.png

现在使用如下的命令行启动一个容器:

docker run -d -p 1080:80 --name jerrynginx i042416/ui5-nginx:v2.0

各参数含义如下:

-d: 以后台模式启动容器,返回其ID. -p: 将容器内部Nginx开放的端口80映射到宿主机端口1080,这样宿主机即Windows环境下通过浏览器输入localhost:1080访问该容器。

cd7b4ce601d60920b94e883842ed6f6b.png

--name: 给启动的容器实例取一个名字。 执行完命令行之后,浏览器输入如下url,即可访问到运行在容器内的Nginx之上的SAP UI5应用:

191335634db4fe53706d821b9feb7e38.png

docker ps命令,能看到这个处于运行状态的容器实例:

bbe1549579e741b1c3492760ec85b3ba.png

docker inspect jerrynginx能查看明细:

014ede19ab6b02faa93bbd0bec10289e.png

在Windows Docker Desktop的Dashboard菜单里能观察到这个名为jerrynginx,处于后台运行状态下的容器实例:

e722fe88952dad766324a45bceb2d8b9.png

205974fd9c31697b90bc7b1359b9454b.png

该Dashboard提供了针对运行时容器实例的一些基础操作,比如查看日志:

5ad624001f7d1f7dd3e2ee6b7a3c7ed3.png

以及登入容器实例内部,以交互式方式执行命令行等功能。这些功能均对应有docker命令行工具的实现,可以根据喜好来选择使用。

fa5b0bc6ad6f61f7da71acc88e718d65.png

要获取更多Jerry的原创文章,请关注公众号"汪子熙":

b2618378bc89ca4fd014bbe4d925e7e3.png
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值