我在一个团队中,我们中的一些人使用 docker 工具箱和一些用户 docker 桌面。我们正在编写一个需要与开发中的 docker 容器进行通信的应用程序。
在 docker 工具箱上,我知道 docker-machine env 命令设置了 docker 主机环境变量,我可以使用它来获取运行 docker 引擎的虚拟机的 ip。从那里我只访问暴露的端口。
在 docker 桌面上获取该信息的等效方法是什么?(我没有一台有 docker 桌面的机器,只有 docker 工具箱,但我正在编写应该能够访问两者上的 docker 容器的代码)
我在firestore的节点中进行了查询,以获取文档集合。我想将集合写为要由应用程序解析的json字符串。我的代码如下:
serverRef = db.collection('servers');
getDocs = serverRef.where('online', '==', true).get()
.then(querySnapshot => {
if (querySnapshot.empty) {
res.send("NO SERVERS AVAILABLE");
} else {
var docs = querySnapshot.docs;
console.log('Document data:', docs);
res.end(JSON.stringify({kind: 'freeforge#PublicServerSearchResponse',servers: docs}));
}
Run Code Online (Sandbox Code Playgroud)
我这样获得不必要的数据,因为我得到的只是文档快照。如何遍历文档快照并将其发送到一个json字符串中?
是否可以在C#中为表达式赋值,以便我不必为它编写方法?例如,名为canBuild的变量等于表达式"numResources> 50".无论何时调用该变量,它都会重新计算它的值.我已经尝试过研究lambda,但我并不真正理解文档.
谢谢
编辑:
这是我尝试使用lamdas的尝试:
public void setStateFloat(float variable, float comparison, int compareType)
{
Func<bool> stateEval;
switch(compareType)
{
case 0:
stateEval = () => variable < comparison;
break;
case 1:
stateEval = () => variable > comparison;
break;
case 2:
stateEval = () => variable == comparison;
break;
}
}
Run Code Online (Sandbox Code Playgroud)
如果变量和比较不是使用此函数的对象本地(如在引用另一个对象变量的对象中),这是否有效.我怀疑它,因为它只是变量的副本,而不是指向原始变量存储位置的指针/引用.
另外,如果我想存储对该函数的引用,我该怎么做?
这背后的原因是我正在为设计人员开发一个高度结构化的模块化系统,其中一个要求是从他们的输入创建一个最初计算然后在运行时使用的函数.欢迎采用其他方法.
好的谢谢.