Linux版本的项目环境搭建
项目环境docker及docker-compose文档
1、Linux环境介绍
centos7.6
16G以上内存空间(至少8G)

2、静态IP设置
1、找到配置文件
cd /etc/sysconfig/network-scripts/
vi ifcfg-ens33
----------------------------
TYPE=Ethernet
PROXY_METHOD=none
BROWSER_ONLY=no
BOOTPROTO=static
DEFROUTE=yes
IPADDR=192.168.200.188
NETMASK=255.255.255.0
GATEWAY=192.168.200.2
DNS1=114.114.114.114
DNS2=8.8.8.8
IPV4_FAILURE_FATAL=no
IPV6INIT=yes
IPV6_AUTOCONF=yes
IPV6_DEFROUTE=yes
IPV6_FAILURE_FATAL=no
IPV6_ADDR_GEN_MODE=stable-privacy
NAME=ens33
UUID=b8fd5718-51f5-48f8-979b-b9f1f7a5ebf2
DEVICE=ens33
ONBOOT=yes
-----------------------------------
重启网卡
service network restart
测试网卡
ping www.baidu.com 如果有字节输出,则表示网络正常
3、JDK安装
# jdk镜像仓库:https://repo.huaweicloud.com/java/jdk/8u171-b11/
#下载wget命令
yum install wget
# 下载、解压jdk
wget https://repo.huaweicloud.com/java/jdk/8u171-b11/jdk-8u171-linux-x64.tar.gz
#解压
tar -zxf jdk-8u171-linux-x64.tar.gz
#移动文件夹中
mv jdk1.8.0_171 /usr/local
# 配置环境
vi /etc/profile
# 添加内容:
export JAVA_HOME=/usr/local/jdk1.8.0_171
export PATH=$JAVA_HOME/bin:$PATH
# 配置生效命令
source /etc/profile
#查看j版本命令
java -version
4、Docker安装
安装docker
# 1、yum 包更新到最新,需要几分钟时间
sudo yum update
# 2、作用:安装需要的软件包, yum-util 提供yum-config-manager功能,另外两个是devicemapper驱动依赖的
sudo yum install -y yum-utils device-mapper-persistent-data lvm2
# 3、 设置yum源
# 3.1、方案一:使用ustc的(默认的)
sudo yum-config-manager --add-repo http://mirrors.ustc.edu.cn/docker-ce/linux/centos/docker-ce.repo
# 3.2、方案二:使用阿里云(推荐)
sudo yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
# 4、 安装docker;出现输入的界面都按 y
sudo yum install -y docker-ce
# 5、 查看docker版本
docker -v
#开机自启动
systemctl enable docker
设置镜像加速器
# 执行如下命令:
mkdir /etc/docker 表示创建一个文件夹
#如果有该文件则进入编辑状态,如果没有,则创建该文件然后进入编辑状态
vi /etc/docker/daemon.json
#编写以下内容
{
"registry-mirrors": ["https://7oc12mqc.mirror.aliyuncs.com"]
}
注意:[“自己的镜像加速器地址”]
5、Docker-compose安装
#国内资源(建议)
curl -L https://get.daocloud.io/docker/compose/releases/download/1.25.4/docker-compose-`uname -s`-`uname -m` > /usr/local/bin/docker-compose
# 设置文件可执行权限
chmod +x /usr/local/bin/docker-compose
# 查看版本信息
docker-compose -version
6、Nacos安装
创建一个文件夹
mkdir nacos
进入该文件夹中
cd nacos
vi docker-compose.yml
编写docker-compose.yml文件
version: "2"
services:
nacos:
image: nacos/nacos-server:1.4.1
container_name: nacos
environment:
- MODE=standalone
volumes:
- /root/nacos/logs:/home/nacos/logs
- /root/nacos/init.d/custom.properties:/home/nacos/init.d/custom.properties
ports:
- "8848:8848"
restart: always
创建文件夹及文件
cd nacos mkdir init.d cd init.d touch custom.properties
执行脚本
docker-compose up -d
7、MySQL安装
创建docker-compose.yml
创建一个文件夹
mkdir mysql
进入mysql文件夹中创建一个docker-compose.yml文件
cd mysql vi docker-compose.yml
在docker-compose.yml中加入以下内容
version: '3'
services:
mysql:
container_name: mysql
environment:
TZ: Asia/Shanghai
MYSQL_ROOT_PASSWORD: "root"
image: "mysql:5.7"
restart: always
volumes:
- "./conf/my.cnf:/etc/my.cnf"
- "./data:/var/lib/mysql"
ports:
- "3306:3306"
创建文件(在mysql文件夹下)
mkdir conf
cd conf
touch my.cnf
在mysql文件夹下执行脚本
docker-compose up -d
8、ElasticSearch安装
创建一个文件夹
mkdir es
进入es文件夹中创建一个docker-compose.yml文件
vi docker-compose.yml
在docker-compose.yml中加入以下内容
version: '3'
services:
elasticsearch:
image: elasticsearch:7.4.0
container_name: elasticsearch
restart: always
environment:
- bootstrap.memory_lock=true
- http.cors.enabled=true
- http.cors.allow-origin=*
- "discovery.type=single-node"
- "ES_JAVA_OPTS=-Xms512m -Xmx512m"
ulimits:
memlock:
soft: -1
hard: -1
volumes:
- /root/es/plugins:/usr/share/elasticsearch/plugins
ports:
- 9200:9200
- 9300:9300
kibana:
image: kibana:7.4.0
container_name: kibana
environment:
- SERVER_NAME=kibana
- ELASTICSEARCH_URL=http://192.168.200.137:9200
- XPACK_MONITORING_ENABLED=true
ports:
- 5601:5601
depends_on:
- elasticsearch
external_links:
- elasticsearch
es文件夹下执行脚本
docker-compose up -d
设置中文IK分词器
因为在创建elasticsearch容器的时候,映射了目录,所以可以在宿主机上进行配置ik中文分词器
在去选择ik分词器的时候,需要与elasticsearch的版本好对应上
把资料中的ik-7.4.0.tar上传到服务器上,放到对应目录(plugins)解压
#上传压缩包到Linux中 #切换目录
cd es/plugins
#新建目录
mkdir analysis-ik #root根目录解压
tar -xf ik-7.4.0.tar -C /root/es/plugins/analysis-ik
在重新启动es,进行测试
docker restart elasticsearch
连接kibana,测试iK分词器
# ik_max_word中文分词器
GET _analyze
{
"analyzer": "ik_max_word",
"text":"中国人民真好看"
} # ik_smart中文分词器
GET _analyze
{
"analyzer": "ik_smart",
"text":"中国人民真好看"
} # 默认分词器
GET _analyze
{
"analyzer": "standard",
"text":"中国人民真好看"
}
9、MinIo安装
创建文件夹
mkdir minio
进入文件夹
cd minio
创建docker-compose.yml
vi docker-compose.yml
编写以下内容
version: '3'
services:
minio:
image: minio/minio:RELEASE.2021-04-18T19-26-29Z
container_name: myminio
ports:
- 9000:9000
volumes:
- /var/minio/data:/data
- /var/minio/config:/root/.minio
environment:
MINIO_ACCESS_KEY: "minio"
MINIO_SECRET_KEY: "minio123"
command: server /data
restart: always
执行命令
docker-compose up -d
10、Redis安装
创建一个文件夹
mkdir redis
进入redis文件夹中创建一个docker-compose.yml文件
cd redis vi docker-compose.yml
在docker-compose.yml中加入以下内容
version: '3'
services:
redis:
container_name: redis
image: redis:5.0.7
restart: always
ports:
- 6379:6379
volumes:
- ./conf/redis.conf:/etc/redis/redis.conf:rw
- ./data:/data:rw
command:
redis-server /etc/redis/redis.conf --appendonly yes
environment:
- TZ=Asia/Shanghai
redis文件夹下执行脚本
docker-compose up -d
11、Kafka安装
创建一个文件夹
mkdir kafka
进入kafka文件夹中创建一个docker-compose.yml文件
cd kafka vi docker-compose.yml
在docker-compose.yml中加入以下内容
version: '3'
services:
zookeeper-kafka:
image: wurstmeister/zookeeper
restart: unless-stopped
hostname: zookeeper-kafka
container_name: zookeeper-kafka
ports:
- 2777:2181
volumes:
- ./data:/data
- ./datalog:/datalog
kafka:
image: wurstmeister/kafka:2.12-2.4.1
depends_on:
- zookeeper-kafka
container_name: kafka
ports:
- 9092:9092
environment:
KAFKA_ADVERTISED_HOST_NAME: kafka
KAFKA_BROKER_ID: 0
KAFKA_ZOOKEEPER_CONNECT: 192.168.200.135:2777
KAFKA_ADVERTISED_LISTENERS: PLAINTEXT://192.168.200.135:9092
KAFKA_LISTENERS: PLAINTEXT://0.0.0.0:9092
restart: unless-stopped
volumes:
- ./docker.sock:/var/run/docker.sock
KAFKA_ZOOKEEPER_CONNET:IP:zookeeper的端口号
IP要改成自己服务器的ip地址
在kafka文件夹下执行以下命令
docker-compose up -d
12、Kafka-manager安装(选装)
#拉取镜像
docker pull sheepkiller/kafka-manager
#创建容器
docker run -di --name=kafka-manager -p 9001:9000 --restart=always -e ZK_HOSTS=192.168.200.137:2777 sheepkiller/kafka-manager
ZK_HOSTS=192.168.200.129:2777
表示关联zookeeper的地址及端口号, 2777是zookeeper的对外端口号
13、MongoDB安装
创建一个文件夹
mkdir mongo
进入mongo文件夹中创建一个docker-compose.yml文件
cd mongo vi docker-compose.yml
在docker-compose.yml中加入以下内容
version: '3.1'
services:
mongo:
image: mongo:5.0.2
restart: always
container_name: mongo
hostname: mongo
environment:
#用户名密码
MONGO_INITDB_ROOT_USERNAME: root
MONGO_INITDB_ROOT_PASSWORD: root
ports:
- 27017:27017
volumes:
- ./data:/data/db
networks:
mongo:
aliases:
- mongo1
networks:
mongo:
driver: bridge
mongo文件夹下执行脚本
docker-compose up -d
安装完后,要对mongo进行认证操作cls
进入mongo内部
[root@localhost ~]# docker exec -it mongo /bin/bash
root@mongo:/# mongo
MongoDB shell version v4.4.5
connecting to: mongodb://127.0.0.1:27017/?compressors=disabled&gssapiServiceName=mongodb
Implicit session: session { "id" : UUID("f7c7c594-d5dd-473a-9ded-43609ac16a28") }
MongoDB server version: 4.4.5
> use admin
switched to db admin
> db.auth("root","root")
1
> show dbs
admin 0.000GB
config 0.000GB
local 0.000GB
14、Xxl-job安装
创建一个文件夹
mkdir xxljob
进入xxljob文件夹中创建一个docker-compose.yml文件
cd xxljob vi docker-compose.yml
在docker-compose.yml中加入以下内容
version: '3'
services:
xxl-job:
image: xuxueli/xxl-job-admin:2.3.0
container_name: xxl-job
environment:
PARAMS: "--spring.datasource.url=jdbc:mysql://192.168.200.137:3306/xxl_job?useUnicode=true&characterEncoding=UTF-8&autoReconnect=true&serverTimezone=Asia/Shanghai --spring.datasource.username=root --spring.datasource.password=root"
ports:
- 8888:8080
volumes:
- /data/docker/xxl-job/logs/:/data/applogs/xxl-job/
xxljob文件夹下执行脚本
docker-compose up -d
15、seata安装
1、安装
创建文件夹
mkdir seata
进入文件夹,然后创建docker-compose.yml
cd seata
vi docker-compose.yml
写入以下内容
version: "3"
services:
seata-server:
image: seataio/seata-server:1.4.2
hostname: seata-server
container_name: seata
restart: always
ports:
- "8091:8091"
environment:
- SEATA_PORT=8091
- SEATA_IP=192.168.200.104
volumes:
- /root/seata/config:/root/seata-config
生成容器
docker-compose up -d
查看容器是否启动
docker ps

