小编Kin*_*ere的帖子

Docker注册表和存储库之间的区别

我对docker注册表和存储库之间的区别感到困惑.似乎Docker文档可以互换使用这两个词.此外,存储库有时也称为图像,例如来自其文档的图像:

为了将存储库推送到其注册表,您需要命名一个映像或将容器提交到我们在此处看到的命名映像.

现在,您可以将此存储库推送到由其名称或标记指定的注册表中.

如何将存储库推送到注册表?你不是把图像推到存储库吗?

docker

122
推荐指数
3
解决办法
5万
查看次数

在PowerShell中逐行读取文件

我想在PowerShell中逐行读取文件.具体来说,我想循环遍历文件,将每一行存储在循环中的变量中,并在该行上进行一些处理.

我知道Bash的等价物:

while read line do
    if [[ $line =~ $regex ]]; then
          # work here
    fi
done < file.txt
Run Code Online (Sandbox Code Playgroud)

关于PowerShell循环的文档不多.

powershell powershell-ise

80
推荐指数
5
解决办法
25万
查看次数

Spring启动 - Application.properties中的自定义变量

我有弹簧启动客户端,消耗一个宁静的API.而不是在java类中硬编码REST API的IP地址,我可以使用application.properties中的任何键入口吗?

如果没有,我可以创建自定义条目吗?

谢谢

spring spring-mvc spring-data spring-boot

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

Maven和Spring Boot - 不可解析的父pom - repo.spring.io(未知主机)

我正在尝试构建我的项目,但我得到了这个:

    <parent>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-parent</artifactId>
        <version>1.3.0.M3</version>
        <relativePath></relativePath>
    </parent>
Run Code Online (Sandbox Code Playgroud)

这是我如何指定我的pom.xml的父级:

<repositories>
        <repository>
            <id>spring-snapshots</id>
            <url>http://repo.spring.io/snapshot</url>
            <snapshots>
                <enabled>true</enabled>
            </snapshots>
        </repository>
        <repository>
            <id>spring-milestones</id>
            <url>http://repo.spring.io/milestone</url>
        </repository>
    </repositories>

<pluginRepositories>
    <pluginRepository>
        <id>spring-snapshots</id>
        <url>http://repo.spring.io/snapshot</url>
    </pluginRepository>
    <pluginRepository>
        <id>spring-milestones</id>
        <url>http://repo.spring.io/milestone</url>
    </pluginRepository>
</pluginRepositories>
Run Code Online (Sandbox Code Playgroud)

它是空的,因此它强制maven在远程存储库中查找父级.但是,它说repo.spring.io是一个未知的主机.

以下是我在pom.xml中定义存储库的方法:

    <parent>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-parent</artifactId>
        <version>1.3.0.M3</version>
        <relativePath></relativePath>
    </parent>
Run Code Online (Sandbox Code Playgroud)

有任何想法吗?

spring pom.xml maven parent-pom spring-boot

20
推荐指数
6
解决办法
9万
查看次数

JUnit @BeforeClass非静态解决Spring Boot应用程序

@BeforeClass如果要在所有@Test方法之前运行一次,JUnit的注释必须声明为static .但是,这不能用于依赖注入.

@Autowire在运行JUnit测试之前,我想用Spring Boot 清理一个数据库.我不能@Autowire静态字段所以我需要考虑一个解决方法.有任何想法吗?

junit spring unit-testing dependency-injection spring-boot

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

Maven没有运行Spring Boot测试

我有一个我要测试的休息Spring Boot REST API.我可以在Eclipse中手动运行测试(没有maven并通过运行应用程序作为JUnit测试)并且运行正常并显示结果,但mvn test不会"正常",您将在下面找到.

这是我的POM文件:

http://maven.apache.org/xsd/maven-4.0.0.xsd"> 4.0.0

<groupId>org.demo</groupId>
<artifactId>rest</artifactId>
<version>0.0.1-SNAPSHOT</version>
<packaging>war</packaging>

<name>UserRegistrationServices</name>
<description>RESTful API</description>

<parent>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-parent</artifactId>
    <version>1.2.5.RELEASE</version>
    <relativePath /> <!-- lookup parent from repository -->
</parent>

<properties>
    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
    <java.version>1.8</java.version>
</properties>

<dependencies>

    <!-- Junit -->
    <dependency>
        <groupId>junit</groupId>
        <artifactId>junit</artifactId>
        <scope>test</scope>
    </dependency>

    <!-- Spring dependencies -->
    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-data-mongodb</artifactId>
    </dependency>
    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-web</artifactId>
    </dependency>
    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-security</artifactId>
    </dependency>

    <!-- To deploy to external servlet container -->
    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-tomcat</artifactId>
        <scope>provided</scope>
    </dependency>

    <!-- For Spring Boot testing -->
    <dependency>
        <groupId>org.springframework.boot</groupId> …
