问题描述
在centOS上克隆版本14.1之后,我已经使用docker-compose安装了AWX。已关注https://github.com/ansible/awx/blob/devel/INSTALL.md 默认用户界面在端口80上启动。 我正在尝试将其配置为https可访问。不想在前面使用Nginx。 我浏览过很少的博客,但收不到很多。我已经创建了自签证书,并在awx清单,证书和密钥中进行了配置,并启用了端口443。Docker显示进程处于80和443,但无法访问AWX UI。
host_port_ssl=443
ssl_certificate=/opt/awx/certs/cert.pem
ssl_certificate_key=/opt/awx/certs/key.pem
docker_compose_dir="~/.awx/awxcompose"
请问我做的是否正确。
(root@hostname):~/.awx/awxcompose# cat docker-compose.yml
version: '2'
services:
web:
image: ansible/awx:14.1.0
container_name: awx_web
depends_on:
- redis
- postgres
ports:
- "443:8053"
- "80:8052"
hostname: awxweb
user: root
restart: unless-stopped
volumes:
- supervisor-socket:/var/run/supervisor
- rsyslog-socket:/var/run/awx-rsyslog/
- rsyslog-config:/var/lib/awx/rsyslog/
- "~/.awx/awxcompose/SECRET_KEY:/etc/tower/SECRET_KEY"
- "~/.awx/awxcompose/environment.sh:/etc/tower/conf.d/environment.sh"
- "~/.awx/awxcompose/credentials.py:/etc/tower/conf.d/credentials.py"
- "~/.awx/awxcompose/Nginx.conf:/etc/Nginx/Nginx.conf:ro"
- "~/.awx/awxcompose/redis_socket:/var/run/redis/:rw"
- "/opt/awx/certs/cert.pem:/etc/Nginx/awxweb.pem:ro"
- "/opt/awx/certs/key.pem:/etc/Nginx/awxweb_key.pem:ro"
environment:
http_proxy:
https_proxy:
no_proxy:
task:
image: ansible/awx:14.1.0
container_name: awx_task
depends_on:
- redis
- web
- postgres
command: /usr/bin/launch_awx_task.sh
hostname: awx
user: root
restart: unless-stopped
volumes:
- supervisor-socket:/var/run/supervisor
- rsyslog-socket:/var/run/awx-rsyslog/
- rsyslog-config:/var/lib/awx/rsyslog/
- "~/.awx/awxcompose/SECRET_KEY:/etc/tower/SECRET_KEY"
- "~/.awx/awxcompose/environment.sh:/etc/tower/conf.d/environment.sh"
- "~/.awx/awxcompose/credentials.py:/etc/tower/conf.d/credentials.py"
- "~/.awx/awxcompose/redis_socket:/var/run/redis/:rw"
- "/opt/awx/certs/cert.pem:/etc/Nginx/awxweb.pem:ro"
environment:
http_proxy:
https_proxy:
no_proxy:
SUPERVISOR_WEB_CONfig_PATH: '/etc/supervisord.conf'
redis:
image: redis
container_name: awx_redis
restart: unless-stopped
environment:
http_proxy:
https_proxy:
no_proxy:
command: ["/usr/local/etc/redis/redis.conf"]
volumes:
- "~/.awx/awxcompose/redis.conf:/usr/local/etc/redis/redis.conf:ro"
- "~/.awx/awxcompose/redis_socket:/var/run/redis/:rw"
postgres:
image: postgres:10
container_name: awx_postgres
restart: unless-stopped
volumes:
- ~/.awx/pgdocker/10/data/:/var/lib/postgresql/data:Z
environment:
POSTGRES_USER: awx
POSTGRES_PASSWORD: awxpass
POSTGRES_DB: awx
http_proxy:
https_proxy:
no_proxy:
volumes:
supervisor-socket:
rsyslog-socket:
rsyslog-config:
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
81d087f70d27 ansible/awx:14.1.0 "/usr/bin/tini -- ..." 3 minutes ago Up 3 minutes 8052/tcp awx_task
f77f731efaa2 ansible/awx:14.1.0 "/usr/bin/tini -- ..." 3 minutes ago Up 3 minutes 0.0.0.0:80->8052/tcp,0.0.0.0:443->8053/tcp awx_web
076ad0550300 postgres:10 "docker-entrypoint..." 6 days ago Up 3 minutes 5432/tcp awx_postgres
287cd57a5895 redis "docker-entrypoint..." 6 days ago Up 3 minutes 6379/tcp awx_redis
解决方法
我遇到了类似的问题,原来是因为我的 SSL 密钥格式错误。结果,Web 服务器根本没有启动(ansible 安装脚本中没有任何错误)。检查 docker logs awx_web | less
是否有错误或提示。
它可以在没有 SSL 配置的情况下运行吗?就我而言,从 inventory
注释掉 SSL 设置并重新运行安装程序至少会在端口 80 上启动 Web 服务器。