码头工人,compose.yml:
version: '3'
services:
ezmove:
volumes:
- /host-dir:/home/container-dir
build:
context: .
args:
BRANCH: develop
Dockerfile:
FROM appcontainers/ubuntu:xenial
MAINTAINER user <user>
RUN apt-get update -y --no-install-recommends \
&& apt-get install -y --no-install-recommends python3.5-minimal python3.5-venv \
&& apt-get install -y --no-install-recommends git \
&& apt-get install -y --no-install-recommends python-pip \
&& pip install --upgrade pip \
&& rm -rf /var/lib/apt/lists/* \
&& mkdir -p /home/container-dir
WORKDIR /home/container-dir
RUN /bin/bash - c "sh ./script.sh"
在构建docker容器时如何将本地目录映射到容器
当$ docker-compose up时,它将开始构建容器,但是在安装了packag dependancies后,它将尝试执行script.sh文件,但是收到错误“FILE NOT FOUND!”
尝试:
那么,如何在构建时将主机OS文件映射到容器
你在Dockerfile中缺少一些COPY
或ADD
,以便在你的图像中复制你的script.sh.
检查文档
https://docs.docker.com/engine/reference/builder/#add
https://docs.docker.com/engine/reference/builder/#copy
顺便说一句,Docker是关于隔离的,所以一个正在运行的容器应该与主机隔离,当然不能访问主机操作系统。