Я пытаюсь создать проверку работоспособности для моего контейнера MongoDB, настроенного в моем Dockerfile :
FROM ubuntu
RUN apt-get update && apt-get install -y gnupg2
RUN apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv 7F0CEB10
RUN echo 'deb http://downloads-distro.mongodb.org/repo/ubuntu-upstart dist 10gen' > tee /etc/apt/sources.list.d/mongodb.list
RUN apt-get update
RUN apt-get install -y mongodb
RUN mkdir -p /data/db
EXPOSE 27017
**HEALTHCHECK --interval=5s --timeout=3s CMD /etc/init.d/mongodb status || exit 1**
CMD ["usr/bin/mongod", "--smallfiles"]
Но когда я собираю образ и запускаю контейнер, после запуска docker ps
в столбце status
отображается Up 20 seconds (unhealthy)
.
При входе в контейнер с bash при попытке запустить service mongodb start
происходит сбой.
В файле журнала (/var/log/mongodb/mongodb.log
) там написано Failed to set up listener: SocketException: Address already in use
Но другого запущенного контейнера с MongoDB нет.
Что может быть причиной этого?