2、修改参数
1、进入容器内部
docker exec -it seata sh

2、进入resources文件夹下
cd resources

3、修改registry.conf配置
vi registry.conf
注册中心配置:

配置中心:

具体详情:(也可参考windwos环境中的registry.conf文件)
registry {
# file ...nacos ...eureka...redis...zk...consul...etcd3...sofa
type = "nacos"
nacos {
application = "seata-tc-server"
serverAddr = "192.168.200.104:8848"
group = "SEATA_GROUP"
namespace = ""
cluster = "SH"
username = "nacos"
password = "nacos"
}
}
config {
# file...nacos ...apollo...zk...consul...etcd3
type = "nacos"
nacos {
serverAddr = "192.168.200.104:8848"
namespace = ""
group = "SEATA_GROUP"
username = "nacos"
password = "nacos"
dataId = "seataServer.properties"
}
}
3、退出容器
exit
4、重启容器
docker restart seata
5、查看日志
docker logs -f seata

docker cp mysql:/etc/mysql/mysql.conf.d/mysqld.cnf /root/mysqld.cnf wait_timeout=86400 docker cp mysqld.cnf mysql:/etc/mysql/mysql.conf.d/mysqld.cnf
Linux版本的项目环境搭建的更多相关文章
- Cocos2dx-3.0版本 从开发环境搭建(Win32)到项目移植Android平台过程详解
作为重量级的跨平台开发的游戏引擎,Cocos2d-x在现今的手游开发领域占有重要地位.那么问题来了,作为Cocos2dx的学习者,它的可移植特性我们就需要掌握,要不然总觉得少一门技能.然而这个时候各种 ...
- Django项目: 项目环境搭建 ---- 一、创建django项目
项目环境搭建 一.创建django项目 1.创建python虚拟环境 在虚拟机上创建python虚拟环境,因为实际项目部署,实在linux mkvirtualenv -p /usr/bin/pytho ...
- 学习Linux(一)环境搭建
零基础学习Linux(一)环境搭建 从本文开始我会为大家介绍一下linux环境下详细的集群环境安装.配置.部署到实例演示的整个过程.在此过程中会给大家详细介绍一下Linux的操作技巧和一些工具的使用. ...
- 第一周博客之二---OA项目环境搭建及开发包部署
OA项目环境搭建 一个项目想要能够在开发人员打包好项目包之后进行测试,就必须进行项目测试环境的搭建,要根据开发工程师的开发环境采用不同的测试环境,以下只是浅谈下Java项目OA(办公自动化平台)的环境 ...
- mac OS X下Java项目环境搭建+IntelliJ IDEA Jrebel插件安装与破解+Office 2016破解版安装
一.mac OS X下Java项目环境搭建 因为某些原因新入手了台最新版的MacBook Pro,意味着今天要花一天时间安装各种软件以及项目环境搭建╮(╯▽╰)╭ 项目环境搭建步骤: 1.安装jdk ...
- OK335xS Ubuntu 12.04.1 版本 Android 开发环境搭建
/******************************************************************************************** * OK33 ...
- react 开发 PC 端项目(一)项目环境搭建 及 处理 IE8 兼容问题
步骤一:项目环境搭建 首先,你不应该使用 React v15 或更高版本.使用仍然支持 IE8 的 React v0.14 即可. 技术选型: 1.react@0.14 2.bootstrap3 3. ...
- Unix/Linux环境C编程新手教程(12) openSUSECCPP以及Linux内核驱动开发环境搭建
1. openSUSE是一款优秀的linux. watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvaXRjYXN0Y3Bw/font/5a6L5L2T/font ...
- Unix/Linux环境C编程入门教程(12) openSUSECCPP以及Linux内核驱动开发环境搭建
1. openSUSE是一款优秀的linux. 2.选择默认虚拟机 3.选择稍后安装操作系统 4.选择linux opensuse 5. 选择默认虚拟机名称 6.设置处理器为双核. 7.内存设置为2 ...
随机推荐
- .NET程序设计实验二
实验二 面向对象程序设计 一.实验目的 1. 理解类的定义.继承等面向对象的的基本概念: 2. 掌握C#语言定义类及其各种成员(字段,属性,方法)的方法: 3. 掌握方法覆盖的应用: 4. 掌握接口 ...
- Mongo实验
MongoDB数据库操作 Student: { "name": "zhangsan", "score": { "English&q ...
- java中什么是Interface接口, 请给个实例!
1.Interface接口的定义和用法 先直接上大白话:马克-to-win:接口就是灰常灰常抽象的抽象类,我们可以就像用抽象类一样用接口,只不过,interface抽象到不能再抽象了,以至于里面不能 ...
- Java中jdk安装与环境变量配置
Java中jdk安装与环境变量配置 提示:下面是jdk1.7和jdk1.8的百度网盘链接 链接:https://pan.baidu.com/s/1SuHf4KlwpiG1zrf1LLAERQ 提取码: ...
- No origin bean specified和 No destination bean specified
Beanutils.copyProperties 异常一: No origin bean specifiedBeanutils.copyProperties 异常二: No destination b ...
- idea启动tomcat后控制台日志显示中文乱码问题
想必有些人 会遇到 控制台中文乱码: 可以通过以下方法解决该中文乱码问题: 1. 点击Help => Edit custom VM Options,在最后面添加 "-Dfile.en ...
- Bugku的exec执行绕过
题目 思路 1. 打开网页显示403 2. 回去看题目有提示 3. 不用多说,网页访问. 4. 第一行说要传个参数ip,试一下get传参?ip=127.0.0.1 5. 试下 ① 算术运算符 & ...
- 实战-DRF快速写接口(认证权限频率)
实战-DRF快速写接口 开发环境 Python3.6 Pycharm专业版2021.2.3 Sqlite3 Django 2.2 djangorestframework3.13 测试工具 Postma ...
- TypeScript学习_入门向
TypeScript学习_入门向 1-TypeScript简介 首先官网祭天 ---> https://www.tslang.cn/ TypeScript 是 JavaScript 的一个超集, ...
- 2021.08.06 P4392 Sound静音问题(ST表)
2021.08.06 P4392 Sound静音问题(ST表) [P4392 BOI2007]Sound 静音问题 - 洛谷 | 计算机科学教育新生态 (luogu.com.cn) 题意: 序列a,求 ...