安装docker,用docker安装redis、nexus、zookeeper、zipkin、ElasticSearch等工具

特别说明centos 6,7安装docker命令不同,

例如1:安装 【centos6 命令 yum install docker-io】【centos7 命令yum -y install docker-ce】

例如2:容器命令【docker start redis】【centos7 命令docker container start redis】一、安装 docker
docker加速网址 
https://registry.docker-cn.com

uname -r
158  yum install -y yum-utils device-mapper-persistent-data lvm2
159  yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
160  yum makecache fast
161  yum -y install docker-ce  【centos6 命令 yum install docker-io】
162  systemctl start docker   【centos6.8 启动service docker start】
163  docker run hello-world

您可以通过修改daemon配置文件/etc/docker/daemon.json来使用加速器
164  sudo mkdir -p /etc/docker
165  sudo tee /etc/docker/daemon.json <<-'EOF'
{
  "registry-mirrors": ["https://registry.docker-cn.com"]
}
EOF

166  sudo systemctl daemon-reload
167  sudo systemctl restart docker

168 

systemctl enable docker 【centos6.8开机自启动 chkconfig docker on  检查自启动chkconfig docker --list】

-----------docker容器操作命令 其他命令自行百度,不做陈述 
docker container {stop|start} nexus
docker container {stop|start} myredis
docker ps -a:列出所有的容器
docker rm 容器名:移除容器
-------------------------------------


二、安装 docker-machine【最好看官方文档,他们经常更新】
【官方文档https://docs.docker.com/machine/install-machine/】

# base=https://github.com/docker/machine/releases/download/v0.16.0 && curl -L $base/docker-machine-$(uname -s)-$(uname -m) >/tmp/docker-machine && sudo install /tmp/docker-machine /usr/local/bin/docker-machine

也可以分别执行:

base=https://github.com/docker/machine/releases/download/v0.16.0

curl -L $base/docker-machine-$(uname -s)-$(uname -m) >/tmp/docker-machine

 

sudo install /tmp/docker-machine /usr/local/bin/docker-machine
三、docker-compose【最好看官方文档,他们经常更新】
【官方文档https://docs.docker.com/compose/install/#prerequisites】

curl -L "https://github.com/docker/compose/releases/download/1.23.1/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
添加可执行权限 
$ sudo chmod +x /usr/local/bin/docker-compose
$ docker-compose --version 
$ sudo pip install docker-compose


备注 如果没有pip命令 请安装 yum -y install epel-release              yum -y install python-pip           yum clean all四、docker 安装 consul
为了真实近似模拟线上,下面的配置都是一个服务一个docker-compose.yml文件。

[root@bogon ~]# cd /data
[root@bogon data]# mkdir docker
[root@bogon data]# cd docker
[root@bogon data]# vi docker-compose.yml

version: '3.3'
services:
  consul:
    image: consul
    container_name: consul_server
    network_mode: bridge 
    ports:
      - 8300:8300
      - 8301:8301
      - 8301:8301/udp
      - 8302:8302
      - 8302:8302/udp
      - 8400:8400
      - 8500:8500
      - 53:53/udp
    command: consul agent -data-dir=/tmp/consul -server -bootstrap -domain=zhenhe.li -client=0.0.0.0


注:yml配置文件当前没有学习,等抽时间研究补充
4.1 单个运行consul-singl

docker run -d -p 8500:8500 -p 8300-8302:8300-8302 -p 8600:8600 \
--restart=always \
-h node1 \
--name consul-single  \
consul agent \
-server \
-bootstrap-expect=1 \
-node=node1 \
-rejoin \
-client 0.0.0.0 \
-advertise 192.168.17.148 \
-ui

运行一个Consul Client
docker run -d -p 8500:8500 -p 8300-8302:8300-8302 -p 8600:8600 \
--restart=always \
-h node2 \
--name consul-client  \
consul agent \
-node=node2 \
-rejoin \
-client 0.0.0.0 \
-join 192.168.17.148 \
-advertise 192.168.17.149


4.2 consul集群 
【使用Swarm编排工具集群文章】参考文章https://www.cnblogs.com/chen110xi/p/6349454.html
【不使用编排工具集群文章】https://blog.csdn.net/MichaelJScofield/article/details/81431594
五、安装registrator
说明:network_mode模式:host在linux机器上可以,如果是mac系统请使用 bridge

[root@bogon ~]# docker pull gliderlabs/registrator
[root@bogon ~]# cd /data/docker
[root@bogon data]# vi docker-compose.yml
version: '3.3'
services:
  registrator:
    image: gliderlabs/registrator
    container_name: docker_consul_registrator 
    network_mode: host
    external_links:
      - consul_server:consul
    volumes:
      - /var/run/docker.sock:/tmp/docker.sock
    command: consul://consul:8500


注:该方式还没有尝试,直接run已尝试,请查看下面内容
命令

