前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >燎原社云原生实战营试验环境脚本

燎原社云原生实战营试验环境脚本

原创
作者头像
谢正伟
修改2021-11-04 15:50:04
7730
修改2021-11-04 15:50:04
举报
文章被收录于专栏:云原生研究云原生研究

腾讯云【燎原社】是腾讯云原生面向广大企业CTO、技术团队Leader、核心开发运维技术,打造的云原生全栈化交流&云原生技术应用实战的交流平台项目,意在助力解决企业云原生改造最后一公里问题。目前腾讯云【燎原社】已经推出云原生高端闭门会、云原生技术实战营、企业云原生容器改造内训服务、专家一对一咨询等多种形式。


实战营所使用的是一个多语言微服务项目,开发语言包含了 java,go,nodejs,php,dotnet 等,如果在本地完整配置这些语言的开发运行环境会比较麻烦,并且会浪费不少时间。所以实战营课程为学员提供了虚拟机镜像,这个虚拟机镜像已经包含了运行环境,项目源代码,以及依赖包等。

下面的脚本是这个虚拟机的制作过程,感兴趣的同学可以自己动手实践这一部分。

使用系统:CentOS 8

由于源代码尚未完全公开,业务依赖包安装部分仅供参与学习的学员参考。(想报名的同学可以收藏此文章,参考页面底部链接报名,腾讯云推荐人可以填写我的名字,此文章的底部会持续更新)。

代码语言:javascript
复制
dnf update -y

#-----------------------
# install tools
#-----------------------
dnf install -y zsh git

cd /root
sh -c "$(wget https://raw.github.com/ohmyzsh/ohmyzsh/master/tools/install.sh -O -)"



#-----------------------
# install docker
#-----------------------
dnf install -y yum-utils
yum-config-manager \
    --add-repo \
    https://download.docker.com/linux/centos/docker-ce.repo
dnf install -y docker-ce docker-ce-cli containerd.io

systemctl start docker
systemctl enable docker


#-----------------------
# install kubectl
#-----------------------
wget -O /usr/local/bin/kubectl https://dl.k8s.io/release/v1.22.2/bin/linux/amd64/kubectl
chmod 755 /usr/local/bin/kubectl


#-----------------------
mkdir /app

#-----------------------
# install wrk
#-----------------------
dnf install -y openssl-devel
cd /app
git clone https://github.com/wg/wrk.git wrk
cd wrk
make
cp wrk /usr/local/bin
cd /app
rm -rf ./wrk

#-----------------------
# install go
#-----------------------
cd /app
wget https://golang.google.cn/dl/go1.17.2.linux-amd64.tar.gz
tar xzf go1.17.2.linux-amd64.tar.gz
rm -f go1.17.2.linux-amd64.tar.gz
export PATH=$PATH:/app/go/bin

#-----------------------
# install jdk
#-----------------------
dnf install -y java-1.8.0-openjdk java-1.8.0-openjdk-devel

cd /app
wget http://mirrors.tencent.com/apache/maven/maven-3/3.8.3/binaries/apache-maven-3.8.3-bin.tar.gz
tar xzf apache-maven-3.8.3-bin.tar.gz
mv apache-maven-3.8.3 maven
export PATH=$PATH:/app/maven/bin
rm -f xzf apache-maven-3.8.3-bin.tar.gz

#-----------------------
# install php
#-----------------------
yum install -y yum-utils http://rpms.remirepo.net/enterprise/remi-release-8.rpm
yum module list php
yum module reset php
yum module enable php:remi-7.4
yum module list php
dnf install -y php php-fpm php-cli php-phar php-xml php-mbstring php-json php-pdo php-pdo_mysql php-tokenizer php-dom php-fileinfo php-xmlwriter

php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');"
HASH="$(wget -q -O - https://composer.github.io/installer.sig)"
php -r "if (hash_file('SHA384', 'composer-setup.php') === '$HASH') { echo 'Installer verified'; } else { echo 'Installer corrupt'; unlink('composer-setup.php'); } echo PHP_EOL;"
php composer-setup.php --install-dir=/usr/local/bin --filename=composer


#-----------------------
# install nodejs
#-----------------------
cd /app
wget https://npm.taobao.org/mirrors/node/v14.18.1/node-v14.18.1-linux-x64.tar.gz
tar xzf node-v14.18.1-linux-x64.tar.gz
mv node-v14.18.1-linux-x64 nodejs
xzf node-v14.18.1-linux-x64.tar.gz
export PATH=$PATH:/app/nodejs/bin

#-----------------------
# install dotnet
#-----------------------
dnf -y install dotnet-sdk-5.0


cd /
# 这个 github 暂时未公开,参与学员可获取
git clone https://github.com/TencentCloudNative/microservices-demo
cd /microservices-demo
git checkout main

#-----------------------
# install shopcart denpendencies
#-----------------------
cd /microservices-demo/src/shopcart
export GOPROXY=https://goproxy.io,direct
go get ./...


#-----------------------
# install order denpendencies
#-----------------------
cd /microservices-demo/src/order/order
dotnet restore

#-----------------------
# install review denpendencies
#-----------------------
cd /microservices-demo/src/review
composer install


#-----------------------
# change npm registry
#-----------------------
npm config set registry http://registry.npm.taobao.org


#-----------------------
# install passport denpendencies
#-----------------------
cd /microservices-demo/src/passport
npm i

#-----------------------
# install mall denpendencies
#-----------------------
cd /microservices-demo/src/mall
npm i

#-----------------------
# install product denpendencies
#-----------------------
cd /microservices-demo/src/product
mvn clean package -DskipTests


# append config to .zshrc
cat <<EOF >> /root/.zshrc
export PATH=$PATH:/app/go/bin
export GOPROXY=https://goproxy.io,direct
export PATH=$PATH:/app/nodejs/bin
cd /microservices-demo
EOF


上海站(2021年10月27-2021年10月29)

深圳站活动现场回顾(2021年9月)

https://mp.weixin.qq.com/s/5IQEsmePTnO9iCrtEyY0lg

北京站活动现场回顾(2021年7月)

https://mp.weixin.qq.com/s/XpTaL1xETcDmNjdeaehm1A

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
容器服务
腾讯云容器服务(Tencent Kubernetes Engine, TKE)基于原生 kubernetes 提供以容器为核心的、高度可扩展的高性能容器管理服务,覆盖 Serverless、边缘计算、分布式云等多种业务部署场景,业内首创单个集群兼容多种计算节点的容器资源管理模式。同时产品作为云原生 Finops 领先布道者,主导开源项目Crane,全面助力客户实现资源优化、成本控制。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档