Docker安装操作常用服务器软件

1、查看centos版本

rpm -q centos-release

2、更新yum

yum update -y

3、删除以前版本的docker

yum remove docker \
                  docker-client \
                  docker-client-latest \
                  docker-common \
                  docker-latest \
                  docker-latest-logrotate \
                  docker-logrotate \
                  docker-engine

4、安装yum工具

如果前面更新了,这一步可以省略

yum install -y yum-utils device-mapper-persistent-data lvm2

5、设置阿里云镜像,速度快

yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo

6、设置CentOS的安装密钥

rpm --import https://mirrors.aliyun.com/centos/RPM-GPG-KEY-CentOS-7

7、查看docker版本

yum list docker-ce --showduplicates | sort -r

8、安装最新版本的docker

yum install docker-ce docker-ce-cli containerd.io

9、启动

systemctl start docker

10、查看版本

docker version

11、设置自动启动

systemctl enable docker

12、查看下载的镜像

docker images

13、列出远程镜像

docker search <镜像名称>

14、退出容器

ctrl+D

15、查看日志

docker logs NAMES

16、设置阿里云镜像,快速下载软件

sudo mkdir -p /etc/docker
sudo tee /etc/docker/daemon.json <<-'EOF'
{
  "registry-mirrors": ["https://你申请的镜像号.mirror.aliyuncs.com"]
}
EOF
sudo systemctl daemon-reload
sudo systemctl restart docker

17、安装mysql

(1) 下载

docker pull mysql

(2) 启动mysql

docker run -d --restart=always --name mysql -p 3306:3306 -v /home/mysql/data:/var/lib/mysql -v /home/mysql/conf:/etc/mysql/conf.d -v /home/mysql/log:/var/log/mysql -e TZ=Asia/Shanghai -e MYSQL_ROOT_PASSWORD=123456 mysql:latest --character-set-server=utf8mb4 --collation-server=utf8mb4_general_ci

(3) 停止mysql

// 查看所有的容器
docker ps -a
// 停止容器
docker stop mysql
// 删除容器
docker rm mysql
// 删除镜像
docker rmi mysql

(4) 配置mysql

vi /home/mysql/conf/my.cnf

[client]
default-character-set=utf8
​
[mysql]
default-character-set=utf8
​
[mysqld]
init_connect='SET collation_connection = utf8_unicode_ci'
init_connect='SET NAMES utf8'
character-set-server=utf8
collation-server=utf8_unicode_ci
skip-character-set-client-handshake
skip-name-resolve

(5) 进入交互容器中

docker exec -it mysql01 bash

18、安装redis

(1) 下载redis最新版

docker pull redis

(2) 启动redis

mkdir -p /home/redis/conf
touch /home/redis/conf/redis.conf
​
docker run -p 6379:6379 --name redis \
-v /home/redis/data:/data \
-v /home/redis/conf/redis.conf:/etc/redis/redis.conf \
-d redis redis-server /etc/redis/redis.conf

(3) 配置redis持久化

vi /home/redis/conf/redis.conf 加入appendonly yes

(4) 自启动redis

docker update redis --restart=always

19、安装elasticsearch

(1)下载

docker pull elasticsearch:7.4.2  // 检查和存储数据
docker pull kibana:7.4.2   // 可视化检索数据
修改镜像名称:docker tag <镜像ID> elasticsearch
删除原先的镜像: docker rmi <旧的镜像名称>

(2)配置

mkdir -p /home/elasticsearch/config
mkdir -p /home/elasticsearch/data
echo "http.host: 0.0.0.0" >> /home/elasticsearch/config/elasticsearch.yml

(3)启动ES

docker run --name elasticsearch -p 9200:9200 -p 9300:9300 \
-e  "discovery.type=single-node" \
-e ES_JAVA_OPTS="-Xms128m -Xmx256m" \
-v /home/elasticsearch/config/elasticsearch.yml:/usr/share/elasticsearch/config/elasticsearch.yml \
-v /home/elasticsearch/data:/usr/share/elasticsearch/data \
-v  /home/elasticsearch/plugins:/usr/share/elasticsearch/plugins \
-d elasticsearch:7.4.2

(4)启动kibana:7.4.2

docker run --name kibana -e ELASTICSEARCH_HOSTS=http://192.168.1.100:9200 -p         5601:5601 -d kibana:7.4.2
​
chmod -R 777 /home/elasticsearch/  // 修改目录权限
docker logs elasticsearch  // 查看日志
    
elasticsearch有2个端口,分别如下:
9300端口: ES节点之间通讯使用
9200端口: ES节点 和 外部 通讯使用

(5)进入容器

docker exec -it elasticsearch /bin/bash

(6)安装 ik 分词器

./bin/elasticsearch-plugin install https://github.com/medcl/elasticsearch-analysis-ik/releases/download/v8.0.0/elasticsearch-analysis-ik-8.0.0.zip

(7)修改 es 配置文件

vi ./config/elasticsearch.yml ​ cluster.name: "docker-cluster" ​ network.host: 0.0.0.0

# minimum_master_nodes need to be explicitly set when bound on a public IP
# set to 1 to allow single node clusters
# Details: https://github.com/elastic/elasticsearch/pull/17288
discovery.zen.minimum_master_nodes: 1
​
# just for elasticsearch-head plugin
http.cors.enabled: true
http.cors.allow-origin: "*"

20、安装zookeeper(单点部署)

(1)下载

docker pull zookeeper:3.4.9

(2)运行

docker run -d -p 2181:2181 -v /home/zookeeper/data:/data -v /home/zookeeper/conf:/conf  --name=zookeeper --privileged=true zookeeper:3.4.9

如果运行失败,可以关掉防火墙,并把挂载本地的目录权限设置最高

查看状态:systemctl status firewalld
关闭防火墙: systemctl stop firewalld
禁用防火墙:systemctl disable firewalld
​
// 设置防火墙
chmod 777 /home/zookeeper/data  
chmod 777 /home/zookeeper/conf

(3)自动运行

docker update zk --restart=always

21、安装Kafka(单点部署)

(1)下载

docker pull bitnami/kafka

(2)运行

docker run -d --name kafka -p 9092:9092 \
-e KAFKA_BROKER_ID=0 \
-e KAFKA_ZOOKEEPER_CONNECT=192.168.1.199:2181 \
-e ALLOW_PLAINTEXT_LISTENER=yes \
-e KAFKA_ADVERTISED_LISTENERS=PLAINTEXT://192.168.1.199:9092 \
-e KAFKA_LISTENERS=PLAINTEXT://0.0.0.0:9092 \
-t bitnami/kafka

(3)自动运行

docker update kafka --restart=always

(4)进行容器

docker exec -it kafka /bin/sh

(5)进入 目录

$ cd /opt/bitnami/kafka/bin/

(6)生产者发送消息

$ ./kafka-console-producer.sh --broker-list localhost:9092 --topic sun

// 发送消息
​
> {"datas":[{"channel":"","metric":"temperature","producer":"ijinus","sn":"IJA0101-00002245","time":"1543207156000","value":"80"}],"ver":"1.0"}

(7)消费者接收消息

$ ./kafka-console-consumer.sh --bootstrap-server localhost:9092 --topic sun --from-beginning

版权声明:本文为Tiger_Paul原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。