一步一步配置Docker并运行SuperMap iExpress

gisanglea 2015-11-27 11:50:47
Docker 是 dotCloud 开源的一个基于 LXC 的高级容器引擎,它的初衷是将各种应用程序和不同的平台上运行,Container发挥类似 VM 的作用,但它启动得更快和需要更少的资源。

图1:Container与虚拟机的区别

Container与虚机的最大不同在于Container并不包含操作系统内核,它与宿主机使用同一个内核,减少了指令模拟的损耗,而且多个Container之间可以共用同一套系统库、应用程序依赖库(如图1所示)。每个Container看起来也像是一个独立的系统(实际上资源的确得到了有效隔离),但它们的公共部分是复用的。Docker提供了如下特性:
在多个机器之间提供便捷的部署策略
提供了应用镜像的自动构建机制。允许开发者从源代码直接打包依赖、工具、库等等。
组件复用。Docker容器可以基于“基础镜像”创建许多个独立的、不同功能的组件,这意味着一次制作的镜像可以再将来的许多项目中不断复用。
共享。有一个公开的镜像仓库(http://index.docker.io),在这里可以发现已有的、成熟的容器,每个人也都可以共享自己的容器。
关于Docker的更详细介绍,请参见如下文章:

《Linux容器虚拟技术及GIS应用前景》
Docker官网(https://www.docker.com/)
Docker中文社区(http://www.docker.org.cn/)
1 Docker怎么安装?

Docker运行在Linux环境中,以Ubuntu为例,在Ubuntu14.04下,简单敲如下命令即可安装Docker:

$ sudo apt-get update
$ sudo apt-get install docker.io
推荐在安装Docker前,更换Ubuntu的软件源为国内软件源(参考:http://mirrors.aliyun.com/help/ubuntu)。

2 Docker怎么使用?

Docker的使用非常简单,在安装好Docker后,简单运行如下命令,即可启动一个14.04版本的ubuntu系统,启动后,光标停在新启动的ubuntu的bash窗口。

$ sudo dockerrun -t -i ubuntu:14.04 /bin/bash
其中:

-t:表示在Container中配置一个终端;
-i:表示在Container内部允许我们使用标准输入(STDIN)进行交互
ubuntu:14.04:标识Ubuntu 14.04镜像
/bin/bash:表示启动Ubuntu后,运行/bin/bash命令
背后的逻辑是,Docker从镜像仓库(http://index.docker.io)按照ubuntu:14.04的标识拉取一个Ubuntu镜像到本地,然后启动Container,并允许交互。

在Docker中,你也可以自己制作镜像,本地运行或上传至Docker注册处。

在国内连接官方镜像仓库(http://index.docker.io)很慢,可以使用国内的镜像仓库替代。docker.cn是国内的一个Docker镜像仓库,每日将 Docker 官方镜像仓库的最新版本同步到国内的服务器。使用国内镜像仓库启动Ubuntu系统,Docker命令可变为:

$ sudo dockerrun -t -i docker.cn/docker/ubuntu:14.04/bin/bash
3 Docker运行iExpress的步骤

Docker的公网镜像仓库并没有iExpress的镜像,所以,Docker运行iExpress之前,需要先手工制作iExpress镜像,然后指定端口运行。步骤如下图所示:



图2:Docker运行iExpress的步骤


更多内容请到http://support.supermap.com.cn/supportblog/Blog/SuperMapiServerJava/tabid/98/EntryId/159/-Docker-SuperMap-iExpress.aspx 了解
...全文
369 回复 打赏 收藏 转发到动态 举报
写回复
用AI写文章
回复
切换为时间正序
请发表友善的回复…
发表回复
内容概要:本文系统研究了基于交替方向乘子法(ADMM)的多主体综合能源系统分布式协同优化方法,旨在实现多个能源主体之间的高效、隐私保护的能量协同管理。通过建立各主体的局部优化模型,并引入一致性约束条件,利用ADMM算法将集中式优化问题分解为多个分布式子问题进行迭代求解,从而在保证各主体数据隐私的同时达成全局协同优化目标。研究涵盖了模型构建、算法实现、收敛性分析及数值仿真全过程,并提供了完整的Matlab代码实现,有效复现了相关学术成果,具有较强的可验证性与可拓展性。; 适合人群:具备一定数学建模能力与优化理论基础,熟悉Matlab编程,从事综合能源系统、分布式优化算法、电力系统调度等相关方向研究的研究生、科研人员及工程技术人员。; 使用场景及目标:① 掌握ADMM算法在多主体能源系统协同优化中的建模与实现方法;② 构建支持隐私保护的分布式能源调度系统;③ 利用开源代码开展算法改进、性能测试或应用于实际系统的二次开发与科研论文复现; 阅读建议:建议结合凸优化与分布式计算的基础知识,深入理解增广拉格朗日函数构造、对偶更新与收敛判据的设计原理,在代码调试过程中重点关注惩罚参数选取、变量分裂策略及通信机制的实现细节,以全面掌握算法的核心机制与工程应用要点。

1,185

社区成员

发帖
与我相关
我的任务
社区描述
Docker是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的Linux 机器上,也可以实现虚拟化。
社区管理员
  • Docker
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