小编Evg*_*pov的帖子

将不安全的注册表添加到Docker

我在CentOS上运行了一个docker 1.12.我试图添加不安全的注册表,文档中提到的东西不起作用.系统使用systemd所以我创建了一个/etc/systemd/system/docker.service.d/50-insecure-registry.conf文件.

$ cat /etc/systemd/system/docker.service.d/50-insecure-registry.conf
[Service]
Environment='DOCKER_OPTS=--insecure-registry="hostname.cloudapp.net:5000"'
Run Code Online (Sandbox Code Playgroud)

加载守护程序并重新启动docker服务后,systemd会显示环境变量

$ sudo systemctl show docker | grep Env
Environment=DOCKER_OPTS=--insecure-registry="hostname.cloudapp.net:5000"
Run Code Online (Sandbox Code Playgroud)

但是,当我运行时,docker info我没有看到添加了不安全的注册表

$ docker info
........
Registry: https://index.docker.io/v1/
WARNING: bridge-nf-call-iptables is disabled
WARNING: bridge-nf-call-ip6tables is disabled
Insecure Registries:
    127.0.0.0/8
Run Code Online (Sandbox Code Playgroud)

推送图像hostaneme.cloudapp.net失败

Pushing application     (hostname.cloudapp.net:5000/application:latest)...
The push refers to a repository     [hostname.cloudapp.net:5000/mozart_application]
ERROR: Get https://hostname.cloudapp.net:5000/v1/_ping: http: server gave HTTP response to HTTPS client
Run Code Online (Sandbox Code Playgroud)

有什么可以做的吗?我错过了什么吗?

UPDATE

通过添加/etc/docker/daemon.json包含以下内容的文件解决了该问题

{
    "insecure-registries" : [ "hostname.cloudapp.net:5000" ]
}
Run Code Online (Sandbox Code Playgroud)

然后重启docker

sudo …
Run Code Online (Sandbox Code Playgroud)

docker docker-registry

87
推荐指数
4
解决办法
12万
查看次数

在Emacs键映射值中显示键

当我查询keymap的当前值时,例如with M-: (current-local-map),它向我展示了这些内容:

