0%

[TOC]

远程debug java 程序

在 dockerfile 最后加上 如下命令即可

ENTRYPOINT [“java”,”-agentlib:jdwp=transport=dt_socket,address=5005,server=y,suspend=n”,”-Djava.security.egd=file:/dev/./urandom”,”-jar”,”/app.jar”]

删除无用镜像和容器

方法一

docker system prune -f

方法二

docker ps -a | grep ‘Exited’ | awk ‘{print $1}’ | xargs docker stop | xargs docker rm

docker images | grep ‘‘ | awk ‘{print $3}’ | xargs docker rmi

修改docker存储位置

https://stackoverflow.com/questions/24309526/how-to-change-the-docker-image-installation-directory/34731550#34731550

  1. 编辑daemon.json

/etc/docker/daemon.json中添加

1
2
3
{
"data-root": "/home/k8s/docker"
}
  1. 复制原数据

/var/lib/docker内容拷贝到新文件路径.

  1. 重启
1
2
sudo systemctl daemon-reload
sudo systemctl restart docker

调用远程docker

https://success.docker.com/article/how-do-i-enable-the-remote-api-for-dockerd
https://docs.docker.com/engine/security/https/

服务端设置

在作为docker远程服务的centos7机器中配置如下:

1、在 /etc/systemd/system/docker.service.d/startup_options.conf,配置远程访问。

1
2
3
4
# /etc/systemd/system/docker.service.d/override.conf
[Service]
ExecStart=
ExecStart=/usr/bin/dockerd -H fd:// -H tcp://0.0.0.0:2376

2、docker重新读取配置文件,重新启动docker服务

1
2
# systemctl daemon-reload
# systemctl restart docker.service

3、查看docker是否已开启远程

1
curl http://localhost:2376/version

客户端

在环境 bash_profile 中添加 DOCKER_HOST 即可

export DOCKER_HOST=”tcp://10.100.1.130:2376”

通过pid 查找 服务

http://www.huilog.com/?p=1133

查找k8s pod name

1
docker inspect -f "{{.Id}} {{.State.Pid}} {{.Config.Hostname}}"  $(docker ps -q) |grep 8888

简介

jar命令有生成、查看、更新、解开jar包的作用,包含META-INF/MANIFEST.MF文件。
它是jar包生成的时候,自动创建的,主要负责指定jar包的main文件位置和当前文件夹。

1
jar {ctxui}[vfm0Me] [jar-file] [manifest-file] [entry-point] [-C dir] `files` ...
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
选项包括:
-c 创建新的归档文件
-t 列出归档目录
-x 解压缩已归档的指定(或所有)文件
-u 更新现有的归档文件
-v 在标准输出中生成详细输出
-f 指定归档文件名
-m 包含指定清单文件中的清单信息
-e 为捆绑到可执行 jar 文件的独立应用程序
指定应用程序入口点
-0 仅存储;不使用任何 ZIP 压缩
-M 不创建条目的清单文件
-i 为指定的 jar 文件生成索引信息
-C 更改为指定的目录并包含其中的文件
如果有任何目录文件,则对其进行递归处理。
清单文件名、归档文件名和入口点名的指定顺序与 "m"、"f" 和 "e" 标志的指定顺序相同。

例子

  1. 压缩包:
    jar cvf filename.jar a.class b.class: 压缩指定文件;
    jar cvf weibosdkcore.jar *: 全部压缩;

  2. 解压包:
    jar xvf test.jar

原装电池 容量 2900

2018-04-02 2500

[TOC]

HashMap不保证数据有序,LinkedHashMap保证数据可以保持插入顺序,而如果我们希望Map可以保持key的大小顺序的时候,我们就需要利用TreeMap了。

阅读全文 »

LinkedHashMap 也是一个HashMap,但是内部额外维持了一个双向链表,保存了记录的插入顺序。本文源代码参考值jdk1.8

阅读全文 »

[TOC]

Hashtable 是java一开始发布时就提供的键值映射的数据结构,而HashMap产生于JDK1.2。
虽然Hashtable比HashMap出现的早一些,但是现在Hashtable基本上已经被弃用了。
另外,Hashtable没有遵循驼峰式命名。

阅读全文 »