centos7安装docker及Java常用开发环境

1.安装docker

卸载旧版本

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

set up the repository

sudo yum install -y yum-utils
sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo

Install Docker Engine

sudo yum install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin

Start Docker

sudo systemctl start docker

开机自启docker

sudo systemctl enable docker

设置阿里云镜像加速(链接用你们自己的链接)

sudo mkdir -p /etc/docker
sudo tee /etc/docker/daemon.json <<-'EOF'
{
  "registry-mirrors": ["https://xxxxxxx.mirror.aliyuncs.com"]
}
EOF
sudo systemctl daemon-reload
sudo systemctl restart docker

2. 安装常用运行环境

2.1安装mysql

挂载到宿主机的四个文件夹提前建好

#创建挂载目录
mkdir -p /home/docker/mysql/{log,data,conf,mysql-files}

#创建mysql容器的命令
docker run -p 3306:3306 --restart=always --name mysql \
-v /home/docker/mysql/log:/var/log/mysql \
-v /home/docker/mysql/data:/var/lib/mysql \
-v /home/docker/mysql/conf:/etc/mysql \
-v /home/docker/mysql/mysql-files:/var/lib/mysql-files \
-e MYSQL_ROOT_PASSWORD=root -d mysql:8.0.24

2.2 安装redis

首先把挂载到宿主机的文件夹和配置文件提前建好

#创建挂载目录
mkdir -p /home/docker/redis/data

#然后创建redis容器
docker run -p 6379:6379 --restart=always --name redis \
-v /home/docker/redis/data:/data \
-d redis redis-server --appendonly yes --requirepass redis

2.3 安装nginx

首先把挂载到宿主机的文件夹提前建好

#创建挂载目录
mkdir -p /home/docker/nginx/{html,logs}

#先运行一次容器(为了拷贝配置文件):
docker run -p 80:80 --name nginx \
-v /home/docker/nginx/html:/usr/share/nginx/html \
-v /home/docker/nginx/logs:/var/log/nginx  \
-d nginx

#将容器内的配置文件拷贝到指定目录并修改目录名称
docker container cp nginx:/etc/nginx /home/docker/nginx/ && cd /home/docker/nginx && mv nginx conf && docker rm -f nginx

#使用如下命令启动Nginx服务:
docker run -p 80:80 --restart=always --name nginx \
-v /home/docker/nginx/html:/usr/share/nginx/html \
-v /home/docker/nginx/logs:/var/log/nginx  \
-v /home/docker/nginx/conf:/etc/nginx \
-d nginx

#在/home/docker/nginx/html下创建index.html文件就可以直接访问了

2.4 安装RabbitMQ

首先把挂载到宿主机的文件夹提前建好

#使用如下命令启动RabbitMQ服务:
docker run -p 5672:5672 -p 15672:15672 --restart=always --name rabbitmq \
-d rabbitmq

#进入容器并开启管理功能:
docker exec -it rabbitmq /bin/bash
rabbitmq-plugins enable rabbitmq_management

#访问15672端口输入账号密码并登录:guest guest,为了安全务必更改账号和密码

2.5 Elasticsearch安装

首先把挂载到宿主机的文件夹提前建好


