小编Mat*_*nja的帖子

Amazon AWS ECS Docker端口未正确绑定

我正在使用ECS优化的ECS映像并使用ECS进行部署.

因此,如果我打入容器并curl localhost获得预期的输出(预计将在端口80上),这样可以正常工作.

然后,如果我运行,docker ps 我得到以下输出

CONTAINER ID   IMAGE                              COMMAND             CREATED             STATUS              PORTS                        NAMES
1234           orgname/imagename:release-v0.3.1   "npm start"         53 minutes ago      Up 53 minutes       0.0.0.0:80->80/tcp           ecs-myname-1234`
Run Code Online (Sandbox Code Playgroud)

这表明端口80正在按预期进行映射.(我也看到了亚马逊ECS代理,但上面发布的内容并不重要)

然后我可以运行netstat -tulpn | grep :80,我得到以下输出

(No info could be read for "-p": geteuid()=500 but you should be root.)
tcp        0      0 :::80                       :::*                        LISTEN      -  
Run Code Online (Sandbox Code Playgroud)

然后作为root我运行sudo netstat -tulpn | grep :80,我得到以下输出

tcp        0      0 :::80                       :::*                        LISTEN      21299/docker-proxy  
Run Code Online (Sandbox Code Playgroud)

这让我觉得它只是在监听IPv6接口?我作为localhost的主机记录是127.0.0.1,这就是为什么当我运行curl localhostcurl 127.0.0.1 …

networking amazon-web-services amazon-ecs docker

10
推荐指数
1
解决办法
3490
查看次数

使用 LIMIT / ORDER BY 和 pg Postgres NodeJS 作为参数

我有一个模型,它使用 SORT/PAGE/PER PAGE 调用产品,它可以很好地使用数值作为参数,但不能使用字符串。这工作正常...

params.limit = 12
client.query('SELECT * FROM products LIMIT $1', [params.limit], function(err, result)
Run Code Online (Sandbox Code Playgroud)

然而这并不...

params.sort = 'product_id'
params.direction = 'DESC'
client.query('SELECT * FROM products ORDER BY $1 $2', [params.sort, params.direction], function(err, result)`
Run Code Online (Sandbox Code Playgroud)

我认为这是因为它将单词包装DESC'DESC'但我不知道如何在不将其直接注入字符串的情况下实现这一点。

另外,LIMIT传递一个整数总是有效的,但ALL我认为出于同样的原因传递不会。

任何帮助都会非常有用!

postgresql node.js pg

9
推荐指数
1
解决办法
4762
查看次数

使用设置参数在 Node 下运行 Meteor Build

通常在开发时我会使用meteor run --settings settings.json. 这工作正常,可以Meteor.settings在控制台上查看浏览器中的设置。

我现在正在为生产而构建,使用meteor build,我已经查看了文档,并且settings在构建过程中无处可添加。

所以构建运行,我有我的.tar.gz文件,它被加载到生产中,然后我解压/压缩文件夹并运行启动脚本。

它进入程序,npm startpackage.json 部分如下所示(忽略停止脚本);

{
  "name": "myapp",
  "scripts": {
    "start": "node main.js --settings settings.json",
    "stop": "killall node"
  }
}
Run Code Online (Sandbox Code Playgroud)

当我查看我的应用程序时,它没有收集这些设置。就好像捆绑时它不期望争论。我之前也尝试过永远使用,但我对此也不满意。

任何帮助将不胜感激,开始希望我从来没有打扰流星:)

arguments parameter-passing node.js meteor

6
推荐指数
1
解决办法
1383
查看次数

Kubernetes AutoScaler Not Scaling,HPA显示目标<unknown>

我对kubernetes很新,与Docker不太相关.

我一直在研究这个例子,但我坚持使用自动缩放器(它似乎没有扩展).

我正在通过这里的例子https://kubernetes.io/docs/tasks/run-application/horizo​​ntal-pod-autoscale-walkthrough/#step-one-run--expose-php-apache-server

你会在底部找到构建

