用Docker构buildAngularDart

我尝试与docker部署我的angular度飞镖应用程序,但不能得到它的工作。 一切工作在OS X上,但在容器内失败。

我的pubspec.yaml:

name: myapp dependencies: browser: any angular: 1.0.0 transformers: - angular 

我的Dockerfile:

 FROM stackbrew/ubuntu:13.10 ENV DEBIAN_FRONTEND noninteractive RUN apt-get update RUN apt-get install -y apt-transport-https curl git RUN sh -c 'curl https://dl-ssl.google.com/linux/linux_signing_key.pub | apt-key add -' RUN sh -c 'curl https://storage.googleapis.com/download.dartlang.org/linux/debian/dart_stable.list > /etc/apt/sources.list.d/dart_stable.list' RUN apt-get update RUN apt-get install dart/stable env PATH $PATH:/usr/lib/dart/bin ADD frontend/pubspec.yaml /container/pubspec.yaml ADD frontend/web /container/web WORKDIR /container RUN pub build 

Dart按预期方式安装(Dart VM版本:1.7.2)但是在pub build时失败:

 Error on line 6, column 5 of pubspec.yaml: Error loading transformer: Illegal argument(s): sdkDirectory must be provided. - angular ^^^^^^^ 

我发现这个https://github.com/angular/angular.dart/issues/1270build议将dartSDKpath添加到pubspec.yaml。 这不可能是解决scheme。

该应用程序应该在每台机器上运行..不仅在那些dartSdkpath与pubspec.yaml中的硬编码path匹配

有其他的方法来解决这个问题吗? 或解决方法?

更新

应该在code_transformers + 2中code_transformers (参见http://dartbug.com/21225

我不知道为什么这是必要的在一些系统而不是在其他人,但这应该解决它。

 transformers: - angular: sdkDirectory: "/usr/lib/dart" 

另请参阅https://github.com/angular/angular.dart/issues/1270#issuecomment-64967674,了解使用符号链接的其他方法。