Using the spacelift user in Ansible runner container images

Last updated: September 9, 2025

When building custom Docker images based on our Ansible runner containers, you have several options for handling user permissions:

Latest Image (Updated)

As of the latest update to our Ansible runner container (public.ecr.aws/spacelift/runner-ansible:latest), the spacelift user has been restored. This means you can now reference the named spacelift user again in your Dockerfile commands:

FROM public.ecr.aws/spacelift/runner-ansible:latest

USER root

RUN chown spacelift: /path/to/file
RUN chown spacelift:spacelift /some/directory

USER spacelift

Important Note on User ID Consistency

While the named user is now available again, the numeric user ID (1983) remains consistent across image versions. This can be useful if you encounter similar issues in the future or want to ensure compatibility across containers:

# This still works:
RUN chown 1983:1983 /some/directory
USER 1983

Legacy Image

If you are using the legacy image (public.ecr.aws/spacelift/runner-ansible:legacy), nothing has changed — the spacelift user remains available as before:

FROM public.ecr.aws/spacelift/runner-ansible:legacy

RUN chown spacelift: /path/to/file
RUN chown spacelift:spacelift /some/directory

USER spacelift

Recommendation

We recommend using the latest tag for ongoing compatibility and feature updates. However, if your workflows are tightly coupled to the named user and you need stability, the legacy image remains a valid fallback.