kubectl create -f https://k8s.io/docs/tasks/run-application/hpa-php-apache.yaml

看起来像这样

apiVersion: autoscaling/v1
kind: HorizontalPodAutoscaler
metadata:
  name: php-apache
  namespace: default
spec:
  scaleTargetRef:
    apiVersion: apps/v1
    kind: Deployment
    name: php-apache
  minReplicas: 1
  maxReplicas: 10
  targetCPUUtilizationPercentage: 50
Run Code Online (Sandbox Code Playgroud)

kubectl get hba 节目

NAME         REFERENCE               TARGETS         MINPODS   MAXPODS   REPLICAS   AGE
php-apache   Deployment/php-apache   <unknown>/50%   1         10        0          7s
Run Code Online (Sandbox Code Playgroud)

<unknown>部分的线索.

然后kubectl describe hba显示

Name:                                                  php-apache
Namespace:                                             default
Labels:                                                <none>
Annotations:                                           <none>
CreationTimestamp:                                     Sat, 14 Apr 2018 23:05:05 +0100
Reference:                                             Deployment/php-apache
Metrics:                                               ( current / …
Run Code Online (Sandbox Code Playgroud)

autoscaling kubernetes

5
推荐指数
2
解决办法
3079
查看次数

NodeJS MSSQL WHERE IN 准备好的 SQL 语句

我正在使用 nodejs npm 包sql 我目前有一系列产品 skus 像这样..

var skus = ['product1', 'product2', 'product3'];
Run Code Online (Sandbox Code Playgroud)

我的 sql 存储在一个文件中,如下所示...

SELECT *
FROM stock AS s
WHERE s.sku IN (@skus)
Run Code Online (Sandbox Code Playgroud)

然后我还有我准备好的语句代码如下..

var connection = new sql.Connection(config, function(err) {
        var ps = new sql.PreparedStatement(connection);
        //Add params
        if(params != undefined){
            for(var key in params){
                ps.input(key, sql.VarChar(200));
            }
        }
        ps.prepare(sqlstatement, function(err) {
            ps.execute(params, function(err, data) {
                callback(null, data);
                ps.unprepare(function(err) {
                });
            });
        });
    });
}
Run Code Online (Sandbox Code Playgroud)

skus在中正确包含params对象的声明时,我使用它的简单工作得很好WHERE X = @Y,我只是如何,我需要传递的阵列挣扎skus,让他们工作在准备好的声明。 …

javascript sql sql-server prepared-statement node.js

4
推荐指数
1
解决办法
6478
查看次数

Scrapy管道分隔文件夹/文件-抽象

我目前正在完成一个Scrapy项目,但是我的pipelines.py文件很长。

我注意到在我settings.py的管道中显示如下(修剪掉):

ITEM_PIPELINES = {
     'proj.pipelines.MutatorPipeline': 200,
     'proj.pipelines.CalculatorPipeline': 300,
     'proj.pipelines.SaveToFilePipeline': 500,
}
Run Code Online (Sandbox Code Playgroud)

我尝试了以下方法来纠正此问题。

1.)我创建了一个新的文件/文件夹,并尝试以相同的方式从管道中引用它。

Folder myPipelines/Test.py的类名为,TestPipeline然后在管道设置中引用为proj.myPipelines.Test.TestPipeline': 100,

这给我带来了错误。

然后我以为我可以导出模块并导入到当前模块中,pipelines.py它将从中获得参考。我__init__.pymyPipelines目录中添加了一个空然后添加,from myPipelines.Test import TestPipeline但是scrapy仍然引发错误...

Raise NameError("Module '%s' doesn't define any object named '%s'" % (module, name))
exceptions.NameError: Module 'proj.pipelines' doesn't define any object named 'TestPipeline'.
Run Code Online (Sandbox Code Playgroud)

提前谢谢了!

python scrapy scrapy-pipeline

4
推荐指数
1
解决办法
713
查看次数

Amazon AWS NAT Gatway无法正常工作,EC2未在ECS群集中注册

我确信我的EC2实例和群集配置正确,并且由于网络配置,它们不会注册.

