将-it选项传递给Docker容器

我是新来的docker工人,正在试验它。 我运行一个docker镜像如下:

docker run -it -p 4000:4000 -p 5858:5858 -v /c/Users/a/b:/usr/src/test/ image-name /bin/bash

运行后我在Docker容器中执行一些复制操作。

现在我想知道是如何使用docker-compose来完成的,它将根据我指定的命令执行复制操作,并保持terminal打开状态。

提前致谢 :)

你需要做的一切就在这里

首先创build一个Dockerfile,在那里你可以把你想要的任何“复制操作”。

一个Dockerfile的例子,

FROM python:3.4-alpine ADD . /code WORKDIR /code RUN pip install -r requirements.txt CMD ["python", "app.py"]

安装卷 ,你需要确保有数据要复制到“b”文件夹作为下面的 ,以便它将在testing/在容器中可用。

这是你的撰写文件。

 version: '2' services: service-name: image: image-name:latest ports: - 4000:4000 - 5858:5858 volumes: - /c/Users/a/b:/usr/src/test/ 

Dockerfile中使用COPY命令,这样就不需要将卷挂载到容器上。

Dockerfile ,下面解释了如何通过复制当前目录来运行简单的节点应用程序

 FROM node:boron # Create app directory WORKDIR /usr/src/app # Install app dependencies COPY package.json . # For npm@5 or later, copy package-lock.json as well # COPY package.json package-lock.json ./ RUN npm install # First .(DOT) referes to current folder where the docker is, and second .(DOT) referes to teh folder where you want to copy COPY . . EXPOSE 8080 CMD [ "npm", "start" ]