SpringBoot整合ElasticSearch(一)

下载镜像:docker pull registry.docker-cn.com/library/elasticsearch

使用 --registry-mirror 配置 Docker 守护进程

您可以配置 Docker 守护进程默认使用 Docker 官方镜像加速。这样您可以默认通过官方镜像加速拉取镜像,而无需在每次拉取时指定 registry.docker-cn.com。

您可以在 Docker 守护进程启动时传入 --registry-mirror 参数:

$ docker --registry-mirror=https://registry.docker-cn.com daemon
maixiao@MaiziMacBook-Pro: ~/Docker
$ docker pull registry.docker-cn.com/library/elasticsearch                                                                                  [17:21:28]
Using default tag: latest
latest: Pulling from library/elasticsearch
05d1a5232b46: Pull complete
5cee356eda6b: Pull complete
89d3385f0fd3: Pull complete
65dd87f6620b: Pull complete
78a183a01190: Pull complete
1a4499c85f97: Pull complete
2c9d39b4bfc1: Downloading [=============>                              ]33.07MB/122.1MB
1b1cec2222c9: Download complete
59ff4ce9df68: Download complete
1976bc3ee432: Download complete
5af49e8af381: Download complete
42c8b75ff7af: Download complete
7e6902915254: Download complete
99853874fa54: Download complete
596fbad6fcff: Download complete

查看镜像:

maixiao@MaiziMacBook-Pro: ~/Docker
$ docker  images                                                                                                                            [17:26:46]
REPOSITORY                                     TAG                 IMAGE ID            CREATED             SIZE
registry.docker-cn.com/library/elasticsearch   latest              5acf0e8da90b        5 months ago        486MB

安装镜像:

docker run -e ES_JAVA_OPTS="-Xms256m -Xmx256m" -d -p 9200:9200 -p 9300:9300 --name ES01 5acf0e8da90b

maixiao@MaiziMacBook-Pro: ~/Docker
$ docker  run  -e ES_JAVA_OPTS="-Xms256m -Xmx256m" -d -p 9200:9200 -p 9300:9300 --name ES01 5acf0e8da90b  
672b2aecff15b2c2fdeaa654759c59b5835804af02d58fd0560124d442047263

maixiao@MaiziMacBook-Pro: ~/Docker
$ docker ps                                                                                                                                 [17:39:20]
CONTAINER ID        IMAGE               COMMAND                  CREATED             STATUS              PORTS                                            NAMES
672b2aecff15        5acf0e8da90b        "/docker-entrypoint.…"   19 seconds ago      Up 18 seconds       0.0.0.0:9200->9200/tcp, 0.0.0.0:9300->9300/tcp   ES01

创建新Docker容器时出现“The container name "/xxx" is already in use by container xxxxxxxxxxx...”问题的解决办法

详细错误提示:
/usr/bin/docker-current: Error response from daemon: Conflict. The container name "/xxx" is already in use by container e3274a72e8d62a0f3022d3201405ce586147b3031c1232452d001ee41fb9c938. You have to remove (or rename) that container to be able to reuse that name..

下面举例说明。

列出本地镜像:

docker images

REPOSITORY          TAG                 IMAGE ID            CREATED             SIZE
docker.io/tomcat    8.5.35              78b258e36eed        2 weeks ago         463 MB
docker.io/tomcat    latest              6759d91a032b        3 weeks ago         463 MB


创建新的容器:

docker run --name tomcat8080 -d -p 8080:8080 tomcat

/usr/bin/docker-current: Error response from daemon: Conflict. The container name "/tomcat8080" is already in use by container e3274a72e8d62a0f3022d3201405ce586147b3031c1232452d001ee41fb9c938. You have to remove (or rename) that container to be able to reuse that name..
See '/usr/bin/docker-current run --help'.

上面创建新容器出现了错误,提示:容器名被占用,须移除或重命名后才能使用这个容器名。

【解决办法】

  1. 先查看所有的容器

    docker ps -a
    
    CONTAINER ID        IMAGE               COMMAND             CREATED             STATUS                        PORTS               NAMES
    e3274a72e8d6        tomcat              "catalina.sh run"   2 weeks ago         Exited (130) 19 minutes ago                       tomcat8080
    

    看到了这个名为 “tomcat8080” 的容器,并且这个容器是非运行(Exited)状态。

    注:“docker ps” 是查看当前运行的容器,“docker ps -a” 是查看所有容器(包括停止的)。

  2. 移除这个“tomcat8080”容器

    docker rm e3274a72e8d6
    
    e3274a72e8d6
    

    再看,容器已经移除:

    docker ps -a
    
    CONTAINER ID        IMAGE               COMMAND             CREATED             STATUS              PORTS               NAMES
    
  1. 然后再创建新容器

    docker run --name tomcat8080 -d -p 8080:8080 tomcat
    
    af52e9ac72c0393b5468cccf235ad70a7bf6a6b4ed30122b345b3758875d8911
    
    

    新容器创建成功,并且是运行状态:

    docker ps -a
    
    CONTAINER ID        IMAGE               COMMAND             CREATED             STATUS              PORTS                    NAMES
    af52e9ac72c0        tomcat              "catalina.sh run"   7 seconds ago       Up 5 seconds        0.0.0.0:8080->8080/tcp   tomcat8080
    

验证安装:

http://localhost:9200/

{
  "name" : "4JYSR3i",
  "cluster_name" : "elasticsearch",
  "cluster_uuid" : "JAGWlv_qTkqD7e-KAUqy9A",
  "version" : {
    "number" : "5.6.12",
    "build_hash" : "cfe3d9f",
    "build_date" : "2018-09-10T20:12:43.732Z",
    "build_snapshot" : false,
    "lucene_version" : "6.6.1"
  },
  "tagline" : "You Know, for Search"
}

Adding transport node : 127.0.0.1:9300
write and flush on the network layer failed (channel: [id: 0x4dcbb08c,

错误原因 可能只之前的连接没有断开 就直接停止了服务 ,重启docker就行

你可能感兴趣的:(SpringBoot整合ElasticSearch(一))