我想坚持下去 mongoDB
容器外部和指定卷上的数据。我正在使用docker-compose和yml文件看起来像
web:
build: .
command: python -u app.py
ports:
- "5000:5000"
volumes:
- .:/todo
links:
- db
db:
image: mongo:3.0.2
我想坚持下去 mongoDB
容器外部和指定卷上的数据。我正在使用docker-compose和yml文件看起来像
web:
build: .
command: python -u app.py
ports:
- "5000:5000"
volumes:
- .:/todo
links:
- db
db:
image: mongo:3.0.2
如该图像的docker hub页面上所述(https://hub.docker.com/_/mongo/) 您可以使用
volumes:
- './data:/data/db'
哪个将使用主机路径 ./data
我想你试图在像我这样的OSX系统上启动容器? joshuajabbour指出,主机卷目录不能位于/ Users(或〜)下 这里。
试试这个例子
volumes:
- /usr/local/mongodb:/todo
#Mongo Dockerfile
FROM alpine:edge
MAINTAINER "loko" <binario200@gmail.com>
# proxy settings
ARG http_proxy=http://your-corporate-proxy-if-is-need-it/
ARG https_proxy=http://your-corporate-proxy-if-is-need-it/
ARG no_proxy=localhost,127.0.0.0/8,::1,15.0.0.0/8,16.0.0.0/8
ADD run /
ADD dosu /sbin/
RUN chmod +x /sbin/dosu && \
echo http://dl-4.alpinelinux.org/alpine/edge/testing >> /etc/apk/repositories && \
apk add --no-cache mongodb
VOLUME /data/db
EXPOSE 27017 28017
ENTRYPOINT [ "/run" ]
CMD [ "mongod" ]
#Docker撰写
version: '2.0'
volumes:
data:
external:
name: "the-volume-name-you-want
services:
web:
build:
context: .
dockerfile: "Dockerfile"
args:
- HTTP_PROXY
- HTTPS_PROXY
- http_proxy
- https_proxy
- no_proxy
- NO_PROXY
image: "docker-hub-OR-your-built-image-name"
environment:
- http_proxy=$http_proxy
- https_proxy=$https_proxy
- no_proxy=$no_proxy
- HTTP_PROXY=$HTTP_PROXY
- HTTPS_PROXY=$HTTPS_PROXY
- NO_PROXY=$NO_PROXY
ports:
- "8080"
restart: always
depends_on:
- mongo
mongo:
image: "your-favorite-mongodb-image-name"
environment:
- http_proxy=$http_proxy
- https_proxy=$https_proxy
- no_proxy=$no_proxy
- HTTP_PROXY=$HTTP_PROXY
- HTTPS_PROXY=$HTTPS_PROXY
- NO_PROXY=$NO_PROXY
restart: always
volumes:
- data:/data/db
docker-compose build .
docker-compose up