Learn
未读
这里安装的是GitLab社区版(CE),使用的是Centos7系统。
对主机的性能要求:
至少4GB内存
2个CPU内核
5GB以上的存储空间
开始安装安装依赖1curl https://packages.gitlab.com/install/repositories/gitlab/gitlab-ce/script.rpm.sh | sudo bash
安装gitlab软件包1sudo yum install gitlab-ce
开启防火墙需要开启“80”和“443”端口。我这边租用的是腾讯云主机,防火墙策略在前端进行配置,所以跳过这一步。
123sudo firewall-cmd --permanent --zone=public --add-service=httpsudo firewall-cmd --permanent --zone=public --add-service=httpssudo firewall-cmd --reload
配置gitlab打开配置文件
1vim /etc/gitlab/gitlab.rb
先要配置你的url(在此之前完成域名解析) ...
通用命令查看文件大小1du -h /usr/src/xxx.tar
杀死进程1234567killall nginx# 安装yum install psmisc# 在不知道包名称的情况下搜索yum search killall
ssh连接1ssh root@192.168.12.100
添加用户1useradd www
持续输出(用于日志)1tailf access.log
上传文件到远程主机1scp a.jpg index.html root@192.168.10.41:/var/www/html
网络相关常用操作12345678# 查看ipcat /etc/hosts# DNS配置 文件/etc/resolv.conf# 每个网络接口的配置文件/etc/sysconfig/network-script/ifcfg-<interface-name>
设置静态ip1234567891011121314151617# 修改 /etc/sysconfig/network-script/ifcfg-<interface-name># 字符串用引号BOOT ...
注释12# 单行注释:> 多行注释
变量局部变量:在脚本中定义,只在shell实例中生效
环境变量:也就是当前环境变量
变量操作12345678910111213141516# 创建变量(等号两边不能有空格)name="test"# 创建局部变量(只在函数体中使用)local name="test"# 使用变量echo $nameecho ${name}# 创建只读变量(不可被修改)name="only_read"readonly name# 删除变量unset name
字符串变量1234567891011121314# 单引号(保持原字符输出,不支持转义,格式化,单引号中不能出现单独单引号)var='test'# 双引号(可以转义)var="my name is ${name}"# 获取字符串长度,使用#符号name="test"echo ${#name}# 提取字符串(类似于python字符串 ...
这是一份Rez中文文档,供大家学习讨论。作者能力有限,翻译也许有不当的地方,如果发现问题还望指出,感激不尽。原项目地址:https://github.com/nerdvegas/rez
入门主页 (Home)
介绍安装 (Installation)入门 (Getting Started)基础概念 (Basic Concepts)配置 (Configuring Rez)
软件包软件包命令 (Package Commands)软件包定义指南 (Package Definition Guide)变体 (Variants)临时包 (Ephemeral Packages)
RezContextsBundlesSuitesBuilding PackagesCopying PackagesPackage CachingEnvironment Variables
如果文档有所帮助,可以关注这个公众号支持下作者thx!
什么是RezRez是一个跨平台程序包管理器,它可以给程序配置独立的环境。与其它程序包环境管理不同的是,所有的程序包的安装都在一个中央统一的位置,每个独立环境只是引用了这些包。所以它的环境配置是轻量级的,尽管有几百个包,通常也只需要几秒就可以进行配置。
基本原理Rez获取一个包的请求列表,然后构建目标环境,并解决所有包的依赖问题。支持任何软件包。(包括Python)每个软件包都有一个简洁的定义文件(package.py),这个文件用于定义其依赖项,命令,以及其它meatadata信息。
一个python的软件包定义文件:
123456789101112name = "requests"version = "2.8.1"authors = ["Kenneth Reitz"]requires = [ "python-2.7+"]def commands(): env.PYTHONPATH.append("{root}/python")
上述文件所表达的含 ...
下载Source code,然后打开终端进入rez-2.75.0目录中:python ./install.py
默认会安装到 /opt/rez 中,如果需要安装到其它位置,使用install.py -h查看如何安装。
安装成功提示:
12345SUCCESS! To activate Rez, add the following path to $PATH:/opt/rez/bin/rezYou may also want to source the completion script (for bash):source /opt/rez/completion/complete.sh
然后添加环境变量,将/opt/rez/bin/rez 添加到$PATH。对于linux系统,可以运行这个脚本使命令能自动补全:source /opt/rez/completion/complete.sh
文档中也提到可以用pip进行安装:pip install rez
不过这样的安装方式并不能很好的用在生产环境中,因为rez并不只是一个普通的python包。使用install脚本安装 ...
基本软件包安装完成后,需要创建一些基本的Rez软件包。使用rez-bind工具进行创建,这些软件包会引用系统上已经安装的软件。(—quickstart是以标准创建)
12345678910111213141516171819202122]$ rez-bind --quickstartBinding platform into /home/ajohns/packages...Binding arch into /home/ajohns/packages...Binding os into /home/ajohns/packages...Binding python into /home/ajohns/packages...Binding rez into /home/ajohns/packages...Binding rezgui into /home/ajohns/packages...Binding setuptools into /home/ajohns/packages...Binding pip into /home/ajohns/packages...Successfully ...
概述Rez管理软件包的过程:首先从rez请求一个软件包列表,rez会对包进行解析。如果解析没有成功,则系统会给出相关信息提示。当请求的软件包版本发生冲突的时候,Rez也会给出提示。
“…the latest version of houdini”
“…maya-2009.1”
“…the latest rv and the latest maya and houdini-11.something”
“…rv-3.something or greater”
“…the latest houdini which works with boost-1.37.0”
“…PyQt-2.2 or greater, but less than PyQt-4.5.3”
在本文许多示例中,我们会使用rez-env命令行工具。该工具获取软件包请求列表,并创建结果配置环境。exit命令即可退出环境。
版本Rez对版本号格式的支持:数字,字母,和下划线的任意组合,并用点或破折号分隔。
有效的格式:
1
1.0.0
3.2.build_13
4.rc1
10a-5
版本号遵循严格排序方式,区别大小写 ...
概述Rez具有大量可配置的设置。可以在这里找到设置的默认值和每个设置的释义。最终的设置通过以下方式确定:
首先在Rez安装文件中的rezconfig.py读取设置
如果REZ_CONFIG_FILE环境变量指向另一个文件,则设置被覆盖(变量也可以是一个文件夹路径,从而读取多个配置文件)
如果$HOME/.rezconfig中存在该设置,则进一步覆盖前面的设置
如果存在环境变量REZ_XXX,则该设置再次被覆盖。这里的”XXX”是设置键的大写版本,比如image_viewer将会被REZ_IMAGE_VIEWER覆盖。
一种特殊情况,仅在软件包生成或发布期间才生效。在这种情况下,如果程序包定义文件包含config部分,则会覆盖之前所有设置。
在一个文件中定义rez设置是常见的选择,然后为所有的用户更改环境变量REZ_CONFIG_FILE以指向这个文件。
Notes:无需在文件中设定所有的设置,只用修改所需的即可,其它没有设置的值则会从默认设置中获取。
合并规则当存在多个配置源时,这些设置会合并在一起。(一个配置文件不会替代前一个配置文件,而是通过值覆盖的方式)
遵循下面的 ...
概述程序包定义文件(package.py)通常定义命令的部分。这是一个例子,用于确定如何配置环境和软件包的Python函数:
123def commands(): env.PYTHONPATH.append("{root}/python") env.PATH.append("{root}/bin")
这是一个典型例子,程序包将其路径添加到PYTHONPATH,并将其工具添加到PATH。{root} 字符串代表软件包的安装目录。
配置rez环境后,解析列表中的每个软件包都将其命令部分解释并转换为shell代码。(bash或其它,这取决于系统平台。)shell代码是源代码,用于配置环境。在已配置的环境中,变量REZ_CONTEXT_FILE指向此shell代码文件,
然后命令rez-context-interper会对其进行打印输出。
在commands函数中使用的python API称为rex(rez执行语言)。你可以使用此API执行一些常见操作,包括设置环境变量。
注意:如果需要导 ...