2019年8月29日
1. 流程介绍 开发人员合并代码到gogs,触发钩子,drone根据git仓库中的.drone.yml进行工作,使用fpm进行rpm打包并更新本地yum仓库
2. .drone.yml workspace: base: /root/gogs path: epc-c pipeline: build: image: centos7.5:dev environment: - SSH_ARGS=-p 22 -o StrictHostKeyChecking=no - SCP_ARGS=-P 22 -o StrictHostKeyChecking=no - TEST_SERVER=root@192.168.9.105 - RUN_PATH=/root/df/caddy/filebrowser/files/EPC-VERSION commands: - git_rev=$(git rev-parse HEAD| cut -c1-10) - git clone http://192.168.9.105:60080/dongfeng/pack-epc-c.git - cd pack-epc-c - ./pack-epc-c.sh - rpm_name="baicells-epc-c-$(cat VERSION)-$(cat RELEASE).x86_64.rpm" - rpm_rename=$(echo $rpm_name| awk -F .rpm '{print $1}') - rpm_newname="$rpm_rename"_"$(date '+%Y%m%d')"_"$git_rev".rpm - eval $(ssh-agent -s) - ssh-add /root/.ssh/id_rsa - scp $SCP_ARGS $rpm_name "$TEST_SERVER":"$RUN_PATH"/"$rpm_newname" - ssh "$TEST_SERVER" > /dev/null 2>&1 << eeooff - cd /root/df/caddy/yum.……
阅读全文
2019年8月29日
1. caddy介绍 caddy官网:https://caddyserver.com/ 项目源码:https://github.com/caddyserver/caddy
2. 下载caddy 从官网下载caddy,下载时选择需要的插件
3. 创建工作路径 mkdir caddy-workspace cd caddy-workspace 4. 创建Caddyfile 192.168.9.105:8888 { gzip root filebrowser log access.log errors errors.log filebrowser / filebrowser/files { database /root/df/caddy/filebrowser/filebrowser.db } } 192.168.9.105:9999 { gzip browse root yum.repo log access.log errors errors.log } 192.168.9.105:7777 { gzip browse root static log access.log errors errors.log } 192.168.9.105:80 { proxy / http://192.168.103.147:80 } 192.168.9.105:5566 { gzip root test } 5. 运行caddy caddy & 6.……
阅读全文
2019年8月29日
1. docker-compose介绍 docker-compose文档:https://docs.docker.com/compose/
drone文档:https://docs.drone.io/
2. 安装docker-compose yum -y install epel-release yum -y install python-pip pip install --upgrade pip pip install docker-compose #安装补全工具 yum install bash-completion curl -L https://raw.githubusercontent.com/docker/compose/$(docker-compose version --short)/contrib/completion/bash/docker-compose > /etc/bash_completion.d/docker-compose 3. 建立工作路径 mkdir docker-workspace cd docker-workspace 4. 创建docker-compose.yaml version: '2' services: #gogs: #image: gogs/gogs:latest #ports: # - "10022:22" # - 3000:3000 #volumes: # - /vagrant/gogs-data:/data #restart: always #mysql: #image: mysql:latest #ports: # - 3306:3306 #volumes: # - /vagrant/mysql-data:/var/lib/mysql #restart: always #environment: # - MYSQL_ROOT_PASSWORD=baicells # - MYSQL_DATABASE=gogs drone-server: image: drone/drone:latest ports: - 8000:8000 - 9000:9000 volumes: - /var/lib/drone:/var/lib/drone restart: always environment: # 开启注册,此配置允许任何人自注册和登录系统 - DRONE_OPEN=true #直接配置172.……
阅读全文
2019年8月29日
1. jenkins介绍 jenkins官网:https://jenkins.io/zh/
项目源码:https://github.com/jenkinsci/jenkins
2. docker安装jenkins 1 )下载jenkins的docker镜像 docker pull jenkins 2 )创建jenkins存储目录 mkdir /home/var/jenkins 3 )cd进入/home/var/目录,设置jenkins文件夹的归属用户UID为1000 chown -R 1000:1000 jenkins/ 4 )使用jenkins镜像创建容器 docker run -itd -p 8080:8080 -p 50000:50000 --name jenkins --privileged=true -v /home/var/jenkins:/var/jenkins_home jenkins 5 )使用 ip:8080执行图像界面安装 ……
阅读全文
2019年8月29日
1. gogs介绍 gogs官网:https://gogs.io/ 项目源码:https://github.com/gogs/gogs
2. docker安装gogs 1 )下载gogs的docker镜像 docker pull gogs/gogs 2 )创建gogs存储目录 mkdir -p /var/gogs 3 )使用gogs镜像创建容器 docker run -d --name=gogs -p 10022:22 -p 10080:3000 -v /var/gogs:/data gogs/gogs 4 )使用 ip:10080执行图像界面安装 ……
阅读全文
2019年8月28日
1. 复制光盘文件 1)挂载iso镜像 #创建目录用于挂载光盘 mkdir /root/centos7 #挂载iso镜像 mount -o loop CentOS-7.0-1406-x86_64-DVD.iso /root/centos7 2)复制光盘文件到编辑目录进行编辑 因为挂载上iso镜像是只读的,如果要编辑,需要将文件复制出来,再编辑。
#首先创建编辑目录: mkdir /root/centos7_iso #复制光盘文件: cp -rf /root/centos7/* /root/centos7_iso/ #diskinfo treeinfo文件需单独拷贝下: cp /root/centos7/.discinfo /root/centos7_iso/ cp /root/centos7/.treeinfo /root/centos7_iso/ 2. 编辑ks.cfg文件 系统安装的时候,按照ks.cfg文件的内容进行安装,我们把ks.cfg文件放到isolinux目录下:
cd /root/centos7_iso/isolinux vim ks-init.cfg #platform=x86, AMD64, or Intel EM64T #version=DEVEL # Install OS instead of upgrade install # Keyboard layouts keyboard 'us' # Root password rootpw --iscrypted $1$JtB/A66X$GCT7X3FCJVAPGd3sEY0mx0 # System language lang en_US # System authorization information auth --useshadow --passalgo=sha512 # Use cdrom installation media cdrom # Use text mode install #text graphical # SELinux configuration selinux --disabled # Do not configure the X Window System skipx #firstboot --enable #ignoredisk --only-use=sda # Firewall configuration firewall --disabled # Network information network --bootproto=dhcp --device=eth0 --onboot=no network --hostname=localhost.……
阅读全文
2019年8月28日
1. 安装工具 yum install -y createrepo 2. 编辑 comps.xml <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE comps PUBLIC "-//CentOS//DTD Comps info//EN" "comps.dtd"> <comps> <group> <id>epc</id> <name>epc</name> <name xml:lang="en_GB">epc</name> <description>epc installation.</description> <default>false</default> <uservisible>false</uservisible> <packagelist> <packagereq type="mandatory">baicells-epc-base</packagereq> <packagereq type="mandatory">baicells-epc-ui</packagereq> <packagereq type="mandatory">baicells-epc-ovs-rest</packagereq> <packagereq type="mandatory">baicells-epc-ovsdb-agent</packagereq> <packagereq type="mandatory">baicells-epc-signaltrace</packagereq> <packagereq type="mandatory">baicells-epc-gwsc</packagereq> <packagereq type="mandatory">baicells-epc-openapi</packagereq> </packagelist> </group> </comps> 3. 创建仓库 createrepo -g comps.xml . #精确分组 #createrepo . #createrepo --update 4. 拷贝rpm包到仓库 mkdir rpms cp *.rpm rpms/ 5.……
阅读全文
2019年8月28日
1. 什么是hugo 引用一下Hugo官网的描述
The world’s fastest framework for building websites.
Hugo是一个非常受欢迎的、开源的静态网站生成工具,和Hexo类似。 它速度快,扩展性强.
更多的关于Hugo的介绍,请参考Hugo的官网 https://gohugo.io/ .
2. 安装 hugo 从Github Release页面下载对应的二进制文件,然后把它放在你的PATH目录里即可使用。支持任何平台,根据自己的平台选择相应的二进制包即可。 github链接:https://github.com/gohugoio/hugo
#加入环境变量和执行权限 cp hugo /usr/bin/hugo chmod +x /usr/bin/hugo 3. 使用hugo创建站点 hugo new site workerwork.github.io-site github链接:https://github.com/workerwork/workerwork.github.io-site
4. 给站点添加主题 cd workerwork.github.io-site git init git submodule add https://github.com/rujews/maupassant-hugo themes/maupassant # Edit your config.toml configuration file # and add the maupassant theme. echo 'theme = "maupassant"' >> config.toml 5.……
阅读全文
2019年8月28日
kubernetes Kubernetes官方提供三种部署方式: minikube minikube可以实现一种轻量级的Kubernetes集群,通过在本地计算机上创建虚拟机并部署只包含单个节点的简单集群。Minikube适用于Linux,MacOS和Windows系统。Minikube CLI提供集群管理的基本操作,包括 start、stop、status和delete
kubeadm kubeadm是Kubernetes1.6开始官方推出的快速部署Kubernetes集群工具,其思路是将Kubernetes相关服务容器化(Kubernetes静态Pod)以简化部署
custom solutions 最完整的方式,从零开始二进制搭建
部署步骤 准备环境 # 关闭防火墙: # systemctl stop firewalld # systemctl disable firewalld # 关闭selinux: # sed -i 's/enforcing/disabled/' /etc/selinux/config # setenforce 0 # 关闭swap: # swapoff -a # 临时 # vim /etc/fstab # 永久 # vim /etc/sysctl.conf: net.bridge.bridge-nf-call-ip6tables = 1 net.bridge.bridge-nf-call-iptables = 1 net.bridge.bridge-nf-call-arptables = 1 # 设置主机名: # hostnamectl set-hostname master # 修改/etc/hosts文件: # cat /etc/hosts 127.……
阅读全文
2019年2月20日
AUTO-EPC 使用方法 1 安装本地yum源 在ssh终端任意路径下,使用root用户执行
wget http://192.168.9.105:60080/dongfeng/local-yum/raw/master/install-local-repo.sh | sh 2 软件安装和升级 2.1 一般版本安装和升级 如果是初始安装,执行
yum install [rpm包名] 如果是升级,执行
yum update [rpm包名] 2.2 特定版本安装和升级 在本地文件共享服务器http://192.168.9.105:8888/files/EPC-VERSION/ 中存有历史版本文件,取出升级即可
EPC安装包含的RPM包 baicells-epc-ui-3.4.3-1.x86_64_20190220_8799690909.rpm baicells-epc-signaltrace-1.0.0-2.x86_64_20190219_aa985a04ab.rpm baicells-epc-ovsdb-agent-1.0.1-1.x86_64_20190219_e3f0eca7eb.rpm baicells-epc-ovs-rest-1.0.0-2.x86_64_20190219_0c410e6e7d.rpm baicells-epc-openapi-2.0.0-1.x86_64_20190219_52edfb20ba.rpm baicells-epc-gwsc-1.0.0-2.x86_64_20190219_379c4f0e4b.rpm baicells-epc-base-2.0.0-1.x86_64_20190219_d0b3e89484.rpm baicells-epc-c-2.0.0-1.x86_64_20190219_d0b55fsf32.rpm baicells-epc-ovs-1.0.0-1.x86_64_20190219_d1333f1f34.rpm EPC各组件代码仓库 base库 http://192.168.9.105:60080/dongfeng/epc-base ui库 http://192.168.9.105:60080/dongfeng/epc-ui onos库 http://192.168.9.105:60080/baicells/onos/src/softcn ovs-rest库 http://192.168.9.105:60080/baicells/ovs-rest ovsdb-config-agent库 http://192.168.9.105:60080/baicells/ovsdb-config-agent openapi库 http://192.168.9.105:60080/dongfeng/openapi signaltrace库 http://192.168.9.105:60080/dongfeng/signaltrace epc-c库 http://192.168.9.105:60080/dongfeng/epc-c ovs库 http://192.168.9.105:60080/dongfeng/ovs RPM包构造方法 开发在git代码托管服务器http://192.168.9.105:60080 上提交更新代码 由web钩子触发后台drone自动使用fpm进行rpm打包 打包好的rpm包自动拷贝到文件共享服务器http://192.168.9.105:8888/files/EPC-VERSION/ 并自动更新本地yum仓库 RPM打包版本 版本说明 以baicells-epc-ui-3.……
阅读全文