docker run -d \
    --name=registrator \
    --net=host \
    --volume=/var/run/docker.sock:/tmp/docker.sock \
    gliderlabs/registrator:latest \
    -internal \
    -ip 192.168.17.148 \
      consul://192.168.17.148:8500


   
   
六 服务器安装nexus 

docker pull sonatype/nexus3
docker run -d -p 8081:8081 --name nexus -e NEXUS_CONTEXT=nexus -v /home/nexus-data:/nexus-data sonatype/nexus3

个人机器配置setting.xml

<?xml version="1.0" encoding="UTF-8"?>
<settings xmlns="http://maven.apache.org/SETTINGS/1.0.0"
          xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
          xsi:schemaLocation="http://maven.apache.org/SETTINGS/1.0.0 http://maven.apache.org/xsd/settings-1.0.0.xsd">

<localRepository>D:\\tools\\apache-maven-3.3.3-bin\\data\\.m2\\repository</localRepository>
<pluginGroups>
    <pluginGroup>org.sonatype.plugins</pluginGroup>
	<pluginGroup>org.eclipse.jetty</pluginGroup>
	<pluginGroup>org.apache.tomcat.maven</pluginGroup>  
</pluginGroups>
  <proxies>
  </proxies>
<servers>
	<server>
      <id>nexus</id>
      <username>admin</username>
      <password>admin123</password>
    </server>
</servers>
  <mirrors>
  <mirror> 
    <id>nexus</id> 
    <name>148nexus_maven</name> 
    <url>http://192.168.17.148:8081/nexus/repository/maven-public/</url> 
    <mirrorOf>*</mirrorOf> 
  </mirror> 
  </mirrors>
  <profiles>
  <profile>
      <id>nexus</id>
      <repositories>
        <repository>
          <id>central</id>
          <url>http://central</url>
          <releases><enabled>true</enabled></releases>
          <snapshots><enabled>true</enabled></snapshots>
        </repository>
      </repositories>
     <pluginRepositories>
        <pluginRepository>
          <id>central</id>
          <url>http://central</url>
          <releases><enabled>true</enabled></releases>
          <snapshots><enabled>true</enabled></snapshots>
        </pluginRepository>
      </pluginRepositories>
    </profile>
  </profiles>
  <activeProfiles>
    <activeProfile>nexus</activeProfile>
  </activeProfiles>
</settings>


七 服务器安装redis

cd /home/docker/redis
vi conf/redis.conf
配置redis.conf内容,自行百度
docker run \
-p 6379:6379 \
-v $PWD/data:/data \
-v $PWD/conf/redis.conf:/etc/redis/redis.conf \
--privileged=true \
--name myredis \
--restart=always \
-d redis redis-server /etc/redis/redis.conf


八、zookeeper安装
cd /home/docker
mkdir zookeeper
cd zookeeper
docker pull zookeeper
创建名为docker-compose.yml的文件【注意空格缩进,否则报错 不能是tab】
version: '3'
services:
 zk1:
  image: zookeeper
  restart: always
  container_name: zk1
  ports:
   - "2181:2181"
  environment:
   ZOO_MY_ID: 1
   ZOO_SERVERS: server.1=zk1:2888:3888 server.2=zk2:2888:3888 server.3=zk3:2888:3888
 zk2:
  image: zookeeper
  restart: always
  container_name: zk2
  ports:
   - "2182:2181"
  environment:
   ZOO_MY_ID: 2
   ZOO_SERVERS: server.1=zk1:2888:3888 server.2=zk2:2888:3888 server.3=zk3:2888:3888
 zk3:
  image: zookeeper
  restart: always
  container_name: zk3
  ports:
   - "2183:2181"
  environment:
   ZOO_MY_ID: 3
   ZOO_SERVERS: server.1=zk1:2888:3888 server.2=zk2:2888:3888 server.3=zk3:2888:3888
这个配置文件会告诉 Docker 分别运行三个 zookeeper 镜像, 并分别将本地的 2181, 2182, 2183 端口绑定到对应的容器的2181端口上.

ZOO_MY_ID 和 ZOO_SERVERS 是搭建 ZK 集群需要设置的两个环境变量, 其中 ZOO_MY_ID 表示 ZK 服务的 id, 它是1-255 之间的整数, 必须在集群中唯一. ZOO_SERVERS 是ZK 集群的主机列表.
启动 docker-compose 默认 找当前目录docker-compose.yml
COMPOSE_PROJECT_NAME=zk_cluster docker-compose up -d
或者指定配置文件启动【COMPOSE_PROJECT_NAME=zk_cluster docker-compose -f docker-zookeeper.yml up -d】

 

 

九hystrix-dashboard
docker pull kennedyoliveira/hystrix-dashboard