Value: 
(keymap
 (S-mouse-2 . muse-follow-name-at-mouse-other-window)
 (mouse-2 . muse-follow-name-at-mouse)
 (33554445 . muse-follow-name-at-point-other-window)
 (S-return . muse-follow-name-at-point-other-window)
 (13 . muse-follow-name-at-point)
 (return . muse-follow-name-at-point)
 keymap
 (67108924 . muse-decrease-list-item-indentation)
 (67108926 . muse-increase-list-item-indentation)
 (M-return . muse-insert-list-item)
 (33554441 . muse-previous-reference)
 (S-iso-lefttab . muse-previous-reference)
 (S-tab . muse-previous-reference)
 (S-mouse-2 . muse-follow-name-at-mouse-other-window)
 (mouse-2 . muse-follow-name-at-mouse)
 (33554445 . muse-follow-name-at-point-other-window)
 (9 . muse-next-reference)
 (tab . muse-next-reference)
 (3 keymap
    (19 . muse-search)
    (2 . muse-find-backlinks)
    (tab . muse-insert-thing)
    (9 . muse-insert-thing)
    (16 . muse-project-publish)
    (6 . muse-project-find-file)
    (61 . …
Run Code Online (Sandbox Code Playgroud)

emacs elisp

26
推荐指数
5
解决办法
5076
查看次数

通过Reactor Spring处理异常

我正在使用Reactor 2和Spring 4.这是我的典型代码 - Consumer使用存储库

@Consumer
public class ApplicationService {

   @Selector(value="/applications/id", type = SelectorType.URI)
   @ReplyTo
   public Application byApplicationId(String id) throws ApplicationNotFoundException {
      Application app = appRepo.findOne(id);
      if(app == null) 
        throw new ApplicationNotFoundException("Application `" + id + "` could not be found.");
      return app;
   }
}
Run Code Online (Sandbox Code Playgroud)

然后我有一个控制器将请求传递给eventBus我传递请求并返回一个Promise

@RestController
@RequestMapping("/applications")
public class ApplicationsController {
   @RequestMapping(value = "/{id}", method = GET, produces = APPLICATION_JSON_VALUE)
   public Promise<Event<Application>> byApplicationId(@PathVariable final String id) {
      final Promise<Event<Application>> p = Promises.prepare(env);
      eventBus.sendAndReceive("/applications/id", Event.wrap(id), p); …
Run Code Online (Sandbox Code Playgroud)

java spring spring-mvc reactor project-reactor

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

在将表达式放入lambda之前对其进行求值

我的代码中包含以下代码.emacs:

(dolist (mode '(scheme emacs-lisp lisp clojure))
  (add-hook
   (intern (concat (symbol-name mode) "-mode-hook"))
   (lambda ()
     (progn
        (run-programming-hook)
        (message "%s" (concat (symbol-name mode) "-mode")))
Run Code Online (Sandbox Code Playgroud)

显然,mode当lambda执行时,该变量是无效的.问题是我如何mode以这样的方式评估它不是作为变量进入lambda而是作为该变量中的值进入?换句话说,我希望在运行钩子时打印消息.

lisp emacs elisp

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

Maven插件Mojo配置默认参数值

我有一个maven插件和一个看起来有点接近的简单Mojo

public abstract class AbstractSetupMojo extends AbstractMojo {
    @Parameter(property="targetHost", defaultValue="localhost") 
    private String targetHost;
    @Parameter(property="targetPort", defaultValue="27017")
    private Integer targetPort;
    @Parameter(property="targetDbName", required=true) 
    private String targetDbName;
    @Parameter(property="sourceHost", defaultValue="${mojo.configuration.targetHost}") 
    private String sourceHost;
    @Parameter(property="sourcePort", defaultValue="${mojo.configuration.targetPort}")
    private Integer sourcePort;
    @Parameter (property="sourceDbName", defaultValue="${mojo.configuration.targetDbName}")
    private String sourceDbName;
    @Parameter(property="scriptsPath")
    private File scriptsPath;
}     
Run Code Online (Sandbox Code Playgroud)

其他Mojos正在扩展这一个.因此,我们的想法是将source*参数设置为相应target*参数的值.还设置了一些默认值.

在测试中我有类似的东西

public class GenerateMojoTest extends AbstractMojoTestCase {

    protected void setUp() throws Exception {
        super.setUp();
    }

    public void testConfiguration() throws Exception {
        File pom = getTestFile("src/test/resources/test-project-1/pom.xml");
        assertNotNull(pom);
        assertTrue(pom.exists());
        GenerateMojo generateMojo = (GenerateMojo)lookupMojo("generate", …
Run Code Online (Sandbox Code Playgroud)

java maven-plugin maven-3 maven

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

Docker撰写覆盖

我有两个Docker Compose文件,docker-compose.yml看起来像这样

version: '2'
services:
  mongo:
    image: mongo:3.2
    restart: always
    volumes:
      - /mnt/data/mongodb/data/db:/data/db
  redis:
    image: redis:3
    restart: always
  application:
    build: .
    image: localregistry:5000/mz_application:latest
    ports:
      - "3000:3000"
    links:
      - mongo:mongo
      - redis:redis
    restart: always
Run Code Online (Sandbox Code Playgroud)

部署时使用的另一个文件 docker-deploy.yml

version: '2'
services:
  application:
    image: localregistry5000/mz_application:latest
    links:
      - mongo:mongo
      - redis:redis
    restart: always

  nginx:
    restart: always
    build: ./nginx/
    ports:
      - "80:80"
    volumes_from:
      - application
    restart: always
    links:
      - application:application
    command: /bin/bash -c "nginx -g 'daemon off;'"
    tty: false
Run Code Online (Sandbox Code Playgroud)

因此,使用这些文件的想法如下。当我跑步

docker-compose build
Run Code Online (Sandbox Code Playgroud)

它会生成图像并将其推送到我们的本地Docker注册表。

docker-compose …
Run Code Online (Sandbox Code Playgroud)

docker docker-compose

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

Java 8不兼容类型

这是简单的代码

import java.util.ArrayList;
import java.util.Collections;
import java.util.HashMap;
import java.util.Map;

public class SimpleTest {

    public static void main(String[] args) {
    final ArrayList<Map<String, Object>> maps = newArrayList(
        createMap("1", "a", Collections.EMPTY_MAP, Collections.EMPTY_MAP),
        createMap("2", "b", Collections.EMPTY_MAP, Collections.EMPTY_MAP),
        createMap("3", "c", Collections.EMPTY_MAP, Collections.EMPTY_MAP)
    ); 

    System.out.println(" maps = " + maps);
    }

    public static Map<String, Object> createMap(String value1, String value2, Map<String, Object> object1, Map<String, Object> object2) {
       Map<String, Object> map = new HashMap<>();
       map.put("value1", value1);
       map.put("value1", value1);
       map.put("object1", object1);
       map.put("object2", object2);
       return map;
    }    

    public static <E> …
Run Code Online (Sandbox Code Playgroud)

java compatibility javac java-7 java-8

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

覆盖Maven插件参数

我有一个Maven插件,它在POM文件中配置为

<build>
    <plugins>
        <plugin>
            <groupId>com.example</groupId>
            <artifactId>example-maven-plugin</artifactId>
            <configuration>
                <scriptsPath>scripts</scriptsPath>
            </configuration>
        </plugin>
    </plugins>
</build>
Run Code Online (Sandbox Code Playgroud)

现在我想scriptsPath从命令行覆盖它,然后运行

mvn -X example-maven-plugin:goal -DscriptsPath=scripts1
Run Code Online (Sandbox Code Playgroud)

我可以看到的价值scriptsPath仍然存在,scripts而没有scripts1。可以从命令行覆盖配置参数吗?

maven

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

Hg Git Pull 导致打开文件过多错误

我有一个跟踪 git 存储库的 Mercurial 存储库。它在 Windows 10 上运行正常。现在我将它作为目录移动到 Mac,然后运行hg reset -Ca只是为了清理它。现在我正在尝试运行hg pull它会导致如下错误:

% hg --traceback --verbose pull                                                                                                255 ?
pulling from git+https://someserver/somerepo.git
Traceback (most recent call last):
  File "/Users/user/.pyenv/versions/2.7.14/lib/python2.7/site-packages/mercurial/scmutil.py", line 154, in callcatch
  File "/Users/user/.pyenv/versions/2.7.14/lib/python2.7/site-packages/mercurial/dispatch.py", line 314, in _runcatchfunc
.....
  File "/Users/user/.pyenv/versions/2.7.14/lib/python2.7/site-packages/dulwich/pack.py", line 1004, in __init__
  File "/Users/user/.pyenv/versions/2.7.14/lib/python2.7/site-packages/dulwich/file.py", line 90, in GitFile
IOError: [Errno 24] Too many open files: '/Users/user/Projects/somerepo/.hg/git/objects/pack/pack-c03bf69ae597535d876f0dd30ddd6458f2c3f1ff.pack'
abort: Too many open files: /Users/user/Projects/somerepo/.hg/git/objects/pack/pack-c03bf69ae597535d876f0dd30ddd6458f2c3f1ff.pack
Run Code Online (Sandbox Code Playgroud)

我检查了一下,看起来我有最新版本的hg-gitdulwich

dulwich (0.18.6)
hg-git (0.8.10)
Run Code Online (Sandbox Code Playgroud)

Mercurial 也是最新的 …

python macos mercurial hg-git dulwich

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

Windows Emacs 25.3 光标类型

cursor-type在 Windows 上的 Emacs 25.3 和 25.2 中遇到更改问题。图片值一千字,所以在这里

在此处输入图片说明

没有任何定制。

我尝试直接或通过框架参数更改cursor-type为 abox并且它始终是bar. 即使cursor-type设置t为 abar 有没有办法改变它?

emacs

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

macOS 上的 Terminal.app 不保留首选项

不久前我曾经使用过 mac os,现在我又回来了。我注意到定期首选项更新至少对 Terminal.app 不起作用。这种情况发生在任何高山脉上。

  1. 启动终端.app
  2. Preferences通过菜单或转到您的Cmd-,
  3. 更改某些内容,例如使用不同的配置文件作为默认值。
  4. 退出应用程序
  5. 再次启动 Terminal.app。您的偏好设置更改将被重置。

这是怎么回事 ?对我来说看起来像是一个错误,也许自从 Lion 发布以来我错过了一些东西。

macos terminal operating-system macos-high-sierra

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