43 lines
1.2 KiB
Docker
43 lines
1.2 KiB
Docker
# Example Dockerfile for creating Docker image.
|
|
ARG DOCKER_IMAGE=monasca-api
|
|
ARG APP_REPO=https://review.opendev.org/openstack/monasca-api
|
|
|
|
# Branch, tag or git hash to build from.
|
|
ARG REPO_VERSION=master
|
|
ARG CONSTRAINTS_BRANCH=master
|
|
ARG COMMON_VERSION=master
|
|
|
|
# Extra Python3 dependencies.
|
|
ARG EXTRA_DEPS="gunicorn influxdb python-memcached"
|
|
|
|
# Always start from `monasca-base` image and use specific tag of it.
|
|
ARG BASE_TAG=1.0.0
|
|
FROM monasca/base:$BASE_TAG
|
|
|
|
# Environment variables used for our service or wait scripts.
|
|
ENV \
|
|
KAFKA_URI=kafka:9092 \
|
|
KAFKA_WAIT_FOR_TOPICS=alarm-state-transitions,metrics \
|
|
MYSQL_HOST=mysql \
|
|
MYSQL_USER=monapi \
|
|
MYSQL_PASSWORD=password \
|
|
MYSQL_DB=mon \
|
|
LOG_LEVEL=INFO \
|
|
STAY_ALIVE_ON_FAILURE="false"
|
|
|
|
# Copy all neccessary files to proper locations.
|
|
COPY config_1.yml.j2 config_2.yml.j2 /
|
|
|
|
# Run here all additionals steps your service need post installation.
|
|
# Stay with only one `RUN` and use `&& \` for next steps to don't create
|
|
# unnecessary image layers. Clean at the end to conserve space.
|
|
RUN \
|
|
echo "Some steps to do after main installation." && \
|
|
echo "Hello when building."
|
|
|
|
# Expose port for specific service.
|
|
EXPOSE 1234
|
|
|
|
# Implement start script in `start.sh` file.
|
|
CMD ["/start.sh"]
|