Docker安装各种软件

目录

一.Nacos

二.MySQL5.7

三.Tomcat

四.Clickhouse

五.Redis

六.Zookeeper

七.Kafka

九.Fastdfs

十.RabbitMQ

十一.Elasticsearch

十二.Kibana

十三.IK分词器

十四.MinIo

十五.MongoDB


一.Nacos

1.使用docker拉取镜像

docker pull nacos/nacos-server:1.2.0

2:运行容器

docker run --env MODE=standalone --name nacos --restart=always -d -p 8848:8848 nacos/nacos-server:1.2.0

Docker安装各种软件_第1张图片

3.访问地址

http://ip地址:8848/nacos

二.MySQL5.7

1.下载镜像

docker pull mysql:版本号

版本号: 一般是5.7或者8
5版本的安装比较简单, 不用手动即可远程访问

2.运行容器

docker run --name some-secret-mysql -d -p 3306:3306 -e MYSQL_ROOT_PASSWORD=root mysql:5.7 --default_storage_engine=InnoDB --lower_case_table_names=1 --max_allowed_packet=50M --character-set-server=utf8mb4 --sql_mode=STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION

强制参数 MYSQL_ROOT_PASSWORD=root

将mysql的root用户密码设置为root

三.Tomcat

1.下载镜像

docker pull tomcat:版本号

7,8,9版本现在较为常用

2.运行容器

一般tomcat都是用来发布一个webapp的,所以,如果你想发布一个webapp,如下

如果你得到的是war,请解压为文件夹,然后将文件夹重命名为ROOT

docker run --name some-tomcat -p 8080:8080 -d -t -v /root/selton/mywebapp:/usr/local/tomcat/webapps tomcat:版本号

/root/selton/mywebapp, 这个文件夹里面有你的ROOT文件夹

四.Clickhouse

1.下载镜像

clickhouse在dockerhub的官网

2.运行容器

docker run -dit --name some-clickhouse -e CLICKHOUSE_DB=test1 -e CLICKHOUSE_USER=root -e CLICKHOUSE_DEFAULT_ACCESS_MANAGEMENT=1 -e CLICKHOUSE_PASSWORD=hexin -p 9000:9000 -p 8123:8123 clickhouse/clickhouse-server
 

用户名root,密码hexin,连接端口8123

五.Redis

1.下载镜像

docker pull redis

2.运行容器

docker run --name some-redis -d -it -p 16379:6379 redis --requirepass "这里设置密码" --appendonly yes

如果想要持久化redis中的数据,添加数据卷映射

docker run --name some-redis -d -it -v /your/host/want/store/redisdata/path:/data -p 16379:6379 redis --requirepass "这里设置密码" --appendonly yes
 

六.Zookeeper

1.下载镜像

docker pull zookeeper

2.运行容器

docker network create app-bridge --driver bridge
docker run --name some-zookeeper --network app-bridge -e ALLOW_ANONYMOUS_LOGIN=yes -d -it -p 2181:2181 bitnami/zookeeper
 

七.Kafka

注意: 此kafka的安装依赖与zookeeper的安装

#节点1
docker run -d --name=kafka2 \
 -p 9092:9092 \
 -e ALLOW_PLAINTEXT_LISTENER=yes \
 -e KAFKA_CFG_ZOOKEEPER_CONNECT=服务器IP地址:2181 \
 -e KAFKA_BROKER_ID=2 \
 -e KAFKA_NODE_ID=2   \
 -e KAFKA_ENABLE_KRAFT=false \
 -e KAFKA_HEAP_OPTS="-Xmx180m -Xms180m" \
 -e KAFKA_ADVERTISED_LISTENERS=PLAINTEXT://服务器IP地址:9092 \
 -e KAFKA_LISTENERS=PLAINTEXT://0.0.0.0:9092  \
 bitnami/kafka
 
 # 节点2
 docker run -d --name=kafka3 \
 -p 9093:9092 \
 -e ALLOW_PLAINTEXT_LISTENER=yes \
 -e KAFKA_CFG_ZOOKEEPER_CONNECT=服务器IP地址:2181 \
 -e KAFKA_BROKER_ID=3 \
 -e KAFKA_NODE_ID=3   \
 -e KAFKA_ENABLE_KRAFT=false \
  -e KAFKA_HEAP_OPTS="-Xmx180m -Xms180m" \
 -e KAFKA_ADVERTISED_LISTENERS=PLAINTEXT://服务器IP地址:9093 \
 -e KAFKA_LISTENERS=PLAINTEXT://0.0.0.0:9092  \
 bitnami/kafka

ALLOW_PLAINTEXT_LISTENER=yes:允许使用PLAINTEXT侦听器

KAFKA_CFG_ZOOKEEPER_CONNECT:zookeeper集群地址,多节点,分割

KAFKA_BROKER_ID:节点id,用来指定 Kafka 集群中 broker 的唯一标识,默认值为 -1。如果没有设置,那么 Kafka会自动生成一个