Run Code Online (Sandbox Code Playgroud)

java junit spring unit-testing maven

17
推荐指数
7
解决办法
3万
查看次数

docker存储库名称组件必须匹配

我正在尝试使用此插件构建我的图像:https://github.com/spotify/docker-maven-plugin#use-a-dockerfile

我跑的时候 mvn clean package docker:build

我收到此错误:

[ERROR] Failed to execute goal com.spotify:docker-maven-plugin:0.2.3:build (defa
ult-cli) on project demo: Exception caught: Request error: POST https://192.168.
99.100:2376/v1.12/build?t=DevOpsClient: 500: HTTP 500 Internal Server Error -> [
Help 1]
Run Code Online (Sandbox Code Playgroud)

当我检查docker守护程序日志时,我看到:

Handler for POST /build returned error: repository name component must match \"[a-z0-9]+(?:[._-][a-z0-9]+)*\"" statusCode=500
Run Code Online (Sandbox Code Playgroud)

以下是命名约定的文档:https://docs.docker.com/registry/spec/api/

显然你不能有任何大写字母.

我正在尝试使用Spring引导构建我的以下指南:https://spring.io/guides/gs/spring-boot-docker/

我正在使用Spring Boot的SNAPSHOT版本,我有一个名为demo-0.1.1-SNAPSHOT的目录.我相信这可能会导致问题.

我也在Windows上工作,我的项目目录路径如下:

C:\Users\myname\UserRegistrationClient\git\..... etc
Run Code Online (Sandbox Code Playgroud)

这是否也会影响存储库命名约定?

我怎么改变它?

docker spring-boot boot2docker dockerfile docker-registry

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

在linux脚本中访问在docker容器中运行的mongo shell

我想创建一个bash脚本,从一个在docker容器中运行的mongodb数据库中删除用户.

通常通过终端我会执行 docker exec -it mycontainername bash

然后,一旦我在容器中执行 mongo mydbname --eval "db.users.remove({"firstname":"Bob"})"

我只是不知道如何在linux bash脚本中执行此操作.

执行包含该docker exec命令的脚本后,它将离开脚本并打开docker容器的终端并提示我输入命令.

使用分离-d标志会起作用吗?

linux bash shell mongodb docker

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

Angular 6-NullInjectorError:在单元测试中没有HttpClient的提供程序

我正在导入和HttpClient在服务中使用,如下所示:

import { Injectable } from '@angular/core';
import { HttpClient } from '@angular/common/http';

@Injectable({
    providedIn: 'root',
})
export class MyService {
    constructor(private http: HttpClient) { }

    getData() {
        return this.http.get("url...");
    }
}
Run Code Online (Sandbox Code Playgroud)

但是,当我ng test单元测试运行时,以及那些测试使用该服务时,出现了以下错误:

Error: StaticInjectorError(DynamicTestModule)[HttpClient]: StaticInjectorError(Platform: core)[HttpClient]: NullInjectorError: No provider for HttpClient!

HTTP上Angular 6文档只是说了做我上面的事情。

karma-jasmine angular angular-test

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

实时重新加载在 Spring boot devtools 中不起作用

我在 Spring Boot 应用程序中使用此依赖项:

<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-devtools</artifactId>
    <optional>true</optional>
</dependency>
Run Code Online (Sandbox Code Playgroud)

文件说:

默认情况下,更改 /META-INF/maven、/META-INF/resources、/resources、/static、/public 或 /templates 中的资源不会触发重新启动,但会触发实时重新加载

现场重装文件说:

spring-boot-devtools 模块包含一个嵌入式 LiveReload 服务器,可用于在资源更改时触发浏览器刷新。LiveReload 浏览器扩展可从 livereload.com 免费获得,适用于 Chrome、Firefox 和 Safari。

现在,我使用 Maven,我的静态文件夹在 src/main/resources 下,所以我的文件夹结构是:

src/main/resources/static/index.html

这是我的 index.html 文件中的内容:

<!DOCTYPE HTML>
<html>
<head>
    <title>Getting Started: Serving Web Content</title>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
</head>
<body>
    <p>HI THERE! Get your greeting <a href="/greeting">here</a></p>
</body>
</html>
Run Code Online (Sandbox Code Playgroud)

我使用 chrome 浏览器,但没有在 chrome 中使用任何实时重新加载浏览器扩展。

我使用这个 Powershell 命令运行应用程序(因为我使用的是 spring boot maven 插件):

mvn …
Run Code Online (Sandbox Code Playgroud)

java spring spring-mvc spring-boot

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