我有几份申请(vue & react每个应用程序都构建在不同版本的节点上).我想设置一个项目部署,这样我就可以为每个项目运行一个带有正确版本节点的docker容器。一个构建(npm i & npm run build
)应该发生在容器中,但是我将容器中的结果提供给服务器本身上的/var/www/project_name。
接下来,使用nginx设置一个容器,它将根据子域给予所需的构建
我的问题是如何将包含文件的文件夹从容器返回到操作系统区域?
我的docker-compose文件:
version: "3.1"
services:
redis:
restart: always
image: redis:alpine
container_name: redis
build-adminapp:
build: adminapp/
container_name: adminapp
working_dir: /var/www/adminapp
volumes:
- ./adminapp:/var/www/adminapp
build-clientapp:
build: clientapp/
container_name: clientapp
working_dir: /var/www/clientapp
volumes:
- ./clientapp:/var/www/clientapp`
我的docker文件:
FROM node:10-alpine as build
# Create app directory
WORKDIR /var/www/adminapp/
COPY . /var/www/adminapp/
RUN npm install
RUN npm run build
第二个Docker文件:
FROM node:12-alpine as build
# Create app directory
WORKDIR /var/www/clientapp/
COPY . /var/www/clientapp/
RUN npm install
RUN npm run build
1条答案
按热度按时间bfrts1fy1#
如果已经有一个正在运行的容器,可以使用docker cp命令在本地机器和Docker容器之间移动文件。