KAFKA_ADVERTISED_LISTENERS:绑定公网 IP 供外部客户端使用

KAFKA_LISTENERS:绑定私网 IP 地址供 broker 间通信使用

docker-compose.yml

services:
  jobmanager:
    image: flink:latest
    ports:
      - "18001:8081"
    command: jobmanager
    environment:
      - |
        FLINK_PROPERTIES=
        jobmanager.rpc.address: jobmanager

  taskmanager:
    image: flink:latest
    depends_on:
      - jobmanager
    command: taskmanager
    scale: 1
    environment:
      - |
        FLINK_PROPERTIES=
        jobmanager.rpc.address: jobmanager
        taskmanager.numberOfTaskSlots:
 

九.Fastdfs

1.下载镜像

docker pull delron/fastdfs

2.运行容器

docker run -d --network=host --name some-tracker -v /var/fdfs/tracker:/var/fdfs delron/fastdfs tracker

#注意: 需要暴露22122端口 23000 否则下面的创建会有问题 8888端口也需要暴露 将来通过这个端口访问图片
 

docker run -d --network=host --name some-storage -e TRACKER_SERVER=服务器IP地址:22122 -v /var/fdfs/storage:/var/fdfs -e GROUP_NAME=group1 delron/fastdfs storage
 

十.RabbitMQ

docker run \
 -e RABBITMQ_DEFAULT_USER=xjy \
 -e RABBITMQ_DEFAULT_PASS=123456 \
 -v mq-plugins:/plugins \
 --name mq \
 --hostname mq \
 -p 15672:15672 \
 -p 5672:5672 \
 -d \
 rabbitmq:3.8-management

可以看到在安装命令中有两个映射的端口:

  • 15672:RabbitMQ提供的管理控制台的端口

  • 5672:RabbitMQ的消息发送处理接口

安装完成后,我们访问 http://ip:15672即可看到管理控制台。首次访问需要登录,默认的用户名和密码在配置文件中已经指定了。 登录后即可看到管理控制台总览页面:

Docker安装各种软件_第2张图片

十一.Elasticsearch

docker run -d \

--name es \

-e "ES_JAVA_OPTS=-Xms512m -Xmx512m" \

-e "discovery.type=single-node" \

-v es-data:/usr/share/elasticsearch/data \

-v es-plugins:/usr/share/elasticsearch/plugins \

--privileged \

-p 9200:9200 \

-p 9300:9300 \

elasticsearch:7.12.1

注意,这里我们采用的是elasticsearch的7.12.1版本,由于8以上版本的JavaAPI变化很大,在企业中应用并不广泛,企业中应用较多的还是8以下的版本。

安装完成后,访问9200端口,即可看到响应的Elasticsearch服务的基本信息:

Docker安装各种软件_第3张图片

十二.Kibana


docker run -d \

--name kibana \

-e ELASTICSEARCH_HOSTS=http://es:9200 \

-p 5601:5601 \

kibana:7.12.1

安装完成后,直接访问5601端口,即可看到控制台页面:

Docker安装各种软件_第4张图片

选择Explore on my own之后,进入主页面:

Docker安装各种软件_第5张图片

然后选中Dev tools,进入开发工具页面:

Docker安装各种软件_第6张图片

十三.IK分词器

方案一:在线安装

运行一个命令即可:

docker exec -it es ./bin/elasticsearch-plugin install https://github.com/medcl/elasticsearch-analysis-ik/releases/download/v7.12.1/elasticsearch-analysis-ik-7.12.1.zip

然后重启es容器:

docker restart es

方案二:离线安装

如果网速较差,也可以选择离线安装。

首先,查看之前安装的Elasticsearch容器的plugins数据卷目录:

docker volume inspect es-plugins

结果如下:


[

     {    "CreatedAt": "2024-11-06T10:06:34+08:00",

        "Driver": "local",

        "Labels": null,

        "Mountpoint": "/var/lib/docker/volumes/es-plugins/_data",

         "Name": "es-plugins",

        "Options": null,

         "Scope": "local"

        }

]

可以看到elasticsearch的插件挂载到了/var/lib/docker/volumes/es-plugins/_data这个目录。我们需要把IK分词器上传至这个目录。

提前下载好ik分词器插件,你需要对其解压,然后上传至服务器的/var/lib/docker/volumes/es-plugins/_data这个目录.

最后,重启es容器:

docker restart es

十四.MinIo

docker search minio

docker pull minio/minio

docker run -p 9000:9000 -p 9090:9090

--name minio -d

--restart=always

-e "MINIO_ACCESS_KEY=minio"

-e "MINIO_SECRET_KEY=minio123"

-v /home/data:/data -v /home/config:/root/.minio minio/minio server /data

--console-address ":9000" --address ":9090"

十五.MongoDB

拉取镜像

docker pull mongo

创建容器

docker run -di --name mongo-service --restart=always -p 27017:27017 -v ~/data/mongodata:/data mongo

你可能感兴趣的:(服务器,docker,容器,运维)