Hello,
I’m trying to run AWX using docker-compose.
I have cloned the Git repository, tag 24.6.1
I’m following these instructions: awx/tools/docker-compose/README.md at 24.6.1 · ansible/awx · GitHub
My environment:
- Ubuntu 20.04.6
- Docker 27.3.1, build ce12230
I tried starting my AWX by running make docker-compose
. However this gives me an error:
make[1]: Entering directory '/opt/awx'
docker compose -f tools/docker-compose/_sources/docker-compose.yml up --remove-orphans
WARN[0000] /opt/awx/tools/docker-compose/_sources/docker-compose.yml: the attribute `version` is obsolete, it will be ignored, please remove it to avoid potential confusion
[+] Running 1/1
✘ awx_1 Error manifest unknown 0.2s
Error response from daemon: manifest unknown
make[1]: *** [Makefile:576: docker-compose-up] Error 18
make[1]: Leaving directory '/opt/awx'
make: *** [Makefile:569: docker-compose] Error 2
I then tried with make docker-compose COMPOSE_TAG=devel
. This starts the cluster and then starts looping with error:
tools_awx_1 | Traceback (most recent call last):
tools_awx_1 | File "/var/lib/awx/venv/awx/bin/daphne", line 8, in <module>
tools_awx_1 | sys.exit(CommandLineInterface.entrypoint())
tools_awx_1 | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
tools_awx_1 | File "/var/lib/awx/venv/awx/lib64/python3.11/site-packages/daphne/cli.py", line 170, in entrypoint
tools_awx_1 | cls().run(sys.argv[1:])
tools_awx_1 | File "/var/lib/awx/venv/awx/lib64/python3.11/site-packages/daphne/cli.py", line 232, in run
tools_awx_1 | application = import_by_path(args.application)
tools_awx_1 | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
tools_awx_1 | File "/var/lib/awx/venv/awx/lib64/python3.11/site-packages/daphne/utils.py", line 12, in import_by_path
tools_awx_1 | target = importlib.import_module(module_path)
tools_awx_1 | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
tools_awx_1 | File "/usr/lib64/python3.11/importlib/__init__.py", line 126, in import_module
tools_awx_1 | return _bootstrap._gcd_import(name[level:], package, level)
tools_awx_1 | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
tools_awx_1 | File "<frozen importlib._bootstrap>", line 1204, in _gcd_import
tools_awx_1 | File "<frozen importlib._bootstrap>", line 1176, in _find_and_load
tools_awx_1 | File "<frozen importlib._bootstrap>", line 1147, in _find_and_load_unlocked
tools_awx_1 | File "<frozen importlib._bootstrap>", line 690, in _load_unlocked
tools_awx_1 | File "<frozen importlib._bootstrap_external>", line 940, in exec_module
tools_awx_1 | File "<frozen importlib._bootstrap>", line 241, in _call_with_frames_removed
tools_awx_1 | File "/awx_devel/awx/asgi.py", line 12, in <module>
tools_awx_1 | prepare_env() # NOQA
tools_awx_1 | ^^^^^^^^^^^^^
tools_awx_1 | File "/awx_devel/awx/__init__.py", line 107, in prepare_env
tools_awx_1 | if not settings.DEBUG: # pragma: no cover
tools_awx_1 | ^^^^^^^^^^^^^^
tools_awx_1 | File "/var/lib/awx/venv/awx/lib64/python3.11/site-packages/django/conf/__init__.py", line 102, in __getattr__
tools_awx_1 | self._setup(name)
tools_awx_1 | File "/var/lib/awx/venv/awx/lib64/python3.11/site-packages/django/conf/__init__.py", line 89, in _setup
tools_awx_1 | self._wrapped = Settings(settings_module)
tools_awx_1 | ^^^^^^^^^^^^^^^^^^^^^^^^^
tools_awx_1 | File "/var/lib/awx/venv/awx/lib64/python3.11/site-packages/django/conf/__init__.py", line 217, in __init__
tools_awx_1 | mod = importlib.import_module(self.SETTINGS_MODULE)
tools_awx_1 | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
tools_awx_1 | File "/usr/lib64/python3.11/importlib/__init__.py", line 126, in import_module
tools_awx_1 | return _bootstrap._gcd_import(name[level:], package, level)
tools_awx_1 | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
tools_awx_1 | File "<frozen importlib._bootstrap>", line 1204, in _gcd_import
tools_awx_1 | File "<frozen importlib._bootstrap>", line 1176, in _find_and_load
tools_awx_1 | File "<frozen importlib._bootstrap>", line 1147, in _find_and_load_unlocked
tools_awx_1 | File "<frozen importlib._bootstrap>", line 690, in _load_unlocked
tools_awx_1 | File "<frozen importlib._bootstrap_external>", line 940, in exec_module
tools_awx_1 | File "<frozen importlib._bootstrap>", line 241, in _call_with_frames_removed
tools_awx_1 | File "/awx_devel/awx/settings/development.py", line 21, in <module>
tools_awx_1 | from .defaults import * # NOQA
tools_awx_1 | ^^^^^^^^^^^^^^^^^^^^^^^
tools_awx_1 | File "/awx_devel/awx/settings/defaults.py", line 13, in <module>
tools_awx_1 | import ldap
tools_awx_1 | ModuleNotFoundError: No module named 'ldap'
tools_awx_1 | make[1]: *** [Makefile:254: daphne] Error 1
tools_awx_1 | make[1]: Leaving directory '/awx_devel'
tools_awx_1 | 2024-12-02 22:41:57,077 WARN exited: awx-daphne (exit status 2; not expected)
I then tried with make docker-compose COMPOSE_TAG=release_4.6
. This also starts but loops with a different error:
tools_awx_1 | 2024-12-02 22:43:35,657 WARN exited: awx-wsrelay (exit status 1; not expected)
tools_awx_1 | 2024-12-02 22:43:36,659 INFO spawned: 'awx-wsrelay' with pid 514
tools_awx_1 | 2024-12-02 22:43:37,661 INFO success: awx-wsrelay entered RUNNING state, process has stayed up for > than 1 seconds (startsecs)
tools_awx_1 | 2024-12-02 22:43:37,819 ERROR [-] ansible_base.resource_registry.apps RESOURCE_SERVER is not configured. Reverse sync will not be enabled.
tools_awx_1 | 2024-12-02 22:43:37,820 ERROR [-] ansible_base.resource_registry.apps RESOURCE_SERVER is not configured. Reverse sync will not be enabled.
tools_awx_1 | 2024-12-02 22:43:37,820 ERROR [-] ansible_base.resource_registry.apps RESOURCE_SERVER is not configured. Reverse sync will not be enabled.
tools_awx_1 | Traceback (most recent call last):
tools_awx_1 | File "/usr/local/bin/awx-manage", line 18, in <module>
tools_awx_1 | load_entry_point('awx', 'console_scripts', 'awx-manage')()
tools_awx_1 | File "/awx_devel/awx/__init__.py", line 177, in manage
tools_awx_1 | execute_from_command_line(sys.argv)
tools_awx_1 | File "/var/lib/awx/venv/awx/lib64/python3.11/site-packages/django/core/management/__init__.py", line 442, in execute_from_command_line
tools_awx_1 | utility.execute()
tools_awx_1 | File "/var/lib/awx/venv/awx/lib64/python3.11/site-packages/django/core/management/__init__.py", line 436, in execute
tools_awx_1 | self.fetch_command(subcommand).run_from_argv(self.argv)
tools_awx_1 | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
tools_awx_1 | File "/var/lib/awx/venv/awx/lib64/python3.11/site-packages/django/core/management/__init__.py", line 275, in fetch_command
tools_awx_1 | klass = load_command_class(app_name, subcommand)
tools_awx_1 | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
tools_awx_1 | File "/var/lib/awx/venv/awx/lib64/python3.11/site-packages/django/core/management/__init__.py", line 48, in load_command_class
tools_awx_1 | module = import_module("%s.management.commands.%s" % (app_name, name))
tools_awx_1 | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
tools_awx_1 | File "/usr/lib64/python3.11/importlib/__init__.py", line 126, in import_module
tools_awx_1 | return _bootstrap._gcd_import(name[level:], package, level)
tools_awx_1 | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
tools_awx_1 | File "<frozen importlib._bootstrap>", line 1204, in _gcd_import
tools_awx_1 | File "<frozen importlib._bootstrap>", line 1176, in _find_and_load
tools_awx_1 | File "<frozen importlib._bootstrap>", line 1147, in _find_and_load_unlocked
tools_awx_1 | File "<frozen importlib._bootstrap>", line 690, in _load_unlocked
tools_awx_1 | File "<frozen importlib._bootstrap_external>", line 940, in exec_module
tools_awx_1 | File "<frozen importlib._bootstrap>", line 241, in _call_with_frames_removed
tools_awx_1 | File "/awx_devel/awx/main/management/commands/run_wsrelay.py", line 20, in <module>
tools_awx_1 | from awx.main.wsrelay import WebSocketRelayManager
tools_awx_1 | File "/awx_devel/awx/main/wsrelay.py", line 11, in <module>
tools_awx_1 | import aioredis
tools_awx_1 | ModuleNotFoundError: No module named 'aioredis'
How do I start AWX?
Thank you for any pointers!