#创建挂载目录
mkdir -p /home/docker/elasticsearch/{plugins,data,config} && chmod 777 /home/docker/elasticsearch/*
cd /home/docker/elasticsearch/config && vim elasticsearch.yml
#在elasticsearch.yml中输入以下内容
http.host: 0.0.0.0

#使用如下命令启动Elasticsearch服务:
docker run -p 9200:9200 -p 9300:9300 --name elasticsearch \
--restart=always \
-e "discovery.type=single-node" \
-e ES_JAVA_OPTS="-Xms256m -Xmx512m" \
-v /home/docker/elasticsearch/plugins:/usr/share/elasticsearch/plugins \
-v /home/docker/elasticsearch/data:/usr/share/elasticsearch/data \
-v /home/docker/elasticsearch/config/elasticsearch.yml:/usr/share/elasticsearch/config/elasticsearch.yml \
-d elasticsearch:7.17.5

#安装中文分词器IKAnalyzer,并重新启动:
docker exec -it elasticsearch /bin/bash
#此命令需要在容器中运行
elasticsearch-plugin install https://github.com/medcl/elasticsearch-analysis-ik/releases/download/v7.17.5/elasticsearch-analysis-ik-7.17.5.zip

#重启容器
docker restart elasticsearch

#9200端口访问es

2.6 安装Logstash

首先把挂载到宿主机的文件夹提前建好

#创建/home/docker/logstash目录,并且创建配置文件logstash.conf
mkdir -p /home/docker/logstash/{pipeline,config}
vim /home/docker/logstash/pipeline/logstash.conf
#日志采集入口,项目的logback会和这个input交互
input {
  tcp {
    #模式为 server
    mode => "server"
    #ip为logstash的地址
    host => "192.168.174.20"
    #监听的端口,以此端口获得日志数据
    port => 9413
    #数据格式为json
    codec => json_lines
  }
}
#日志存储目标:es
output {
  elasticsearch {
    hosts => "192.168.174.20:9200"
    index => "springboot-logs-%{+YYYY.MM.dd}"
    codec => "json"
  }
}

vim /home/docker/logstash/config/logstash.yml
api.http.host: 0.0.0.0
xpack.monitoring.elasticsearch.hosts: ["http://192.168.174.20:9200"]


#使用如下命令启动Logstash服务;
docker run --name logstash -m 1000M --restart=always -p 9600:9600 -p 9413:9413 --privileged=true -e ES_JAVA_OPTS="-Duser.timezone=Asia/Shanghai" -v /home/docker/logstash/pipeline/logstash.conf:/usr/share/logstash/pipeline/logstash.conf -v /home/docker/logstash/config/logstash.yml:/usr/share/logstash/config/logstash.yml -d logstash:7.17.5

#进入容器内部,安装json_lines插件
docker exec -it logstash /bin/bash
logstash-plugin install --no-verify logstash-codec-json_lines

2.7 Kibana安装

#使用如下命令启动Kibana服务:
docker run --name kibana --restart=always -p 5601:5601 \
-e ELASTICSEARCH.HOSTS=http://192.168.174.20:9200 \
-d kibana:7.17.5

2.8 MongoDB安装

首先把挂载到宿主机的文件夹提前建好

#把挂载的目录创建好
mkdir -p /home/docker/mongo/db

#使用docker命令启动:
docker run -p 27017:27017 --restart=always --name mongo \
-v /home/docker/mongo/db:/data/db \
-d mongo --auth

docker exec -it mongo mongosh admin
db.createUser({ user:'admin',pwd:'123456',roles:[ { role:'userAdminAnyDatabase', db: 'admin'},"readWriteAnyDatabase"]});
db.auth('admin','123456')


2.9 tomcat安装

#先运行一次容器(为了拷贝配置文件)
docker run --name tomcat -p 8080:8080 -d tomcat:9.0.45

#将容器内的配置文件拷贝到指定目录
docker container cp tomcat:/usr/local/tomcat/webapps.dist /home/docker/tomcat/
docker container cp tomcat:/usr/local/tomcat/conf /home/docker/tomcat/
docker container cp tomcat:/usr/local/tomcat/logs /home/docker/tomcat/

#修改修改文件名称
mv webapps.dist webapps

#终止并删除容器:
docker stop tomcat
docker rm tomcat

#使用如下命令启动tomcat服务
docker run --name tomcat --restart=always -p 8080:8080 \
-v /home/docker/tomcat/webapps:/usr/local/tomcat/webapps \
-v /home/docker/tomcat/conf:/usr/local/tomcat/conf \
-v /home/docker/tomcat/logs:/usr/local/tomcat/logs \
-d tomcat:9.0.45

2.10 Canal安装

1.首先开启mysql的binlog日志,创建/home/docker/mysql/conf/my.cnf配置文件,并且把下面的配置放到my.cnf中,之后再重启mysql

[mysqld]
log-bin=mysql-bin # 开启 binlog
binlog-format=ROW # 选择 ROW 模式
server_id=1 # 配置 MySQL replaction 需要定义,不要和 canal 的 slaveId 重复
binlog-do-db=imooc-hire-dev # 设置怼哪个数据库生效

2.在mysql中创建canal用户

CREATE USER canal IDENTIFIED BY 'canal';  
GRANT SELECT, REPLICATION SLAVE, REPLICATION CLIENT ON *.* TO 'canal'@'%';
-- GRANT ALL PRIVILEGES ON *.* TO 'canal'@'%' ;
FLUSH PRIVILEGES;

在这里插入图片描述

在这里插入图片描述
3.使用docker命令安装canal

docker run -p 11111:11111 --name canal \
-e canal.destinations=imooc \
-e canal.instance.mysql.slaveId=100 \
-e canal.instance.master.address=192.168.174.20:3306 \
-e canal.instance.dbUsername=canal \
-e canal.instance.dbPassword=canal \
-e canal.instance.connectionCharset=UTF-8 \
-e canal.instance.filter.regex=imooc-hire-dev.data_dictionary \
--restart=always -d canal/canal-server:v1.1.6

4.进入canal容器,查看日志文件canal-server/logs/imooc/imooc.log中有没有错误,是否运行成功

2.11 ZooKeeper安装

mkdir -p /home/docker/zookeeper/{data,logs,conf}

docker run -p 2181:2181 --restart=always --name zookeeper -d zookeeper:3.8.1

docker container cp zookeeper:/conf/zoo.cfg /home/docker/zookeeper/conf/
docker container cp zookeeper:/conf/logback.xml /home/docker/zookeeper/conf/
docker rm -f zookeeper

docker run -p 2181:2181 --restart=always --name zookeeper \
-v /home/docker/zookeeper/data:/data \
-v /home/docker/zookeeper/conf:/conf \
-v /home/docker/zookeeper/logs:/logs \
-d zookeeper:3.8.1
  • 4
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 3
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值