目的
在阿里雲服務器(CentOS 7.6 64位)搭建部署研發環境基礎組件
基礎組件清單
- JDK11
- Nexus私服
- Docker容器環境
- Kubernetes集羣
- Jira缺陷管理及看板
- Gitlab代碼倉庫
- Git客戶端
- Jenkins自動集成
- Maven編譯構建
- NodeJs前端環境
- Consul開發環境服務暴露
- Apollo配置中心
- Mysql分佈式集羣數據庫
安裝JDK11
1、進入 Oracle官網下載合適的 JDK 版本,準備安裝。
注意:這裏需要下載 Linux 版本。這裏以jdk-11.0.6_linux64.tar.gz爲例,你下載的文件可能不是這個版本,這沒關係,只要後綴(.tar.gz)一致即可。
2、創建目錄
在/data/目錄下創建java目錄,
mkdir /data/java
cd /data/java
把下載的文件 jdk-11.0.6_linux64.tar.gz 放在/data/java目錄下。
3、 解壓 JDK
tar -zxvf jdk-11.0.6_linux64.tar.gz
4、設置環境變量
修改 環境變量配置文件
vi /etc/profile
在 profile 文件中添加如下內容並保存:
#set java environment
export JAVA_HOME=/data/java/jdk-11.0.6
export PATH=$JAVA_HOME/bin:$PATH
注意:其中 JAVA_HOME, JRE_HOME 請根據自己的實際安裝路徑及 JDK 版本配置。
讓修改生效:
source /etc/profile
5.、測試
java -version
顯示 java 版本信息,則說明 JDK 安裝成功。
安裝Git客戶端
1、安裝
#安裝git軟件
yum install -y git
#查看git版本
git --version
#查看git幫助
git --help
2、創建git本地倉庫並且初始化
#創建倉庫目錄
mkdir /data/gitDev
#進入目錄中
cd /data/gitDev
#初始化
git init
#如果有倉庫目錄下有.git表明git倉庫創建並初始化成功
ls -a
3、綁定遠程中心庫
#把本地倉庫與遠程中心倉庫關聯
git remote add origin http://172.xx.209.xx:8282/psop/psop-service/psop-rtpwp.git
#更新遠程中心倉庫到數據到本地
git remote update origin --prune
#切換到develop分支
git checkout develop
4、設置git用戶密碼,不用每次都輸入
#切換到用戶目錄下,依次執行命令
cd ~
git config --global credential.helper store
#使用ll -a命令,可看到在用戶目錄下增加了.gitconfig文件
進行本地倉庫目錄,然後執行git pull命令,本次輸入用戶名和密碼之後,之後就不需要再輸入了。
安裝Maven
這裏採用docker方式安裝
獲取最新maven鏡像(這裏一定要根據自己的jdk版本選擇對應版本的maven docker下載)
docker pull maven:3.6.3-jdk-11
暫時不用運行,由Jenkins任務運行。
或者採用直接安裝法,如下
1,下載maven安裝文件
2,解壓,Maven是綠色版,解壓就行
wget http://mirror.bit.edu.cn/apache/maven/maven-3/3.6.1/binaries/apache-maven-3.6.1-bin.tar.gz
tar zvxf apache-maven-3.6.1-bin.tar.gz
PS:安裝文件下載地址可以自己找,wget只是下載功能
3,配置環境變量
vi /etc/profile
在 profile 文件中添加如下內容並保存:
#set maven environment
export MAVEN_HOME=/data/maven/apache-maven-3.6.3
export PATH=$MAVEN_HOME/bin:$PATH
注意:請根據自己的實際安裝路徑配置。
讓修改生效:
source /etc/profile
4,按需修改鏡像資源地址,爲配置的是私服。
編輯文件/opt/maven/apache-maven-3.6.1/conf/settings.xml
在mirrors(鏡像)節點添加以下內容
<mirror>
<id>nexus</id>
<mirrorOf>repositoryId</mirrorOf>
<name>Nexus Repository</name>
<url>http://39.xx.117.xx:8081/repository/maven-public/</url>
</mirror>
5.、測試
顯示版本信息,則說明 安裝成功。
mvn -v
安裝NodeJs
這裏採用docker方式安裝
獲取最新node鏡像(下載)
docker pull node:12.14.1
暫時不用運行,由Jenkins任務運行。
或者採用直接安裝法,如下
1,下載node安裝文件
2,解壓,是綠色版,解壓就行
wget https://nodejs.org/dist/v12.15.0/node-v12.15.0-linux-x64.tar.xz
tar vxf node-v12.15.0-linux-x64.tar.xz
PS:安裝文件下載地址可以自己找,wget只是下載功能
3,配置環境變量
vi /etc/profile
在 profile 文件中添加如下內容並保存:
NODE_HOME=/data/node/node-v12.15.0-linux-x64
export NODE_HOME
export PATH=${PATH}:${NODE_HOME}/bin
注意:請根據自己的實際安裝路徑配置。
讓修改生效:
source /etc/profile
4,測試
顯示版本信息,則說明 安裝成功。
node -v
安裝Consul開發環境服務暴露
由於我到項目採用到是微服務框架,需要用到consul,所以有這一步。
(consul的詳細解說後續補充)
mkdir /data/consul
cd /data/consul
#下載consul
wget https://releases.hashicorp.com/consul/1.6.3/consul_1.6.3_linux_amd64.zip
#解壓
unzip consul_1.6.3_linux_amd64.zip
#啓動consul:
./consul agent -server -ui -bootstrap-expect=1 -data-dir=/tmp/consul -node=agent-one -advertise=172.xx.209.xx -bind=172.xx.209.xx -client=172.xx.209.xx
執行完,別control+c,直接關閉窗口 就可以了,其它操作,重新打開新窗口。
安裝Apollo配置中心
由於我到項目採用到是微服務框架,需要用到Apollo,所以有這一步。
(Apollo的詳細解說後續補充)
採用docker-compose安裝
在安裝目錄創建docker-compose.yaml,如下:
version: "3"
services:
apollo-configservice:
container_name: apollo-configservice
image: 172.xx.209.xx:8082/apollo/config-service:1.4.0
ports:
- 15000:8080
- 8080:8080
volumes:
- "/data/apollo/logs/100003171:/opt/logs/100003171"
- "/data/apollo/config-service/config:/apollo-config-server/config"
environment:
- eureka.instance.ip-address="configservice的外網IP"
- eureka.instance.prefer-ip-address=true
restart: always
apollo-adminservice:
container_name: apollo-adminservice
image: 172.xx.209.xx:8082/apollo/admin-service:1.4.0
ports:
- 15001:8090
volumes:
- "/data/apollo/logs/100003172:/opt/logs/100003172"
- "/data/apollo/admin-service/config:/apollo-admin-server/config"
depends_on:
- apollo-configservice
restart: always
apollo-portal:
container_name: apollo-portal
image: 172.xx.209.xx:8082/apollo/portal-service:1.4.0
ports:
- 30040:8070
volumes:
- "/data/apollo/logs/100003173:/opt/logs/100003173"
- "/data/apollo/apollo-portal/config:/apollo-portal-server/config"
depends_on:
- apollo-adminservice
restart: always
apollo的配置
admin-service配置
目錄:/data/apollo/admin-service/config/application-github.properties
config-service配置
目錄:/data/apollo/config-service/config/application-github.properties
這倆配置一樣,如下:
spring.datasource.url = jdbc:mysql://172.xx.209.xx:3306/ApolloConfigDB?characterEncoding=utf8
spring.datasource.username = ****數據庫用戶
spring.datasource.password =*****密碼
eureka.service.url = http://172.xx.209.x:15000/eureka/
apollo-portal配置
目錄:/data/apollo/apollo-portal/
三個配置文件:
apollo-env.properties
dev.meta=http://172.xx.209.xx:15000
application-github.properties
spring.datasource.url = jdbc:mysql://172.xx.209.xx:3306/ApolloPortalDB?characterEncoding=utf8
spring.datasource.username = ****數據庫用戶
spring.datasource.password =*****密碼
app.properties
appId=100003173
jdkVersion=1.8
apollo的數據庫就不在這詳細說了。
直接執行yaml文件,命令參考如下:
# 後臺運行
docker-compose up -d
# 更新到最新鏡像
docker-compose pull
# 停止鏡像並刪除
docker-compose down
# 指定 a.yaml 文件執行
docker-compose -f a.yaml up