linux版docker安装镜像
目录
安装portainer
安装mysql单机版
安装mysql主从复制
安装redis单机版
安装redis集群(3主3从)
安装ES
docker安装kafka
docker安装nacos
docker安装canal-server
docker安装Sentinel
docker安装Skywalking
docker安装Kibana
docker安装seata
docker安装sqlserver
安装portainer
docker run -d -p 9000:9000 -v /var/run/docker.sock:/var/run/docker.sock -v /dockerData/portainer:/data --restart=always --name portainer portainer/portainer
安装mysql单机版
新建my.cnf
[client]
default_character_set=utf8
[mysqld]
collation_server = utf8_general_ci
character_set_server = utf8
default_authentication_plugin=mysql_native_password log-bin=mysql-bin # 开启 binlog
binlog-format=ROW # 选择 ROW 模式
server_id=1 # 配置 MySQL replaction 需要定义,不要和 canal 的 slaveId 重复
安装mysql
docker run -d -p 3306:3306 --name mysql --net=host -m 500m --privileged=true -v /usr/docker/mysql/log:/var/log/mysql -v /usr/docker/mysql/data:/var/lib/mysql -v /usr/docker/mysql/conf:/etc/mysql/conf.d -e MYSQL_ROOT_PASSWORD=root -e TZ=Asia/Shanghai mysql:8.0.21 --lower_case_table_names=1docker exec -it mysql /bin/bashmysql -hlocalhost -uroot -p
安装mysql主从复制
新建主服务器容器实例3307
docker run -d -p 3307:3306 --name mysql-master --net=host -m 500m --privileged=true -v /usr/docker/mysql/log:/var/log/mysql -v /usr/docker/mysql/data:/var/lib/mysql -v /usr/docker/mysql/conf:/etc/mysql/conf.d -e MYSQL_ROOT_PASSWORD=root -e TZ=Asia/Shanghai mysql:8.0.21 --lower_case_table_names=1
配置master的配置文件my.cnf
[mysqld]
## 设置server_id,同一局域网中需要唯一
server_id=101
## 指定不需要同步的数据库名称
binlog-ignore-db=mysql
## 开启二进制日志功能
log-bin=mall-mysql-bin
## 设置二进制日志使用内存大小(事务)
binlog_cache_size=1M
## 设置使用的二进制日志格式(mixed,statement,row)
binlog_format=mixed
## 二进制日志过期清理时间。默认值为0,表示不自动清理。
expire_logs_days=7
## 跳过主从复制中遇到的所有错误或指定类型的错误,避免slave端复制中断。
## 如:1062错误是指一些主键重复,1032错误是因为主从数据库数据不一致
slave_skip_errors=1062
修改完配置后重启master实例
docker restart mysql-master
进入mysql-master容器
docker exec -it mysql-master /bin/bashmysql -uroot -p
安装redis单机版
docker run -d -p 6379:6379 --restart always --name redis --net host --privileged=true -v /app/redis/redis.conf:/etc/redis/redis.conf -v /app/redis/data:/data redis:6.0.8 --cluster-enabled no --appendonly yes
安装redis集群(3主3从)
新建6个docker容器redis实例
docker run -d --restart always --name redis-node-1 --net host --privileged=true -v /data/redis/share/redis-node-1:/data redis:6.0.8 --cluster-enabled yes --appendonly yes --port 6381
docker run -d --restart always --name redis-node-2 --net host --privileged=true -v /data/redis/share/redis-node-2:/data redis:6.0.8 --cluster-enabled yes --appendonly yes --port 6382
docker run -d --restart always --name redis-node-3 --net host --privileged=true -v /data/redis/share/redis-node-3:/data redis:6.0.8 --cluster-enabled yes --appendonly yes --port 6383
docker run -d --restart always --name redis-node-4 --net host --privileged=true -v /data/redis/share/redis-node-4:/data redis:6.0.8 --cluster-enabled yes --appendonly yes --port 6384
docker run -d --restart always --name redis-node-5 --net host --privileged=true -v /data/redis/share/redis-node-5:/data redis:6.0.8 --cluster-enabled yes --appendonly yes --port 6385
docker run -d --restart always --name redis-node-6 --net host --privileged=true -v /data/redis/share/redis-node-6:/data redis:6.0.8 --cluster-enabled yes --appendonly yes --port 6386
进入容器redis-node-1并为6台机器构建集群关系
docker exec -it redis-node-1 /bin/bash//注意,进入docker容器后才能执行一下命令,且注意自己的真实IP地址
--cluster-replicas 1 表示为每个master创建一个slave节点redis-cli --cluster create 192.168.1.200:6381 192.168.1.200:6382 192.168.1.200:6383 192.168.1.200:6384 192.168.1.200:6385 192.168.1.200:6386 --cluster-replicas 1
链接进入6381作为切入点,查看集群状态
redis-cli -p 6381cluster infocluster nodesredis-cli --cluster check 192.168.1.200:6381
安装ES
docker pull elasticsearch:7.12.0创建docker容器挂在的目录:
mkdir -p /usr/docker/elasticsearch/config
mkdir -p /usr/docker/elasticsearch/data
mkdir -p /usr/docker/elasticsearch/plugins配置文件:
echo "http.host: 0.0.0.0" >> /usr/docker/elasticsearch/config/elasticsearch.yml保证挂载文件权限:
chmod -R 777 /usr/docker/elasticsearch/创建容器:
docker run -d --name elasticsearch -p 9200:9200 -p 9300:9300 \-e "discovery.type=single-node" \-e ES_JAVA_OPTS="-Xms84m -Xmx512m" \-v /usr/docker/elasticsearch/config/elasticsearch.yml:/usr/share/elasticsearch/config/elasticsearch.yml \-v /usr/docker/elasticsearch/data:/usr/share/elasticsearch/data \-v /usr/docker/elasticsearch/plugins:/usr/share/elasticsearch/plugins \-d elasticsearch:7.12.0
docker安装kafka
先安装zookeeper
docker run -d --name zookeeper -p 2181:2181 -v /etc/localtime:/etc/localtime wurstmeister/zookeeper安装kafka
docker run -d --name kafka -p 9092:9092 -e KAFKA_BROKER_ID=0 -e KAFKA_ZOOKEEPER_CONNECT=192.168.1.200:2181 -e KAFKA_ADVERTISED_LISTENERS=PLAINTEXT://192.168.1.200:9092 -e KAFKA_LISTENERS=PLAINTEXT://0.0.0.0:9092 -t wurstmeister/kafka
docker安装nacos
拉取镜像
docker pull nacos/nacos-server挂载目录
mkdir -p /mydata/nacos/logs/
mkdir -p /mydata/nacos/init.d/
vim /mydata/nacos/init.d/custom.properties mysql新建nacos的数据库,并执行脚本
https://github.com/alibaba/nacos/blob/master/config/src/main/resources/META-INF/nacos-db.sql修改配置文件custom.properties
server.contextPath=/nacos
server.servlet.contextPath=/nacos
server.port=8848spring.datasource.platform=mysql
db.num=1
db.url.0=jdbc:mysql://192.168.1.200:3306/nacos?characterEncoding=utf8&connectTimeout=1000&socketTimeout=3000&autoReconnect=true
db.user=root
db.password=rootnacos.cmdb.dumpTaskInterval=3600
nacos.cmdb.eventTaskInterval=10
nacos.cmdb.labelTaskInterval=300
nacos.cmdb.loadDataAtStart=false
management.metrics.export.elastic.enabled=false
management.metrics.export.influx.enabled=false
server.tomcat.accesslog.enabled=true
server.tomcat.accesslog.pattern=%h %l %u %t "%r" %s %b %D %{User-Agent}i
nacos.security.ignore.urls=/,/**/*.css,/**/*.js,/**/*.html,/**/*.map,/**/*.svg,/**/*.png,/**/*.ico,/console-fe/public/**,/v1/auth/login,/v1/console/health/**,/v1/cs/**,/v1/ns/**,/v1/cmdb/**,/actuator/**,/v1/console/server/**
nacos.naming.distro.taskDispatchThreadCount=1
nacos.naming.distro.taskDispatchPeriod=200
nacos.naming.distro.batchSyncKeyCount=1000
nacos.naming.distro.initDataRatio=0.9
nacos.naming.distro.syncRetryDelay=5000
nacos.naming.data.warmup=true
nacos.naming.expireInstance=true启动容器
docker run \
--name nacos -d \
-p 8848:8848 \
--privileged=true \
--restart=always \
-e JVM_XMS=256m \
-e JVM_XMX=256m \
-e MODE=standalone \
-e PREFER_HOST_MODE=hostname \
-v /mydata/nacos/logs:/home/nacos/logs \
-v /mydata/nacos/init.d/custom.properties:/home/nacos/init.d/custom.properties \
nacos/nacos-server
docker安装canal-server
创建用户
create user canal identified by 'canal';
grant select,replication slave, replication client on *.* to 'canal'@'%';
flush privileges;# 查看bin-log是否开启 on: 开启 off: 关闭
show variables like 'log_bin';
启动canal-server
docker run \
-d \
-e canal.instance.master.address=192.168.1.200:3306 \
-e canal.instance.dbUsername=root \
-e canal.instance.dbPassword=root \
--name canal-server \
-p 11111:11111 \canal/canal-server:v1.1.5#进入容器 查看配置文件路径
docker exec -it canal-server bash# 复制容器中的配置文件到本地
docker cp canal-server:/home/admin/canal-server/conf/canal.properties /opt/canal
docker cp canal-server:/home/admin/canal-server/conf/example/instance.properties /opt/canal
修改修改外部配置文件canal.properties 配置文件
# 默认端口 11111
# 默认输出model为tcp, 这里根据使用的mq类型进行修改
# tcp, kafka, RocketMQ
canal.serverMode = kafka
kafka.bootstrap.servers=192.168.1.200:9092# canal可以有多个instance,每个实例有独立的配置文件,默认只有一个example实例。
# 如果需要处理多个mysql数据的话,可以复制出多个example,对其重新命名,
# 命令和配置文件中指定的名称一致。然后修改canal.properties 中的 canal.destinations
# canal.destinations=实例 1,实例 2,实例 3
canal.destinations = example
修改修改外部配置文件instance.properties配置文件
# 不能和mysql重复
canal.instance.mysql.slaveId=2
# 使用mysql的虚拟ip和端口
canal.instance.master.address=192.168.1.200:3306
# 使用已创建的canal用户
canal.instance.dbUsername=root
canal.instance.dbPassword=root
canal.instance.connectionCharset = UTF-8# 问题:(只同步test库)
# canal.instance.filter.regex=.*\..*
# canal.instance.defaultDatabaseName =test# 注掉上面,然后添加,同步所有的库。
# .*\\..*: 表示匹配所有的库所有的表
canal.instance.filter.regex =.*\\..*# 目的地,可以认识一个消息队列,不需要更改。与canal.properties文件一致
canal.mq.topic=example
停止并且移除刚才的canal容器,并使用挂载配置文件的方式启动canal
docker run --name canal
-p 11111:11111
-v /opt/canal/instance.properties:/home/admin/canal-server/conf/example/instance.properties
-v /opt/canal/canal.properties:/home/admin/canal-server/conf/canal.properties
-d canal/canal-server:v1.1.5
docker安装Sentinel
docker pull bladex/sentinel-dashboard:1.8.0docker run --name sentinel -d -p 8858:8858 -d bladex/sentinel-dashboard:1.8.0docker update --restart=always sentinel
访问路径
http://192.168.1.200:8858
docker安装Skywalking
skywalking-oap-server:Skywalking服务器
skywalking-ui :Skywalking的UI界面
docker pull apache/skywalking-oap-server:8.9.1
docker pull apache/skywalking-ui:8.9.1持久化启动 skywalking-oapdocker run -itd \
--name skywalking-oap \
--restart=always \
-e TZ=Asia/Shanghai \
-p 12800:12800 \
-p 11800:11800 \
--link elasticsearch:elasticsearch \
-e SW_STORAGE=elasticsearch \
-e SW_STORAGE_ES_CLUSTER_NODES=elasticsearch:9200 \
apache/skywalking-oap-server:8.9.1
-------------------------------------------------------------------------------------------
-e TZ=Asia/Shanghai:指定时区。
--link elasticsearch:elasticsearch:关联elasticsearch容器,通过容器名字来解决ip会发生变更的问题。
-e SW_STORAGE=elasticsearch:设置环境变量,指定存储方式。
-e SW_STORAGE_ES_CLUSTER_NODES=elasticsearch:9200:设置环境变量,指定ES的地址
===========================================================================================持久化启动 skywalking-uidocker run -itd --name skywalking-ui \
--restart=always \
-e TZ=Asia/Shanghai \
-p 8980:8080 \
--link skywalking-oap:skywalking-oap \
-e SW_OAP_ADDRESS=skywalking-oap:12800 \
apache/skywalking-ui:8.9.1浏览器验证
访问UI:http://192.168.1.200:8980/
docker安装Kibana
docker pull kibana:7.12.0
临时启动
docker run -d --name=kibana -p 5601:5601 kibana:7.12.0复制目录
docker cp kibana:/usr/share/kibana/config /usr/docker/kibana/
docker cp kibana:/usr/share/kibana/data /usr/docker/kibana/编辑配置文件
vi /usr/docker/kibana/config/kibana.ymlserver.name: kibana
server.host: "0"
elasticsearch.hosts: [ "http://192.168.1.200:9200" ]
xpack.monitoring.ui.container.elasticsearch.enabled: true先删除临时的
docker rm -f kibana重新启动
docker run -d \--name=kibana \--restart=always \-p 5601:5601 \-v /usr/docker/kibana/config:/usr/share/kibana/config \-v /usr/docker/kibana/data:/usr/share/kibana/data \kibana:7.12.0
docker安装seata
docker run -d --name seata-server -p 8091:8091 -p 7091:7091 seataio/seata-server这时进入seata 容器内部查看配置
docker exec -it seata-server sh先在宿主机中创建一个存放配置文件的目录
mkdir -p /usr/docker/seata/拷贝容器中配置信息
docker cp seata-server:/seata-server/resources /usr/docker/seata/
cd /usr/docker/seata/resources/
修改application.yml 配置自己的注册中心和配置文件中心
seata-server.properties 配置信息
https://blog.csdn.net/wyz0923/article/details/126163382
https://www.cnblogs.com/stcweb/articles/16675810.html删除容器重新启动
docker run -d --name seata-server -p 8091:8091 -p 7091:7091 -v /usr/docker/seata/resources/:/seata-server/resources seataio/seata-server
docker安装sqlserver
docker pull mcr.microsoft.com/mssql/server:2017-latestmkdir /usr/docker/sqlserver/datasudo docker run -e "ACCEPT_EULA=Y" -e "SA_PASSWORD=jy@19911001" \
-p 1433:1433 --name sqlserver2017 \
-v /usr/docker/sqlserver/data:/var/opt/mssql \
-d mcr.microsoft.com/mssql/server:2017-latest
linux版docker安装镜像相关推荐
- ELK实战,Linux版docker安装ElasticSearch、ES-head、Logstash、Kiabana入门,无坑详细图解
项目需要,记录一次ELK日志分析系统无坑初始安装过程,并给大家整理出了操作elasticsearch的主要命令,elasticsearch!伙伴们都懂得哦!别的不多说,看过内容概览,直接开整!!! 一 ...
- windows版docker安装镜像
目录 安装mysql 安装redis 安装mysql 1. 下载mysql镜像 docker pull mysql:8.0 2. 下载完之后,使用管理员打开cmd docker run -itd -p ...
- win10安装docker及docker安装镜像
准备文件 轻量级的虚拟机.linux系统.linux客户端 安装 安装virtualBox好后导入虚拟机文件centos,启动虚拟机,以root/123456登录. 使用linux客户端工具链接lin ...
- Linux使用Docker安装Nacos并配置MySQL数据源,将Springboot的配置文件部署到Nacos
Linux使用Docker安装Nacos并配置MySQL数据源,将Springboot的配置文件部署到Nacos 前言 一.Docker中安装配置Nacos 安装Docker 拉取Nacos镜像 启动 ...
- Linux通过docker安装运行酷Q--用QQ骰子君进行跑团
Linux通过docker安装运行酷Q 文:铁乐与猫 需求:和小伙伴周末进行愉快的TRPG跑团,需要在QQ讨论组上加了qq小号后,将qq小号用酷Q配合投骰的应用变成骰子君. 限制:我个人的云计算服务器 ...
- mathematica在linux上运行,Mathematicamatlab的linux版的安装
Mathematica8 linux版的安装 安装准备: 1.运行Mathematica_8.0.0_WIN_MachineSpecific.EXE 可以用wine ,也可以在windows下运行 2 ...
- docker源码编译 linux_oracle linux 6 docker 安装(包括编译git源码)
在安装时请确保可以联网.安装步骤如下: 1. 更新班级yum配置(参见: http://public-yum.oracle.com/getting-started.html): # cd /etc/y ...
- phpstudy for linux版环境安装
phpstudy for linux版环境安装 本文主要和大家分享PHP环境安装-phpstudy for linux版,希望能帮助到大家. 下载地址: 下载版:http://lamp.phpstud ...
- linux版navicat安装和破解
linux版navicat安装和破解 工具环境:服务器CentOS7 64位(桌面版),本地windows10系统 在linux系统以原生命令为王的大背景下,能在其中运行windows窗口界面软件是件 ...
最新文章
- CentOS7 Zabbix3.4安装
- Qt for Android调用Android接口将程序移到后台/前台运行
- 国二c语言操作题评分标准,全国计算机二级C语言操作题题库.doc
- 【转】关于Python脚本开头两行的:#!/usr/bin/python和# -*- coding: utf-8 -*-的作用 – 指定文件编码类型...
- mysql增删改查不区分大小写吗_MySQL的增删改查语句以及数据库设计的三大范式...
- 【原创】Extjs4 通用CURD方法
- 【软件测试】验收测试是以最终用户为主的测试
- wireshark抓包分析怎么看进程_wireshark抓包数据怎么看?wireshark数据分析教程
- 解决:微软拼音输入法不显示选字栏,微软的拼音输入法第一个候选词不显示
- 查看本地windows密码方法
- 人们熟知的一句名言是:“天才是1%的灵感加99%的汗水。”可如果没有那1%的灵感,世界上所有的汗水也就仅仅是一桶汗水而已。...
- C# dgv自动排序后,各种样式设定无效的解决办法
- 台式计算机怎么加一个硬盘,台式机添加硬盘方法
- 理解JavaScript中的原型与原型链
- 前端工程化-基于Taro的Web端Monorepo架构改造
- 共模电感模型matlab,混成式共模电感的原理及功能讲解?
- SonarQube-代码质量检测工具
- oracle 拼接clob,把string拼接成clob类型
- 图表示学习和异质信息网络
- pdf怎么转换成jpg或png格式的图片?