Question Mark O'Reilly · Jan 31, 2021

Docker- Creating new files, windows- ubuntu

Hi:

I'm using Docker and I don't get how you create new folders in the container.

I'm using Docker on Windows running the iris health community.

I want to create 2 folders on the instance and be adding files to it; I must be missing something as i can't see how this gets easily managed?

May retry just downloading the main community HS edition not through docker but could how to amend the error

"Too many Cores (16) for InterSystems IRIS Community License." for the main installation not through docker- docker has that workaround but not seen one for a non docker installation?

Product version: IRIS 2020.1

Comments

Mark O'Reilly  Jan 31, 2021 to Dmitry Maslennikov

Hi Thanks I already resolved the core issues when using docker.

I don't know how to update files on docked instance as will get an access denied type error

For iris installed locally not through docker as it would be easier to create files it errors with the core issue as haven't seen steps how to solve this on a non docker instance.


*** Recovery started at Sun Jan 31 10:25:11 2021
     Current default directory: c:\intersystems\iris\mgr
 
01/31/21-10:25:11:820 (16268) 2 [Generic.Event] Too many Cores (16) for InterSystems IRIS Community License.

0
Dmitry Maslennikov  Jan 31, 2021 to Mark O'Reilly

Permission denied issues come from a non-root environment configured for the latest few versions of IRIS. And, so, you don't have access to folders, out of access of user irisowner, which runs IRIS inside. This user has access to his home folder - /home/irisowner, and /usr/irissys, where IRIS installed. But you should know that anything created on a filesystem inside the container will disappear after its recreation. And it's how it supposed to work. If you need access from outside the container to created folder, or keep it save even when the container re-created, you have to bind some folder on your local filesystem inside the container, with --volume|-v option (do not forget to give permission to do it in docker settings).

I suppose, there is no way how to run Community Edition directly if you have so many cores, at least, yet. And at the moment, you can use Docker or virtualization, and Docker I would say preferable way.

0
Mark O'Reilly  Jan 31, 2021 to Dmitry Maslennikov

Thanks, now I know there isn't an easy workaround I will just temporarily start my computer using 8 cores instead of 16 in startup when I plan to use it . I had played about with volumes but adding in as well the whole windows file system on it it was just too complex. Thanks

0
Robert Cemper  Feb 1, 2021 to Mark O'Reilly

Good Old VMware Player would allow selecting processors, memory, access rights, ..
Docker is definitely no replacement to it. Just a hack.

0
Robert Cemper  Feb 1, 2021 to Mark O'Reilly

irisowner just has no root access 

So i usually extend my Dockerfile this way:

ARG IMAGE=containers.intersystems.com/.......
FROM $IMAGE
USER root   
RUN echo "root:iris-2101" | chpasswd


and then with su root  I get all rights I need. 
doesn't help to limit CPUs

0
Dmitry Maslennikov  Feb 1, 2021 to Robert Cemper

Why would you even need root in the container in runtime?

Usually, it means, that you doing something wrong.

0
Robert Cemper  Feb 1, 2021 to Dmitry Maslennikov
  • I run apt-get during development
  • I edit various files
  • and I WANT TO HAVE FULL CONTROL over my environment at any level
  • and I hate any limiting in MY code

So, what's wrong with that? 

0
Peter N  Feb 1, 2021 to Robert Cemper

That makes life easier!
THANKS

0
Mark O'Reilly  Feb 1, 2021 to Robert Cemper

My scenario has been:

I have a training work I did and it has File adapters for HL7. It needs to look at an IN and an OUT folder. 

To do the work also access is required to put files into the IN folder and the OUT folder. Without rights it is not possible to create these folders or access it in the docker. 

I'll have  a look at extending the dockerfile to do this. 

On reading I get why you may not want to modify a container at the runtime as it's just for getting the community version running on a non production environment (not even any sort of work environment just my own personal pc) making true use of Docker it doesn't particularly matter just as long as folders and files can be created when looking at stuff. 

0