# Docker compose user permissions on mounted volumes using Mac as host

**URL:** <https://forum.inductiveautomation.com/t/docker-compose-user-permissions-on-mounted-volumes-using-mac-as-host/110169>\
**Category:** Ignition Early Access\
**Tags:** docker\
**Created:** [August 26, 2025, 9:00am UTC](https://forum.inductiveautomation.com/t/docker-compose-user-permissions-on-mounted-volumes-using-mac-as-host/110169 "2025-08-26T09:00:26Z")\
**Posts on this page:** 4\
**Page:** 1

<div class="post-metadata">

**Author:** ![Patrick\_Weir](https://avatars.discourse-cdn.com/v4/letter/p/c57346/32.png) [@Patrick\_Weir](https://forum.inductiveautomation.com/u/Patrick_Weir)\
**Post date:** [August 26, 2025, 9:00am UTC](https://forum.inductiveautomation.com/t/docker-compose-user-permissions-on-mounted-volumes-using-mac-as-host/110169/1 "2025-08-26T09:00:26Z")

</div>

Hi all  
Anyone able to help with an issue which I’ve stumbled across.  
I’m running docker on a mac and using the compose file provided by ThirdGen88 [GitHub - thirdgen88/ignition-examples: Ignition Examples with Docker Compose](https://github.com/thirdgen88/ignition-examples/tree/main)

Error when spinning up is:  
ign-gw-1 | jvm 1 | 2025/08/26 01:50:51 | E [c.i.i.g.r.ResourceCollectionFileTree] [01:50:51.602]: Unable to create resource dir: /usr/local/bin/ignition/data/projects/.resources

ign-gw-1 | jvm 1 | 2025/08/26 01:50:51 | E [c.i.i.g.r.ResourceCollectionFileTree] [01:50:51.602]: Unable to create resource dir: /usr/local/bin/ignition/data/projects/.resources

ign-gw-1 | jvm 1 | 2025/08/26 01:50:51 | E [IgnitionGateway] [01:50:51.603]: Error during context startup.

ign-gw-1 | jvm 1 | 2025/08/26 01:50:51 | java.lang.IllegalStateException: unable to create resource dir: /usr/local/bin/ignition/data/projects/.resources

I’ve tried adding UID:GUID 2003:2003 and user “0:0”, but still to no avail.  
I feel it may be something to do with mounting the directory, as docker on a mac doesnt mount on the host /var/lib/docker/volumes/. as it does on linux, which is normal behavior - mac uses a vm for the mounts..

Any suggestions?

---

<div class="post-metadata">

**Author:** ![paul-griffith](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/paul-griffith/32/37249_2.png) [@paul-griffith](https://forum.inductiveautomation.com/u/paul-griffith)\
**Post date:** [August 26, 2025, 3:47pm UTC](https://forum.inductiveautomation.com/t/docker-compose-user-permissions-on-mounted-volumes-using-mac-as-host/110169/2 "2025-08-26T15:47:28Z")

</div>

What Ignition version are you trying to start up, specifically?

---

<div class="post-metadata">

**Author:** ![Patrick\_Weir](https://avatars.discourse-cdn.com/v4/letter/p/c57346/32.png) [@Patrick\_Weir](https://forum.inductiveautomation.com/u/Patrick_Weir)\
**Post date:** [August 26, 2025, 7:42pm UTC](https://forum.inductiveautomation.com/t/docker-compose-user-permissions-on-mounted-volumes-using-mac-as-host/110169/3 "2025-08-26T19:42:18Z")

</div>

soz, forgot to mention it:  
8.3.0 Beta4

I’ve managed to spin it up, but needed to add user: “0:0” (root) in my compose file. Problem is mac doesn’t external mount volumes on the host file system, but runs docker containers in a virtual machine, and it appears as if root creates necessary directories on the build, but the ignition user lacks permission to create files with in the directory.

The reason why it failed before-hand when I added root was because the fail happened before getting to adding root, and failed asociating UID + GID - I subsequently removed the UID + GID additions to my compose file, and only added root - but surely there must be a better way?

---

<div class="post-metadata">

**Author:** ![anjoroge](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/anjoroge/32/6698_2.png) [@anjoroge](https://forum.inductiveautomation.com/u/anjoroge)\
**Post date:** [September 19, 2025, 8:38pm UTC](https://forum.inductiveautomation.com/t/docker-compose-user-permissions-on-mounted-volumes-using-mac-as-host/110169/4 "2025-09-19T20:38:34Z")

</div>

I think the issue here is that you try to mount volumes where you don’t have permission such as on the root system. One of the approaches you can use is using a `chown` command especially if you are dealing with existing volumes by modifying you `docker-compose.ym`l file. That way each time you run `docker-compose up` and docker compose-down commands they are created without permission issue. e.g.

```python
services:
  your-service:
    # ... other configurations
    volumes:
      - ./your-project:/app
    command: sh -c "chown -R $(id -u):$(id -g) /app && exec your-command"

```
