简体   繁体   English

在Dockerfile中写命令如何在docker中安装mongodb

[英]How to install mongodb in docker by writing commands in Dockerfile

I am getting this error while installing mongodb in docker在 docker 中安装 mongodb 时出现此错误

[5/6] RUN apk add mongodb=3.4.4-r0: [5/6] 运行 apk 添加 mongodb=3.4.4-r0:
#8 0.327 ERROR: unable to select packages: #8 0.327 错误:无法 select 包:
#8 0.328 mongodb (no such package): #8 0.328 mongodb(没有这样的包):
#8 0.347 required by: world[mongodb=3.4.4-r0]. #8 0.347 要求:world[mongodb=3.4.4-r0]。
executor failed running [/bin/sh -c apk add mongodb=3.4.4-r0]: exit code: 1.执行程序运行失败 [/bin/sh -c apk add mongodb=3.4.4-r0]:退出代码:1。

My Dockerfile code is given below which is similar to the StackOverflow solution but it is not working for me.下面给出了我的Dockerfile代码,它类似于 StackOverflow 解决方案,但它对我不起作用。

FROM alpine

RUN echo 'http://dl-cdn.alpinelinux.org/alpine/v3.6/main' >> /etc/apk/repositories
RUN echo 'http://dl-cdn.alpinelinux.org/alpine/v3.6/community' >> /etc/apk/repositories

RUN apk update
RUN apk add mongodb=3.4.4-r0

VOLUME ["/data/db"]
WORKDIR /data
EXPOSE 27017

CMD [ "mongod" ]

You don't have to add the repositories, just set the alpine version:您不必添加存储库,只需设置高山版本:

FROM alpine:3.6

ENV TERM=linux

RUN apk add --no-cache bash mongodb=3.4.4-r0

RUN mkdir -p /data/db && \
    chown -R mongodb /data/db

VOLUME /data/db
EXPOSE 27017

CMD [ "mongod", "--bind_ip", "0.0.0.0"]

I hate to be "that guy", but trying to troubleshoot your solution, it just worked on my machine:我讨厌成为“那个人”,但试图解决您的解决方案,它只是在我的机器上工作:

wsl2-ubuntu20.04-截图

Ubuntu 20.04 on WSL2 (Windows 10) with Docker 20.10.17 WSL2 (Windows 10) 上的 Ubuntu 20.04 和 Docker 20.10.17

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM