小编tom*_*der的帖子

Docker多阶段构建-复制失败

我在弹出的create-react-app的多阶段Dockerfile中遇到一些问题。Dockerfile列出如下:

FROM node:9.6.1 as builder

RUN mkdir /usr/src/app
WORKDIR /usr/src/app

ENV PATH /usr/src/app/node_modules/.bin:$PATH
COPY package.json /usr/src/app/package.json
RUN npm install --silent
COPY . /usr/src/app

RUN npm run build

FROM nginx:1.13.9-alpine
COPY --from=builder /usr/src/app/build /usr/share/nginx/html
EXPOSE 80
Run Code Online (Sandbox Code Playgroud)

Dockerfile成功运行,直到到达步骤10(COPY),并在其中抛出以下错误:

COPY failed: stat /var/lib/docker/overlay2/2fc8af4cb8db9777246cae48721d8a93917c73e415a02680f1e3a73c8780b903/merged/usr/src/app/build: no such file or directory
Run Code Online (Sandbox Code Playgroud)

我已经用谷歌搜索,但是找不到明确的答案。有没有人经历过类似的经历?

docker reactjs dockerfile

8
推荐指数
1
解决办法
1016
查看次数

通过 Laravel Route 在变量中传递“\”和“/”

首先,如果这是一个糟糕的问题/做法,我们深表歉意。我对 Laravel 很陌生,所以我仍在掌握它。

我试图在 Laravel 5 路由中传递一个包含正斜杠 (/) 和反斜杠 () 的变量,但遇到了一些困难。

我使用的是以下情况:api.dev/api/v1/service/DfDte\/uM5fy582WtmkFLJg==

尝试 1:

我的第一次尝试使用了以下代码,结果自然是 404。

路线:

Route::group(array('prefix' => 'api/v1'), function() {
    Route::resource('service', 'ServiceController');
});
Run Code Online (Sandbox Code Playgroud)

控制器:

public function show($service) {
    return $service;
}
Run Code Online (Sandbox Code Playgroud)

结果:

404
Run Code Online (Sandbox Code Playgroud)

尝试 2:

我在 StackOverflow 上做了一些搜索并最终使用了以下代码,这几乎可以工作,但是,它似乎正在将 \ 转换为 /。

路线:

Route::group(array('prefix' => 'api/v1'), function() {
    Route::get('service/{slashData}', 'ServiceController@getData')
    ->where('slashData', '(.*)');
});
Run Code Online (Sandbox Code Playgroud)

控制器:

public function getData($slashData = null) {
    if($slashData) {
        return $slashData;
    }
}
Run Code Online (Sandbox Code Playgroud)

结果:

DfDte//uM5fy582WtmkFLJg==
Run Code Online (Sandbox Code Playgroud)

如您所见,它正在传递 var 但似乎正在将 \ 转换为 /。

我正在尝试创建一个 API,但不幸的是,我传递的变量超出了我的控制(例如,我不能简单地不使用 \ …

php laravel laravel-routing laravel-5.2

5
推荐指数
1
解决办法
2342
查看次数

Chai - 期望函数抛出错误

我对Chai很新,所以我仍然要掌握一切.

我编写的函数将检查API响应并返回正确的消息或抛出错误.

networkDataHelper.prototype.formatPostcodeStatus = function(postcodeStatus) {

if (postcodeStatus.hasOwnProperty("errorCode")) {
    //errorCode should always be "INVALID_POSTCODE"
    throw Error(postcodeStatus.errorCode);
}

if (postcodeStatus.hasOwnProperty("lori")) {
    return "There appears to be a problem in your area. " + postcodeStatus.lori.message;
}

else if (postcodeStatus.maintenance !== null) {
    return postcodeStatus.maintenance.bodytext;
}

else {
    return "There are currently no outages in your area.";
}
};
Run Code Online (Sandbox Code Playgroud)

我已经设法为消息传递编写测试,但是,我正在努力进行错误测试.这是我迄今为止所写的内容:

var networkDataHelper = require('../network_data_helper.js');

describe('networkDataHelper', function() {
var subject = new networkDataHelper();
var postcode;

    describe('#formatPostcodeStatus', function() {
        var status = {
            "locationValue":"SL66DY",
            "error":false, …
Run Code Online (Sandbox Code Playgroud)

javascript chai

2
推荐指数
1
解决办法
4447
查看次数