Using Docker Containers for ArcGIS Server, Portal and Web Adapter

7350
4
12-17-2015 02:04 PM
AndrewHansford
Occasional Contributor II

Hi All,

I was wondering if anyone has any success using ArcGIS Server and Portal in a docker container?

We are currently attempting to use ArcGIS Web Adapter Java Linux in a Docker Container, our ArcGIS server instances is on a Windows 2012 server:

Some Spec Info:

  • The host is Ubuntu 14.04.1 LTS
    • And I have tried these official Apache Docker containers:
    • #FROM tomcat:7.0.65-jre7
    • #FROM tomcat:latest
    • FROM tomcat:8-jre8
  • Configuration - Container is up and running with Port Mapped from the host to the container on 9780 -> 8080

  • Tomcat instances - Can connect happily using Lynx on the Host -> localhost:9780 and get the config pages.
    • Config fails when all the information entered - Message: Asking to check access to the arcgis server.
    • our architect can access the arcgis server url fine by running the wget in the container.
  • Additionally, the architect has copied the script files to the container - it connects to the local tomcat 8080 ok and fails on the connection to arcgis server.
  • The architect has tried to specify a proxy in the -g parameter to see what happens, there is no outgoing connections from the container at all.
  • We have tried tomcat/jdk8 and tomcat7/jdk7

The future for our implementation is to move away from Windows Servers for ArcGIS.

Any suggestions on the Docker Container or any information for a full implementation for Server would be awesome

Many thanks

Andrew

4 Replies
DerekLaw
Esri Esteemed Contributor

Hi Andrew,

There was a similar thread on this topic where another user posted a sample,

Deploying ArcGIS Server using Docker

And there is also an item on the ArcGIS Ideas site,

http://ideas.arcgis.com/ideaView?id=087E0000000blPSIAY

Hope this helps,

0 Kudos
yunhan
by
New Contributor

I have just tried to deploying multiple machine ArcGIS Server site on Docker last month. Here are my deployment steps:

(1) I use vmware created three VMs。One is manager host, the others are node hosts.

(2) I installed docker swarm and created a cluster between these VMs. The doc how install swarm is here:

Create a swarm for development

(3) I used a bridge network to accomplish communicate with each docker containers on multiple hosts. The network between docker containers which can across multiple hosts is very important. There are many third software,for example: wave,pipework,open vswitch etc. This is my network architecture diagram.

(4) Create ArcGIS  Server base image. I used the official centos 7 image,and installed ArcGIS Server manually.

(5) Deploying multiple machine site by docker.

    All of these steps,I think the network is the most important.The ArcGIS Server containers must can communicate with each other directly, not use port mapped from host. Like in the example above, container A(IP:192.168.10.2) can ping other containers(IP:192.168.11.2 and IP:192.168.12.2).

   Please forgive me for my bad english.

   I hope this can help you.

AndrewHansford
Occasional Contributor II

Hi There,

Thanks for the information, i will forward this on to our SA for testing

Cheers

Andrew

0 Kudos
BrianWilson
Occasional Contributor II

ArcGIS Server 10.5 appears to be saving state somewhere outside of "config-store" and "directories". I have set up those directories to be persistent, so they are saved across restarts. That means that every time I start a docker instance, it should come up with the same site. It does not.

So I am thinking there is another file or folder outside config-store that is used to persist settings.

Do you know what it is?

Otherwise I have ArcGIS Server 10.5 working fine in Docker, I have published the work so far at http://github.com/geo-ceg/docker-arcgis-server

Brian Wilson, GISP

0 Kudos