使用Docker安装库时,npm install挂起

问题描述

这是交易。我正在尝试设置我的环境以使用expo开发一个react native应用程序。由于我正在使用Windows操作系统,因此我想使用Docker和docker-compose进行设置。

首先,我构建映像,从节点映像安装expo-cli。然后,我使用docker-compose指定要公开的卷和端口。

由于这时我必须对项目进行初始化,所以我要做的是使用docker-compose run初始化我的项目,然后使用同样的方法安装特定的项目库。但是,当我这样做时,安装会突然挂起。

现在看来,它与docker相关,但是我不确定自己在做什么错。

Dockerfile

FROM node:12.18.3

ENV PATH /app/node_modules/.bin:$PATH

RUN npm install --no-save -g expo-cli
RUN mkdir /app
workdir /app
RUN adduser user
USER user

docker-compose.yml

version: "3"

services:
  app:
    build:
      context: .
    expose:
      - "19000"
      - "19001"
      - "19002"
      - "19003"
    ports:
      - "19000:19000"
      - "19000:19001"
      - "19000:19002"
      - "19000:19003"
    volumes:
      - ./app:/app
    command: sh -c "cd myapp && npm start"

假设我的应用名为myapp

以下是我用于安装其他npm软件包和初始化项目的命令:

docker-compose run --rm app sh -c "npx expo-cli init myapp"
docker-compose run --rm app sh -c "cd /app/myapp && npm install react-navigation --verbose"

我看到发生了几件事,但是每次我从skratch开始时,它总是挂在某个地方,永远不会挂在同一个地方。

请帮助!

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...