openstack-operator/images/monasca-api/Dockerfile

61 lines
2.1 KiB
Docker

ARG EXTRA_DEPS="gunicorn gevent==1.3.5 python-memcached influxdb"
ARG COMMON_REPO=https://review.opendev.org/openstack/monasca-common
ARG COMMON_VERSION=3.1.0
ARG REPO_VERSION=stable/ussuri
ARG CONSTRAINTS_BRANCH=master
ARG CONSTRAINTS_FILE=https://opendev.org/openstack/requirements/raw/branch/stable/ussuri/upper-constraints.txt
ARG DOCKER_IMAGE=monasca/api
ARG APP_REPO=https://opendev.org/openstack/monasca-api
ARG GITHUB_REPO=https://github.com/openstack/monasca-api
FROM monasca/base:ussuri as monasca-api
ENV \
KAFKA_URI=kafka:9092 \
KAFKA_WAIT_FOR_TOPICS=alarm-state-transitions,metrics \
MONASCA_CONTAINER_API_PORT=8070 \
DATABASE_BACKEND=influxdb \
INFLUX_HOST=influxdb \
INFLUX_PORT=8086 \
INFLUX_USER=mon_api \
INFLUX_PASSWORD=password \
INFLUX_DB=mon \
CASSANDRA_CONTACT_POINTS=cassandra \
CASSANDRA_PORT=9042 \
CASSANDRA_KEY_SPACE=monasca \
CASSANDRA_USER=mon_persister \
CASSANDRA_PASSWORD=password \
CASSANDRA_CONNECTION_TIMEOUT=5 \
MYSQL_HOST=mysql \
MYSQL_PORT=3306 \
MYSQL_USER=monapi \
MYSQL_PASSWORD=password \
MYSQL_DB=mon \
MEMCACHED_URI=memcached:11211 \
DEFAULT_REGION=RegionOne \
KEYSTONE_IDENTITY_URI=http://keystone:35357 \
KEYSTONE_AUTH_URI=http://keystone:5000 \
KEYSTONE_ADMIN_USER=admin \
KEYSTONE_ADMIN_PASSWORD=secretadmin \
KEYSTONE_ADMIN_TENANT=admin \
KEYSTONE_ADMIN_DOMAIN=default \
KEYSTONE_INSECURE=false \
GUNICORN_WORKERS=9 \
GUNICORN_WORKER_CLASS=gevent \
GUNICORN_WORKER_CONNECTIONS=2000 \
GUNICORN_BACKLOG=1000 \
GUNICORN_TIMEOUT=10 \
ADD_ACCESS_LOG=true \
ACCESS_LOG_FORMAT="%(asctime)s [%(process)d] gunicorn.access [%(levelname)s] %(message)s" \
ACCESS_LOG_FIELDS='%(h)s %(l)s %(u)s %(t)s %(r)s %(s)s %(b)s "%(f)s" "%(a)s" %(L)s' \
LOG_LEVEL_ROOT=WARN \
LOG_LEVEL_CONSOLE=INFO \
LOG_LEVEL_ACCESS=INFO \
STAY_ALIVE_ON_FAILURE=false \
ENABLE_METRICS_API=true \
ENABLE_LOGS_API=false
COPY api-* /etc/monasca/
COPY monasca-api.conf.j2 /etc/monasca/
EXPOSE ${MONASCA_CONTAINER_API_PORT}
CMD ["/start.sh"]