Ignition Docker Image healthy but not running

Hi,

I am having trouble setting up ignitions docker image on my RPi 4.

I am running docker with portainer, when i run the docker image it wont switch over to the running status and just sits on heathy.

I have other docker images running on the Pi, so I believe my issue is related to the igntion image.

Any tips would be appreiciated thanks.

update- seems to be running but on port 9088 but status still just showing healthy


jpmac@raspberrypi:~ $ sudo docker run --privileged -d -p 9098:8088 --name ignition-test inductiveautomation/ignition:8.1.42 -n docker -test -a localhost -h 9088 -s 9043
-------------------------------------LOGs
pmac@raspberrypi:~ $ sudo docker logs ignition-test
init | 2024/07/22 06:33:03 | Creating init.properties file
init | 2024/07/22 06:33:03 | Creating gateway.xml
init | 2024/07/22 06:33:03 | Writing Container Init File to /usr/local/bin/ignition/data/.container-init.conf
init | 2024/07/22 06:33:03 | Starting Ignition gateway
wrapper | 2024/07/22 06:33:03 | --> Wrapper Started as Console
wrapper | 2024/07/22 06:33:03 | Java Service Wrapper Standard Edition 64-bit 3.5.42
wrapper | 2024/07/22 06:33:03 | Copyright (C) 1999-2020 Tanuki Software, Ltd. All Rights Reserved.
wrapper | 2024/07/22 06:33:03 | http://wrapper.tanukisoftware.com
wrapper | 2024/07/22 06:33:03 | Licensed to Inductive Automation for Inductive Automation
wrapper | 2024/07/22 06:33:03 |
wrapper | 2024/07/22 06:33:04 | Launching a JVM...
jvm 1 | 2024/07/22 06:33:04 | WrapperManager: Initializing...
jvm 1 | 2024/07/22 06:33:10 | I [g.CompositeClassRejectListFilter] [06:33:10.783]: Initialization performed successfully
jvm 1 | 2024/07/22 06:33:10 | I [g.CompositeClassRejectListFilter] [06:33:10.794]: JVM-wide ObjectInputFilter set up successfully
jvm 1 | 2024/07/22 06:33:10 | I [g.CompositeClassRejectListFilter] [06:33:10.796]: Platform serialFilter has 88 pattern(s)
jvm 1 | 2024/07/22 06:33:10 | W [WebResourceManagerImpl ] [06:33:10.907]: Unable to read "gateway.metroKeystoreAlias" gateway.xml property. Assuming metro keystore alias is: metro-key
jvm 1 | 2024/07/22 06:33:12 | I [g.WebServerManager ] [06:33:12.476]: Starting setup
jvm 1 | 2024/07/22 06:33:12 | I [g.WebServerManager ] [06:33:12.508]: gateway.forceSecureRedirect property is not set. Defaulting to false
jvm 1 | 2024/07/22 06:33:12 | I [g.WebServerManager ] [06:33:12.620]: gateway.includedCipherSuites property is not set. Defaulting to
jvm 1 | 2024/07/22 06:33:12 | I [g.WebServerManager ] [06:33:12.641]: gateway.excludedCipherSuites property is not set. Defaulting to
jvm 1 | 2024/07/22 06:33:12 | I [g.WebServerManager ] [06:33:12.664]: gateway.publicAddress.autoDetect property is not set. Defaulting to true
jvm 1 | 2024/07/22 06:33:13 | I [g.WebServerManager ] [06:33:13.691]: gateway.publicAddress.address property is not set. Defaulting to
jvm 1 | 2024/07/22 06:33:14 | I [g.WebServerManager ] [06:33:13.955]: gateway.publicAddress.httpPort property is not set. Defaulting to
jvm 1 | 2024/07/22 06:33:14 | I [g.WebServerManager ] [06:33:13.976]: gateway.publicAddress.httpsPort property is not set. Defaulting to
jvm 1 | 2024/07/22 06:33:14 | I [g.WebServerManager ] [06:33:13.988]: gateway.useProxyForwardedHeader property is not set. Defaulting to false
jvm 1 | 2024/07/22 06:33:14 | I [g.WebServerManager ] [06:33:14.001]: gateway.resolveHostNames property is not set. Defaulting to false
jvm 1 | 2024/07/22 06:33:14 | I [g.WebServerManager ] [06:33:14.015]: Setup complete
jvm 1 | 2024/07/22 06:33:14 | I [Commissioning ] [06:33:14.375]: Resources needing commissioning: eula,authSetup,activated
jvm 1 | 2024/07/22 06:33:14 | I [Commissioning ] [06:33:14.376]: Commissioning State updated from commissioning to needs_commissioning
jvm 1 | 2024/07/22 06:33:14 | I [g.WebServerManager ] [06:33:14.758]: Starting up
jvm 1 | 2024/07/22 06:33:15 | I [C.SecureRandomProvider ] [06:33:15.398]: Secure random seed generated in 6ms
jvm 1 | 2024/07/22 06:33:15 | I [o.e.j.s.Server ] [06:33:15.408]: jetty-10.0.20; built: 2024-01-29T20:46:45.278Z; git: 3a745c71c23682146f262b99f4ddc4c1bc41630c; jvm 17.0.11+9-LTS
jvm 1 | 2024/07/22 06:33:16 | W [o.e.j.u.DeprecationWarning ] [06:33:16.125]: Using @Deprecated Class org.eclipse.jetty.servlet.listener.ELContextCleaner
jvm 1 | 2024/07/22 06:33:16 | I [o.e.j.s.s.DefaultSessionIdManager] [06:33:16.160]: Session workerName=node0
jvm 1 | 2024/07/22 06:33:16 | I [o.e.j.s.h.ContextHandler ] [06:33:16.394]: Started o.e.j.w.WebAppContext@1cbac3ac{Commissioning,/,file:///usr/local/bin/ignition/webserver/webapps/commissioning/,AVAILABLE}
jvm 1 | 2024/07/22 06:33:16 | I [o.e.j.s.AbstractConnector ] [06:33:16.454]: Started ServerConnector@5616aafc{HTTP/1.1, (http/1.1)}{0.0.0.0:8088}
jvm 1 | 2024/07/22 06:33:16 | I [o.e.j.s.Server ] [06:33:16.481]: Started Server@384fa1d7{STARTING}[10.0.20,sto=10000] @12385ms

What makes you think it's not running? That looks like the normal startup logs of a brand new gateway that's waiting in the commissioning phase, where you accept the EULA and set up the initial user and password. Can you open the web interface on your selected port?

1 Like

Whoopsie

3 Likes

thanks Kevin!

Not sure if its a quirk with Portainer or Docker , but the status is showing as "healthy" still and not running, where my other containers are "running". The gateway is running fine now I messed up port numbering.

what does this portion of the command actually do?
"-n docker-test -a localhost -h 9088 -s 9043"

Those arguments provide a manual address that clients/designers/sessions will be given. Because programs running inside Docker are (internally) running on different ports than they (externally) use, you have to pass in overrides so we have the right address/port to use in the gateway web UI, when providing master/backup addresses to connected systems, and so on.

1 Like

Hi,

Not sure what the issue is but as soon as I try other ports the container wont work.

sudo docker run -d -p 8089:8089 --name ignition-test inductiveautomation/ignition:8.1.42 -n docker-test -a localhost -h 8089 -s 9044

Similarly with my timescaleDB docker image when i try setup on 5433 ignition will not connect, but when its on 5432 is connects fine.

Because internally ignition still uses 8088. You need to provide a mapping, with the port you'll connect to : the port it uses internally, so 8089:8088.

awesome thank you for the claification.