data-only
和database
容器
docker run -d -t --name dbdata -v /dbdata data-only
docker run -d -t --volumes-from dbdata --name db hdf5
我已经测试了data-only
容器和database
容器之间的持久性,但它确实有效。
app
容器:这是我遇到问题的地方。当我将app
容器链接到运行的database
容器时:
docker run -i -t -p 5000:5001 --link db:db --name app py-opencv
我找不到我的data-only
卷/dbdata
。我已经阅读了所有可以找出原因的方法,但无济于事。
当我运行docker inspect app
时,我可以看到链接:
"Links": [
"/db:/app/db"
]
我也看到:"Mounts": []
和"VolumesFrom": null
不确定这是否是一个问题。
当我运行docker exec app cat /etc/hosts
时,我看到了:
172.17.0.4 1cab4ab3c886
127.0.0.1 localhost
::1 localhost ip6-localhost ip6-loopback
fe00::0 ip6-localnet
ff00::0 ip6-mcastprefix
ff02::1 ip6-allnodes
ff02::2 ip6-allrouters
172.17.0.2 db 5e291000ab13
请帮忙
data-only
FROM debian:jessie
ENV HOME /root
CMD ["true"]
database
FROM debian:jessie
ENV HOME /root
# Install dependencies via apt-get
# Build HDF5
# Cleanup
EXPOSE 5001
app
FROM python:3.5
ENV HOME /root
# Install dependencies
# Install Python packages
# Build OpenCV and dependencies
# Update environment and directories
ENV PYTHONUNBUFFERED 1
ENV HDF5_DIR /usr/bin/ld
RUN mkdir /code
WORKDIR /code
ADD requirements.txt /code/
RUN pip install -r requirements.txt
ADD . /code/
EXPOSE 5000
答案 0 :(得分:1)
当您运行命令db
docker run -d -t --volumes-from dbdata --name db hdf5
容器中
如果您想要在应用容器中访问该数据容器,您还应该添加命令volumes-from
使用此命令docker run -i -t -p 5000:5001 --link db:db --name app py-opencv
,您只链接两个容器。 app
容器获取有关db容器的/etc/hosts
配置,但不涉及数据卷。
所以代替docker inspect app
运行docker inspect db
,您将在mount参数中找到数据容器信息