Monthly Archives: November 2014

在Docker的container中授权Portal for ArcGIS失败的解决办法

Docker是一中基于传统的Linux container, Namespaces, Control groups等技术发展而来的开源并且超轻量的虚拟化技术。相比传统的虚拟化技术,Docker省去了hypervisor(如VMWare,Hyper-V等)软件以及guest os两层,节约了相当可观的软硬件资源,但又实现了软硬件资源的完全隔离。所以你几乎可以在Docker的虚拟机实例(叫做container)中做传统虚拟机可以办到的任何事情,唯一的区别就是更快。
这次尝试在Docker的container中安装Portal for ArcGIS 10.3软件,以便更快地分发给其他人来使用。软件的静默安装可以利用类似“./Setup -m silent -l yes -a /path/to/portal.ecp -d /opt/arcgis/portal”的命令来实现,但装完启动Portal服务后,仍然提示需要授权,利用./authorizeSoftware –f portal.ecp授权时报错:

Software authorization failed. Please make sure your authorization file is valid and try again.

检查了ecp文件并没有问题。于是查看authorizeSoftware脚本文件,发现有相应的授权日志文件:
image 查看该日志文件发现,是由于缺少so库引起的:
image 安装相应类库后,再次授权成功。
附上在从docker hub中下载的centos:centos6 image启动的container里,安装Portal for ArcGIS 10.3时需要用到的类库列表:
tar, gettext, libpng-1.2.49-1.el6_2.x86_64, freetype-2.3.11-14.el6_3.1.x86_64, libSM-1.2.1-2.el6.x86_64, libXrender-0.9.8-2.1.el6.x86_64, fontconfig-2.8.0-5.el6.x86_64, libXext-1.3.2-2.1.el6.x86_64