Linux -- 项目服务部署学习
1、必要设置
yum install net-tools wget vim -y# vim ~/.vimrcset ts=2
set sw=2
2、安装 docker
# 安装 docker
yum install -y docker# 屏蔽 firewalld
vim /etc/sysconfig/docker
OPTIONS 增加 --iptables=false# 配置加速器,并修改 /etc/docker/daemon.json
curl -sSL https://get.daocloud.io/daotools/set_mirror.sh | sh -s http://f1361db2.m.daocloud.io# 启动 docker
systemctl enable docker
systemctl daemon-reload
systemctl start docker# 查看 docker
docker version
3、安装 docker-compose
# 安装 docker-compose
curl -L https://get.daocloud.io/docker/compose/releases/download/1.24.1/docker-compose-`uname -s`-`uname -m` > /usr/local/bin/docker-compose chmod +x /usr/local/bin/docker-compose# 增加权限
chmod +x /usr/local/bin/docker-compose
4、安装必要服务
version: "3"services:mysql:image: docker.io/mysql:5.6ports:- "3307:3306"volumes:- "/usr/local/service/base/mysql-3307:/var/lib/mysql"container_name: mysqlenvironment:MYSQL_ROOT_PASSWORD: rootprivileged: trueredis:image: daocloud.io/library/redis:3.2.9ports:- "6380:6379"volumes:- "/usr/local/service/base/redis-6380:/data"container_name: redisentrypoint:- redis-server
5、安装 zabbix
version: "3"services:zabbix-server-mysql:image: docker.io/zabbix/zabbix-server-mysqlports:- "10051:10051"container_name: zabbix-server-mysqlenvironment:- DB_SERVER_HOST=10.10.1.127- DB_SERVER_PORT=3307- MYSQL_USER=root- MYSQL_PASSWORD=rootzabbix-web-nginx-mysql:image: docker.io/zabbix/zabbix-web-nginx-mysqlports:- "20080:80"container_name: zabbix-web-nginx-mysqlenvironment:- DB_SERVER_HOST=10.10.1.127- DB_SERVER_PORT=3307- MYSQL_USER=root- MYSQL_PASSWORD=rootlinks:- zabbix-server-mysql:zabbix-server
6、安装 zabbix-agent
# 安装源 http://repo.zabbix.com/zabbix
wget http://repo.zabbix.com/zabbix/4.3/rhel/7/x86_64/zabbix-release-4.3-3.el7.noarch.rpm
rpm -ivh zabbix-release-4.3-3.el7.noarch.rpm# 安装
yum install zabbix-agent -y# 修改配置文件
vim /etc/zabbix/zabbix_agentd.conf
Server=172.18.0.3
ServerActive=172.18.0.3# 启动
systemctl start zabbix-agent
7、安装 nginx
# 安装依赖
yum -y install gcc readline-devel zlib-devel pcre-devel openssl-devel# 安装 nginx
wget http://nginx.org/download/nginx-1.9.9.tar.gz
tar -xvzf nginx-1.9.9.tar.gz && mv nginx-1.9.9 nginx
cd nginx && ./configure
make && make install# 启动 nginx
cd /usr/local/nginx/sbin
./nginx# 开启 80 端口
firewall-cmd --add-port=80/tcp --permanent
firewall-cmd --reload
8、安装 rap2
# 搭建 node 环境
wget https://npm.taobao.org/mirrors/node/latest-v10.x/node-v10.0.0-linux-x64.tar.gz
tar -xvzf node-v10.0.0-linux-x64.tar.gz && mv node-v10.0.0-linux-x64 node
mv node /usr/local/vim /etc/profile
export NODE_HOME=/usr/local/node
export PATH=$NODE_HOME/bin:$PATH
source /etc/profile# 运行后台
version: '2.2'services:delos:container_name: rap2-delosimage: blackdog1987/rap2-delos:2.6.aa3be03environment:- MYSQL_URL=10.10.1.127- MYSQL_PORT=3307- MYSQL_USERNAME=root- MYSQL_PASSWD=root- MYSQL_SCHEMA=rap2- REDIS_URL=10.10.1.127- REDIS_PORT=6380- NODE_ENV=productionworking_dir: /appprivileged: truecommand: /bin/sh -c 'node scripts/init; node dispatch.js'ports:- "38080:8080"# 运行前台
git clone https://github.com/thx/rap2-dolores.gitcd rap2-dolores/src/config
config.dev.ts config.prod.tsnpm install
npm install -g servenpm run build
nohup serve -s ./build -p 8090 &# 权限问题报错解决办法
npm uninstall node-sass
npm install -g node-sass -unsafe-perm
npm install node-sass -unsafe-perm
9、安装禅道
version: "3"services:zentao:image: idoop/zentaoports:- "38081:80"volumes:- "/usr/local/service/zentao/zbox:/opt/zbox"container_name: zentaoprivileged: true# 用户名密码
admin 123456
10、配置nginx
# 配置 host
10.10.1.127 www.testserver.com
10.10.1.127 zabbix.testserver.com
10.10.1.127 rap2.testserver.com
10.10.1.127 bug.testserver.comserver {listen 80;server_name bug.testserver.com;location / {proxy_pass http://10.10.1.127:38081;}
}server {listen 80;server_name rap2.testserver.com;location / {proxy_pass http://10.10.1.127:8090;}
}server {listen 80;server_name zabbix.testserver.com;location / {proxy_pass http://10.10.1.127:20080;}
}
11、安装 tomcat
version: "3"services:tomcat:image: daocloud.io/library/tomcat:8.5.15-jre8ports:- "8080:8080"container_name: tomcatvolumes:- "/usr/local/service/tomcat/tomcat8080:/usr/local/tomcat/webapps"privileged: true
12、项目层次关系
├── base
│ ├── docker-compose.yml
│ ├── mysql-3307
│ └── redis-6380
├── rap2
│ ├── docker-compose.yml
│ └── rap2-dolores
├── tomcat
│ ├── docker-compose.yml
│ └── tomcat8080
├── zabbix
│ └── docker-compose.yml
└── zentao├── docker-compose.yml└── zbox
13、监控 tomcat
# 开启 jmx
version: "3"services:tomcat:image: daocloud.io/library/tomcat:8.5.15-jre8ports:- "8080:8080"- "9999:9999"container_name: tomcatvolumes:- "/usr/local/service/tomcat/tomcat8080:/usr/local/tomcat/webapps"environment:- CATALINA_OPTS=-Djava.rmi.server.hostname=10.10.1.127 -Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.port=9999 -Dcom.sun.management.jmxremote.rmi.port=9999 -Dcom.sun.management.jmxremote.authenticate=false -Dcom.sun.management.jmxremote.ssl=falseprivileged: true# 安装 zabbix-java-gateway
yum install -y zabbix-java-gateway
systemctl start zabbix-java-gateway
lsof -i:10052vim /etc/zabbix/zabbix_server.conf
JavaGateway=192.168.23.131
JavaGatewayPort=10052
StartJavaPollers=5# docker 方式,启动项加上
- ZBX_JAVAGATEWAY_ENABLE=true
- ZBX_JAVAGATEWAY=192.168.23.131
14、监控 mysql
zabbix_get -s10.10.1.127 -p 10050 -k mysql.ping
15、监控 redis
下载地址: redis-zabbix.zip
https://pan.baidu.com/s/1EU78C6D6NrRXvOcMQ-oDGw
# 安装 redis-cli
yum install epel-release
yum install redis# web 界面导入模板文件# 参数文件
vim /etc/zabbix/zabbix_agentd.d/redis.conf# 命令文件
vim /usr/local/service/zabbix/redismonitor.sh
chmod a+x /usr/local/service/zabbix/redismonitor.sh
16、监控 nginx
下载地址: nginx-zabbix.zip
https://pan.baidu.com/s/1dNII8sa3gawyFdAYZBq6Sg
# web 界面导入模板文件# 参数文件
vim /etc/zabbix/zabbix_agentd.d/userparameter_nginx.conf# 命令文件
vim /usr/local/service/zabbix/nginx.sh
chmod a+x /usr/local/service/zabbix/nginx.sh
Linux -- 项目服务部署学习相关推荐
- Linux项目自动部署
场景:linux中自动部署项目在工作中经常遇到,快速高效的部署项目能够大幅提高工作效率.现在将项目部署的过程记录下来,以供参考,其中用到的知识点现在还有很多不很清楚,后面要好好琢磨琢磨! 1 项目部署 ...
- Linux常用服务部署与优化
3,1nfs部署和优化-1 NFS == network file system 假如有三台机器A, B, C,它们需要访问同一个目录,目录中都是图片,传统的做法是把这些图片分别放到A, B, C. ...
- Linux常用服务部署与优化之NFS篇
NFS(network file system)的简称,是linux系统之间常用的一种文件共享方式,下面简述其搭建过程,需要两个linux系统的虚拟机,假设客户端的ip为192.168.1.105,服 ...
- linux瓦片服务部署,基于Nginx进行地图瓦片缓存的方案描述
1. 背景 在产品的迭代中,我们完成了移动端瓦片缓存方案和服务端瓦片缓存方案.但是当我们遇到旧产品不易升级,或正式运行项目无法立刻进行产品更新时,我们可以采用基于Nginx的缓存设置来实现第三方瓦片服 ...
- Linux项目之部署lnmp架构
文章目录 1. 安装nginx 2. 安装mysql 3. 安装PHP 4. 配置nginx 5. 利用lnmp搭建WordPress 5.1 配置数据库 5.2 安装和配置 WordPress 环境 ...
- 项目怎么部署到服务器上_项目开发学习 云服务器的部署
在项目开发和学习的过程中,前端与后端进行数据交互是非常重要的一环,无论是web开发还是移动开发,都会涉及到这一问题.如今在涉及到数据交互的应用中,后台都有云服务器做支撑.通俗地讲,你自己的电脑就可以看 ...
- VMWare安装使用、Linux命令、Docker安装和Linux项目部署
Linux 一.Linux基础 1.1 Linux介绍 1.2 Linux常见发布版本 1.3 Linux和Windows的区别 1.4 Linux常见命令 二.VMWare安装使用 2.1 VMWa ...
- Linux从安装到实战+学校Linux+瑞吉外卖Linux项目部署
1.0初识Linux 1.1虚拟机介绍 1.2VMware Workstation虚拟化软件 下载CentOS; 1.3远程链接Linux系统 &FinalShell 链接finalshell ...
- Linux中java项目环境部署,简单记录一下
这里只是简单的记录一下linux环境下面如何快速的搭配好环境,使你的项目能在linux环境上面运行. 很多时候,我们都是用windows环境进行配置调试的,而真正很多服务器都是在linux服务器上面的 ...
最新文章
- Linux系统与我之间的故事
- R语言dplyr包通过数据列的索引重命名数据列实战(Rename Column by Index Position)
- Android 解决Android的TextView和EditText换行问题
- Hibernate数据保存操作方法的原理对比
- python 下载图片到内存卡_python - 获取图像大小而不将图像加载到内存中
- SCU 4444: Travel(最短路)
- 使用Dwr时出现java.lang.SecurityException: Access to debug pages is denied
- OpenWHO课程 Introduction to COVID-19: methods for detection, prevention, response and control 小抄
- 技术向Technical Artist(TA)如何学习——分享个人经历
- 【2017宁波联考】生成树
- 企鹅的游戏(penguin)
- Mac 显示隐藏文件夹
- less日常容易忘记的知识记录
- easyUI入门教程
- Android新浪微博分页加载,Android仿新浪微博自定义ListView下拉刷新(4)
- SEO人员,一定要为首页进行排名吗?
- Word文档 替换功能
- 解决网上有重名的问题
- 手持gps坐标设置_学术 | 许其凤院士:GPS移动定位与移动网络定位精度的分析
- 强烈给大家推荐一款简单好用免费的甘特图项目进度管理工具-进度猫