# Offline install awx on k3s

**URL:** <https://forum.ansible.com/t/offline-install-awx-on-k3s/3816>\
**Category:** Get Help\
**Tags:** awx\
**Created:** [February 12, 2024, 7:44am UTC](https://forum.ansible.com/t/offline-install-awx-on-k3s/3816 "2024-02-12T07:44:27Z")\
**Posts on this page:** 4\
**Page:** 1

<div class="post-metadata">

**Author:** ![gsmiley](https://avatars.discourse-cdn.com/v4/letter/g/35a633/32.png) [@gsmiley](https://forum.ansible.com/u/gsmiley)\
**Post date:** [February 12, 2024, 7:44am UTC](https://forum.ansible.com/t/offline-install-awx-on-k3s/3816/1 "2024-02-12T07:44:27Z")

</div>

Hello,

I’m trying to install awx on a k3s cluster in an offline environment.  
I can successfully manage to install it on a system that has internet access using this [GitHub - kurokobo/awx-on-k3s: An example implementation of AWX on single node K3s using AWX Operator, with easy-to-use simplified configuration with ownership of data and passwords.](https://github.com/kurokobo/awx-on-k3s) .  
Basically what I did, I used the tutorial to install awx using internet access and then once installed I have moved the system in the offline environment.  
I noticed that the system it’s keep trying to connect to internet to pull images and configuration.  
Is there any good documentation about this, or does anyone can help a bit what should I do about the tutorial of kurokobo in order to make it to work offline?

Thank you,  
George

---

<div class="post-metadata">

**Author:** ![kurokobo](https://sea1.discourse-cdn.com/ansible/user_avatar/forum.ansible.com/kurokobo/32/182_2.png) [@kurokobo](https://forum.ansible.com/u/kurokobo)\
**Post date:** [February 12, 2024, 3:06pm UTC](https://forum.ansible.com/t/offline-install-awx-on-k3s/3816/2 "2024-02-12T15:06:25Z")

</div>

Hi, thanks for using my guide 😃

There are several considerations, but two basic ones are:

- Modify `Pull` policy to `Never` for your EE (`Administration` \> `Execution Environment` \> `Edit`)
- Store your project on [the private git repository](https://github.com/kurokobo/awx-on-k3s/tree/main/git), or [use `Manual` type project](https://github.com/kurokobo/awx-on-k3s/blob/main/tips/manual-project.md)

However, especially for EE images, be aware that [the cache may be deleted by Kubelet’s garbage collection](https://kubernetes.io/docs/concepts/architecture/garbage-collection/#containers-images). If the cached images are deleted, the job will not be able to start.

So I recommend you to store EE images on the private container registry and configure you EE to point it with policy `Missing` or `Always`. If you don’t have existing private container registry, I also provide the guide to deploy that: [https://github.com/kurokobo/awx-on-k3s/tree/main/registry](https://github.com/kurokobo/awx-on-k3s/tree/main/registry)

Since garbage collection works on unused images, it is unlikely that AWX or Operator images will be deleted, although ideally all images, including those used by K3s itself, should be placed in a private container registry, as guided [by K3s’ air-gapped installation procedure](https://docs.k3s.io/installation/airgap). The procedure is more complicated, so if you are interested, work on it.

Hope this helps 😃

---

<div class="post-metadata">

**Author:** ![gsmiley](https://avatars.discourse-cdn.com/v4/letter/g/35a633/32.png) [@gsmiley](https://forum.ansible.com/u/gsmiley)\
**Post date:** [February 12, 2024, 3:25pm UTC](https://forum.ansible.com/t/offline-install-awx-on-k3s/3816/3 "2024-02-12T15:25:59Z")

</div>

thank you very much for your swift response @kurokobo I’m going to try to work on that and I’m going to report back here how that worked out.

---

<div class="post-metadata">

**Author:** ![kurokobo](https://sea1.discourse-cdn.com/ansible/user_avatar/forum.ansible.com/kurokobo/32/182_2.png) [@kurokobo](https://forum.ansible.com/u/kurokobo)\
**Post date:** [February 12, 2024, 4:11pm UTC](https://forum.ansible.com/t/offline-install-awx-on-k3s/3816/4 "2024-02-12T16:11:29Z")

</div>

F.Y.I., you can list all cached images by `sudo $(which k3s) crictl images`.

Conversely, images that are not listed by this command may have been deleted by the GC and can’t be used by AWX anymore since it causes `ErrImagePull`.
