Running IRIS container on Apple Silicon M1
Good day,
I'm trying to get IRIS to run on a new MacBook with a Apple M1 Pro chip. Local installs did not run, so I switched to docker containers. When I execute following command "docker run --detach --publish 52773:52773 --volume /Users/joost/Docker/iris/data/dur:/dur --env ISC_DATA_DIRECTORY=/dur/iconfig --name iris21 --init store/intersystems/iris-community:2021.1.0.215.0" an image is pulled and a container is created but the IRIS instance does not run. The log gives me the following output:
Comments
The version 2021.1.0.215.0 of Community Edition contains an expired license. You’d need to use 2021.1.0.215.3 instead
Good morning Dmitry,
I've tried that, less output in the logging but same result:
[WARN tini (8)] Tini is not running as PID 1 and isn't registered as a child subreaper.Zombie processes will not be re-parented to Tini, so zombie reaping won't work.To fix the problem, use the -s option or set the environment variable TINI_SUBREAPER to register Tini as a child subreaper, or run Tini as PID 1.[INFO] Starting ISC Agent with command "/home/irisowner/irissys/startISCAgent.sh 2188"Writing status to file: /home/irisowner/irissys/iscagent.statusReading configuration from file: /home/irisowner/irissys/iscagent.confISCAgent[36]: StartingISCAgent[39]: Starting ApplicationServer on *:2188[ERROR] LinuxKit/Docker Desktop supported for development only, never production.[INFO] Starting InterSystems IRIS instance IRIS...[INFO] Initializing IRIS, please wait...An error was encountered while initializing the system.Please see the clone.log and messages.log files in/usr/irissys/mgr/ and /dur/iconfig/mgr.[ERROR] Command "iris start IRIS quietly" exited with status 256[ERROR] See /dur/iconfig/mgr/messages.log for more information[FATAL] Error starting InterSystems IRISJust, to see if it’s not the durable %SYS issue, I would try to run it without durable. And you don’t need —init flag any more
I've now tried: "docker run --detach --publish 52773:52773 --name iris22 store/intersystems/iris-community:2021.1.0.215.3", that also did not start:
[INFO] Starting ISC Agent with command "/home/irisowner/irissys/startISCAgent.sh 2188"Writing status to file: /home/irisowner/irissys/iscagent.statusReading configuration from file: /home/irisowner/irissys/iscagent.confISCAgent[35]: StartingISCAgent[38]: Starting ApplicationServer on *:2188[INFO] Starting InterSystems IRIS instance IRIS...[INFO] This copy of InterSystems IRIS has been licensed for use exclusively by:InterSystems IRIS CommunityCopyright (c) 1986-2021 by InterSystems CorporationAny other use is a violation of your license agreementStarting IRISSign-on inhibited.See messages.log for details.[ERROR] qemu: uncaught target signal 6 (Aborted) - core dumped12/07/21-07:02:01:398 (1029) 0 [Generic.Event] Global buffer setting requires attention. Auto-selected 25% of total memory.12/07/21-07:02:01:519 (1029) 0 [Generic.Event] Allocated 737MB shared memory: 497MB global buffers, 80MB routine buffers12/07/21-07:02:01:570 (1029) 0 [WriteDaemon.UsingWIJFile] Using WIJ file: /usr/irissys/mgr/IRIS.WIJ12/07/21-07:02:01:571 (1029) 0 [WriteDaemon.CreatingNewWIJ] Creating a new WIJ file12/07/21-07:02:01:660 (1029) 0 [WriteDaemon.CreatedNewWIJ] New WIJ file created12/07/21-07:02:01:686 (1029) 0 [Generic.Event] Startup of InterSystems IRIS [IRIS for UNIX (Ubuntu Server LTS for x86-64 Containers) 2021.1 (Build 215.3U) Wed Oct 27 2021 17:38:26 EDT]in ./with mgr: /usr/irissys/mgrwith wij: /usr/irissys/mgr/IRIS.WIJfrom: /usr/irissys/mgr/ OS=[Linux], version=[#1 SMP PREEMPT Mon Nov 8 11:22:26 UTC 2021], release=[5.10.76-linuxkit], machine=[x86_64] nodename=[24b8aa7c9b5a]. numasyncwijbuf: 8, wdwrite_asyncio_max: 64, wijdirectio: on, synctype: 3 System Initialized.12/07/21-07:02:01:694 (1032) 0 [WriteDaemon.Started] Write daemon started.12/07/21-07:02:01:694 (1032) 2 [Generic.Event] create_iotd_pool failed because LKIO_SETUP returned error 3812/07/21-07:02:01:699 (1038) 2 [Generic.Event] create_iotd_pool failed because LKIO_SETUP returned error 3812/07/21-07:02:01:700 (1045) 2 [Generic.Event] create_iotd_pool failed because LKIO_SETUP returned error 3812/07/21-07:02:01:700 (1038) 2 [Generic.Event] create_iotd_pool failed because LKIO_SETUP returned error 38...(repeated 63 times)12/07/21-07:02:01:700 (1038) 1 [Generic.Event] Write daemon asynchronous I/O disabled dueto failure allocating control structures.12/07/21-07:02:01:702 (1045) 2 [Generic.Event] create_iotd_pool failed because LKIO_SETUP returned error 38...(repeated 63 times)12/07/21-07:02:01:701 (1045) 1 [Generic.Event] Write daemon asynchronous I/O disabled dueto failure allocating control structures.12/07/21-07:02:01:703 (1032) 2 [Generic.Event] create_iotd_pool failed because LKIO_SETUP returned error 38...(repeated 63 times)12/07/21-07:02:01:703 (1032) 1 [Generic.Event] Write daemon asynchronous I/O disabled dueto failure allocating control structures.12/07/21-07:02:01:890 (1054) 0 [Database.MountedRW] Mounted database /usr/irissys/mgr/ (SFN 0) read-write.12/07/21-07:02:01:904 (1054) 3 [Generic.Event] Process 1054 (JobType=Interactive job (application mode),Dumpstyle=0,Directory='/usr/irissys/mgr/') caught signal 11. 12/07/21-07:02:01:907 (1054) 3 [Generic.Event] Parent process will clean up and halt12/07/21-07:02:01:907 (1054) 3 [Generic.Event] If core dumps are enabled, a core file will be created by process 1057 in the location specified by the system configuration.[ERROR] See /usr/irissys/mgr/messages.log for more information[FATAL] Error starting InterSystems IRISAhh, did not notice you using x86_64 version, you need arm64 version, and it will be another image
store/intersystems/iris-community-arm64:2021.1.0.215.3
Thanks Dmitry, now it works. Good catch!