Open limerainne opened 5 years ago
If the integration required is actually only one tool can read/execute other tools, just using SSHFS or other remote file systems to enable file read would be sufficient.
Hmm?
Actually, placing actual EDA tool files inside container is not necessary for executing that tool. (See my Dockerfile that just copying tool directory from installer container)
Having tool files inside container benefits only for:
Hence, preparing just common OS image (regarding required library versions) and attaching directories of tools to be executed when running container is the better way to handle integration issue. Also, this concept can avoid duplicated base OS image in virtualization tools not supporting multi layered image, such as Singularity.
Seems that Synopsys already was using way no. 2.
From the description of Synopsys Container,
A Synopsys container has OS libraries and other dependencies that minimize the possibility of failure due to missing dependencies at run-time. This is especially useful for running applications on heterogeneous clients or in a cloud environment.
Many Linux-based Synopsys tools are enabled to access a Synopsys container. (The tools do not reside in the container but can access it.) CentOS or RHEL 7.x is recommended; SUSE SLES 12.x is also supported.
Using a Synopsys container provides the following benefits:
- A consistent, controlled runtime environment
- The correct version of required OS libraries and other dependencies
- The ability to run application on heterogeneous host machines
I'm doomed :)
Because each tool is isolated from others, integration among tools cannot be happened. :(
e.g.
The problem is, containers can communicate each other only with port.. (Sharing tool files through (mounted) user directory seems weird...)
Is there any way to integrate among different tools regarding isolated containers? No way...