There is a docker image available that you can run by:
docker run --rm -ti -p 7010:7979 kennedyoliveira/hystrix-dashboard
You can pass configuration or jvm params by using the ENV VAR JVM_ARGS as with the example below:

docker run --rm -ti -p 7979:7979 -e JVM_ARGS='-Xmx2048m' kennedyoliveira/hystrix-dashboard
The docker images will have tags equal to hystrix-dashboard and hystrix-core versions, so if you need a especific version you can check there, starting with 1.5.1+
参考网址https://github.com/kennedyoliveira/standalone-hystrix-dashboard
后台运行
docker run -d -p 7010:7979 kennedyoliveira/hystrix-dashboard
十zipkin-server
docker pull openzipkin/zipkin
docker run -d -p 9411:9411 openzipkin/zipkin

以下内容 转载https://blog.csdn.net/larger5/article/details/79824373

③ Docker 使用 MongoDB
Ⅰ、下载 MongoDB 镜像
docker pull registry.docker-cn.com/library/mongo
1
Ⅱ、开启 MongoDB
 docker run --name myMongo -p 27018:27017 -d mongo:latest
1
Ⅲ、进入 MongoDB
docker exec -it myMongo mongo
1
④ Docker 使用 Solr
Ⅰ、下载 Solr 镜像
docker pull registry.docker-cn.com/library/solr
1
Ⅱ、开启 Solr 容器
docker run -d -p 8983:8983 --name mySolr solr:latest
1
Ⅲ、创建 Solr 存储
docker exec -it --user=solr mySolr bin/solr create_core -c itaem
1
Ⅳ、进入 Solr 容器
docker exec -it mySolr /bin/bash
1
⑤ Docker 使用 ElasticSearch
Ⅰ、下载 ElasticSearch 镜像
注意使用2.3版本,否则得设置内存等,同时高版本的 ES,目前稳定版的 SpringBoot 1.5.13 的 SpringData 并不支持,除非使用充满坑的 SpringBoot 2.0

docker pull registry.docker-cn.com/library/elasticsearch:2.3
1
Ⅱ、开启 ElasticSearch 容器
docker run -d --name=esNode1 -p 9200:9200 -p 9300:9300 elasticsearch:2.3 -Des.network.publish_host="120.79.197.131"
1
新版本的 ES 得设置运存-e ES_JAVA_OPTS="-Xms256m -Xmx256m",因默认是 2G ,很多小型服务器消耗不起,会因此自动关闭 ES

docker run -e ES_JAVA_OPTS="-Xms256m -Xmx256m" -d -p 9200:9200 -p 9300:9300 --name ES01 671bb2d7da44
1
Ⅲ、测试
http://120.79.197.131:9200 能进入如下界面(前面为自己的服务器的 ip 地址),则安装使用成功 
--------------------- 
作者:larger5 
来源:CSDN 
原文:https://blog.csdn.net/larger5/article/details/79824373 
版权声明:本文为博主原创文章,转载请附上博文链接!

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Docker Compose是一个用于定义和管理多个Docker容器的工具。下面是关于如何使用Docker Compose安装MySQL、Redis、MongoDB、Zookeeper、Kafka、Elasticsearch、Logstash和Kibana的简要说明。 首先,需要在机器上安装DockerDocker Compose。可以从Docker官方网站下载并按照说明进行安装。 MySQL:创建一个名为docker-compose.yml的文件并输入以下内容: ``` version: '3.1' services: mysql: image: mysql:latest restart: always environment: MYSQL_ROOT_PASSWORD: root ports: - 3306:3306 ``` 然后,在终端中导航到该文件所在的目录,并运行以下命令: ``` $ docker-compose up -d ``` Redis:创建一个名为docker-compose.yml的文件并输入以下内容: ``` version: '3.1' services: redis: image: redis:latest restart: always ports: - 6379:6379 ``` 然后,在终端中导航到该文件所在的目录,并运行以下命令: ``` $ docker-compose up -d ``` MongoDB:创建一个名为docker-compose.yml的文件并输入以下内容: ``` version: '3.1' services: mongo: image: mongo:latest restart: always ports: - 27017:27017 ``` 然后,在终端中导航到该文件所在的目录,并运行以下命令: ``` $ docker-compose up -d ``` Zookeeper、Kafka、Elasticsearch、Logstash和Kibana:可以通过使用Docker Compose来配置和运行这些服务。需要为每个服务创建一个独立的配置文件,并在docker-compose.yml中引用这些配置文件。具体配置内容可以参考各自官方文档。 在终端中导航到docker-compose.yml文件所在的目录,并运行以下命令: ``` $ docker-compose up -d ``` 以上是使用Docker Compose来安装MySQL、Redis、MongoDB、Zookeeper、Kafka、Elasticsearch、Logstash和Kibana的简要说明。根据每个服务的具体要求,可能需要进一步的配置和设置。请参考各自的官方文档以获取更详细的说明。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值