[英]Docker compose work on linux environment but not windows environment
我正在使用2种开发环境,一种是在家中使用Linux VM,另一种是办公室中使用Windows笔记本电脑。 角度环境的dockerfile可以正常工作直到几天前,当我尝试在笔记本电脑上使用docker compose启动docker容器时,它显示以下错误:
ng | /bin/sh: 1: sudo: not found
ng exited with code 127
但是,在我的Linux VM上不会发生相同的问题。
Dockerfile:
FROM node:12
RUN wget -q -O - https://dl-ssl.google.com/linux/linux_signing_key.pub | apt-key add -
RUN sh -c 'echo "deb [arch=amd64] http://dl.google.com/linux/chrome/deb/ stable main" >> /etc/apt/sources.list.d/google.list'
RUN apt-get update && apt-get install -yq google-chrome-stable
RUN mkdir /app
WORKDIR /app
ENV PATH /app/node_modules/.bin:$PATH
COPY package.json package-lock.json /app/
RUN npm install
#RUN npm install -g @angular/cli
COPY . /app
EXPOSE 4200
CMD ng serve --host 0.0.0.0
docker-compose.yaml:
version: "3"
services:
dj:
container_name: dj
build: Backend
command: python manage.py runserver 0.0.0.0:80
volumes:
- ./Backend:/code
ports:
- "80:80"
ng:
container_name: ng
build: Frontend/SPort
volumes:
- ./Frontend/SPort:/app
ports:
- "4200:4200"
我认为您想在Dockerfile
修复sh
脚本
添加:
RUN apt-get update && apt-get install -y dos2unix && dos2unix /path/to/the/script
希望会有所帮助,因为错误来自Windows中的CRLF
字符
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.