我正在从自动扩展组构建EC2实例,如果我创建/关联弹性IP ,他们注册但是我无法将它们转到NAT,因为它们将自动扩展我需要他们使用NAT来注册自己集群.

我在网络上有1个VPC 10.0.0.0/0

我在范围上的3个区域中有3个子网10.0.0.0/24,10.0.1.0/24&10.0.2.0/24.

我想使用亚马逊NAT Gateway不要混淆NAT Instance哪个是AMI来执行此功能.

我一直关注这个指南@ http://docs.aws.amazon.com/AmazonVPC/latest/UserGuide/vpc-nat-gateway.html

(现在)我有一个路由表(分配了所有3个子网),如下所示......

10.0.0.0/16 | local
0.0.0.0/0   | nat-******
Run Code Online (Sandbox Code Playgroud)

NAT网关坐在上面10.0.2.19.

安全组如下

Inbound
ALL TRAFFIC | ALL PROTOCOLS | ALL PORT RANGE |SOURCE: 0.0.0.0/0
Outbound
ALL TRAFFIC | ALL PROTOCOLS | ALL PORT RANGE |DESTINATION: 0.0.0.0/0
Run Code Online (Sandbox Code Playgroud)

网络ACL是

Inbound
Rule # | Type | Protocol | Port Range | Source | Allow / Deny
100 | ALL Traffic | …
Run Code Online (Sandbox Code Playgroud)

networking nat amazon-ec2 amazon-web-services amazon-vpc

3
推荐指数
1
解决办法
2339
查看次数

jQuery('#class').keypress Event.keyCode == 13)不工作

好的,所以我有一个带有div提交的表单,并希望在"输入密钥"按下提交表单的某些输入.我的HTML

<li>
    <label> <span>Username</span>

        <input placeholder="Please enter your username" name="username" class="login_username loginforminput" pattern="[a-zA-Z0-9]{6,}" type="text" tabindex="1" required autofocus>
    </label>
</li>
<li>
    <label> <span>Password</span>

        <input placeholder="Please enter your password" name="password" class="login_password loginforminput" pattern=".{6,}" type="password" tabindex="2" required>
    </label>
</li>
<li>
    <div name="login-submit" id="login-submit" tabindex="3">Sign In</div>
</li>
<li>
    <div class="gotootherform" id="registerpopup" tabindex="4">Register</div>
</li>
Run Code Online (Sandbox Code Playgroud)

还有我的.js脚本.

////Clicking 'Enter' on Register Form
  jQuery('#loginforminput').keydown(function(event) {
    if (Event.keyCode == 13) {
            RegisterFormSubmit();   
    }
});
Run Code Online (Sandbox Code Playgroud)

该函数的工作原理是在onclick中为div分配,所以不是这样.我究竟做错了什么?

javascript jquery

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

React Native - ListView,CloneWithRow,对象不是数组

我从网络服务中提取一些数据.在返回JSON数组的调用上,我能够做到以下几点.

 WebServiceHandler.get('http:/api.local/stock',{},{)
         .then((val)=>{
           this.setState({
             dataSource: this.state.dataSource.cloneWithRows(val)
           })
         })
         .catch((error) => console.log('callapi:'+ JSON.stringify(error)));
  }
Run Code Online (Sandbox Code Playgroud)

例如,以下数据将完美地工作..

[
    "SKU1",
    "SKU2",
    "SKU3"
]
Run Code Online (Sandbox Code Playgroud)

但是,当我尝试使用下面的键来提供对象时,它不喜欢它.

{
    "SKU1": {"level":11, "description":"This is SKU 1"},
    "SKU2": {"level":22, "description":"This is SKU 2"},
    "SKU3": {"level":33, "description":"This is SKU 3"}
}
Run Code Online (Sandbox Code Playgroud)

ListView可以用键处理对象,还是我需要在收据上循环和修改这些数据才能将它传递给ListView?

如果我必须修改它,而不循环它,任何框架是否提供了一个快速的方法来实现这一点?

javascript reactjs react-native

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