在构建 docker 镜像时,按照以下步骤操作
如果我在 docker 文件中使用以下命令从 usr 位置清除 yarn 缓存,它会在我运行 docker 映像时产生影响吗?
运行 rm -rf /usr/local/share/.cache/yarn/*
由于 docker 图像大小为 1.2 GB,所以我清理了上面接近 450+ MB 的位置。
我正在使用不支持多阶段构建的较低版本的 docker(出于特定原因)。
另外,上面的命令是不是等价于RUN yarn clean cache?
FROM node:10-alpine
WORKDIR /app
COPY . /app
RUN apk --no-cache add yarn \
&& yarn install \
&& ng build --prod \
&& rm -rf /var/cache/apk/* \
&& rm -rf /usr/local/share/.cache/yarn/*
EXPOSE 3000
CMD ["npm", "run", "start"]
Run Code Online (Sandbox Code Playgroud) Java 11 取消了对 JAXB 和 xjc 等从 XSD 模式生成 java 文件的工具的支持。我在 Gradle 中找不到很多 xjc 生成的示例,并尝试了一些选项,但到目前为止没有运气。另外,应该在 Spring Boot Gradle 项目中添加哪些依赖项才能为 JAXB 提供全面支持?
我正在使用依赖项 module-x,它可能有也可能没有简单/其他依赖项的快照版本。当我构建应用程序时,我想确保所有琐碎/其他依赖项都是发布类型,而不是快照,因为快照不断变化。
构建.gradle 文件
dependencies {
implementation 'org.my-group-x:module-x:1.2'
}
Run Code Online (Sandbox Code Playgroud)
它下载一堆依赖项,并且可能有多个快照类型的依赖项
module-y:2.0-SNAPSHOT.jar
module-z:3.1-SNAPSHOT.jar
module-k:2.7-SNAPSHOT.jar
Run Code Online (Sandbox Code Playgroud)
我如何确保它被拒绝并且不会添加到申请中?我也不知道具体排除它的依赖关系。
真的很难理解和调试 ingress 的规则。谁能分享一个好的参考?
问题是入口如何在不指定主机的情况下工作?
apiVersion: extensions/v1beta1
kind: Ingress
metadata:
annotations:
nginx.ingress.kubernetes.io/force-ssl-redirect: \"false\"
name: my-app
spec:
rules:
http:
paths:
- backend:
path: /
serviceName: my-app
servicePort: http
Run Code Online (Sandbox Code Playgroud)
分配主机(例如- host: aws-dsn-name.org
)后,它不起作用。更改路径后path: /v1/
也不起作用:(。
如何调试/检查映射是否正确完成?
此外,何时使用extensions/v1beta1
或networking.k8s.io/v1beta1
我试图理解外部迭代器与内部迭代器之间的区别,其中外部迭代器使用迭代器来枚举其元素
List<String> alphabets = Arrays.asList(new String[]{"a","b","b","d"});
for(String letter: alphabets){
System.out.println(letter.toUpperCase());
}
Run Code Online (Sandbox Code Playgroud)
上面的后台代码做了类似下面的事情
List<String> alphabets = Arrays.asList(new String[]{"a","b","b","d"});
Iterator<String> iterator = alphabets.listIterator();
while(iterator.hasNext()){
System.out.println(iterator.next().toUpperCase());
}
Run Code Online (Sandbox Code Playgroud)
但对于内部迭代,一切都是在后台完成的,这对我来说是一个黑匣子,我想深入研究它。
就像下面的代码一样,迭代是在后台发生的,但到底发生了什么以及与 foreach 循环相比有何不同?
List<String> alphabets = Arrays.asList(new String[]{"a","b","b","d"});
alphabets.stream().forEach(l -> l.toUpperCase());
Run Code Online (Sandbox Code Playgroud)
这是我对外部迭代和内部迭代的理解。如果我错了,请纠正我。
java ×3
gradle ×2
build.gradle ×1
docker ×1
dockerfile ×1
java-8 ×1
java-stream ×1
jaxb ×1
node.js ×1
spring ×1
xsd ×1
yarnpkg ×1