docker部署gitlab CI/CD (一)第一篇:部署gitlab及汉化

网上很多类似教程,但多少有点夹带私货,有的竟然拉取的第三方镜像,而且很多都要修改配置文件,完全不知道是为什么,于是结合其他人的博客和官方文档,知其然也要知其所以然,于2023年4月17日写下这篇。

官方文档:

  http://docs.gitlab.com/ee/install/docker.html

主要参考博客:

  http://www.cnblogs.com/diaomina/p/12830449.html 

这篇文档很通顺,但中途有错误,需结合评论一起食用

建议:

  1.服务器内存建议大于4G,抄自:http://about.gitlab.com/install/

  2.如果已经部署好gitlab,想看cicd环节,请移至最终篇:docker部署gitlab CI/CD (二)终篇:部署gitlab runner和添加gitlab-ci.yml文件 终极踩坑版

作者环境:

  CentOS7

开始:

  #1.拉取gitlab镜像

docker pull gitlab/gitlab-ce

ee是企业版,ce是社区版

  #2.运行gitlab

docker run \
 -itd  \
 -p 9080:9080 \
 -p 9022:22 \
 -v /home/gitlab/etc:/etc/gitlab  \
 -v /home/gitlab/log:/var/log/gitlab \
 -v /home/gitlab/opt:/var/opt/gitlab \
 --restart always \
 --privileged=true \
 --name gitlab \
 gitlab/gitlab-ce

解释:一般80和22端口早就被占用了,

这里之所以映射容器内部9080而不是80,因为启动后仓库的http克隆地址gitlab会认为是80,从而给你错误的仓库地址,如下图,并没有端口号,实际是请求不通的

-i  以交互模式运行容器,通常与 -t 同时使用命令解释:

-t  为容器重新分配一个伪输入终端,通常与 -i 同时使用

-d  后台运行容器,并返回容器ID

-p 9080:9080  将容器内9080端口映射至宿主机9080端口,这是访问gitlab的端口

-p 9022:22  将容器内22端口映射至宿主机9022端口,这是访问ssh的端口

-v /home/gitlab/etc:/etc/gitlab  将容器/etc/gitlab目录挂载到宿主机目录下,若宿主机内此目录不存在将会自动创建,其他两个挂载同这个一样

--restart always  容器自启动

--privileged=true  让容器获取宿主机root权限

--name gitlab-test  设置容器名称为gitlab

gitlab/gitlab-ce  镜像的名称,这里也可以写镜像ID

  #2.1.修改配置文件

vi /home/gitlab/etc/gitlab.rb
添加下面三条,external_url的端口号要和上面容器内映射的端口号相同
external_url 'http://192.168.52.128:9080'
gitlab_rails['gitlab_shell_ssh_port'] = 9022
gitlab_rails['gitlab_ssh_host'] = '192.168.52.128'

:wq退出vi,然后重启

docker restart gitlab

配置文件必须要改,不然代码里的仓库地址是一堆乱码,如下:

         

正确的克隆地址应该如下图,可以等后面配置完再回头看看:

  #3.查看账号初始密码

sudo docker exec -it <CONTAINERID> grep 'Password:' /etc/gitlab/initial_root_password

<CONTAINERID>为你的容器ID

  #4 浏览器访问gitlab地址:192.168.5.128:9080

不出意外的话会出现如下界面,账号是root,

如果出现意外,那就考虑一下防火墙问题或配置文件的端口号和容器映射的端口号不一样

这个界面比较新,因为前几天我在公司部署后跟大部分文档界面一样,左侧有说明文字,今天在家部署,可能版本有更新变简洁了。当前版本:15.10

  #5.关闭注册

 自己或公司的gitlab,肯定不能开放注册,一般登录后进首页会提示你关闭注册,不过没关系,这里告诉你怎么手动关闭

 把这两个取消勾选,然后点保存

  #6.汉化

找到Localization,选择简体中文,保存,刷新页面

   #7.修改密码

这个自带的密码只会保留24小时,修改一下密码

 左侧点击密码,自行修改

  #8.首页汉化

重新到了登录界面才发现,底部也有一个语言选项

 选择简体中文,完事,最后记得看看仓库的克隆地址是否正确,不正确再回头看看修改配置文件步骤

结束

本文转载于网络 如有侵权请联系删除

相关文章

  • 使用python3.7.2 实现大名鼎鼎的Elo Score等级分制度

     在年度影片《社交网络》中,影片开场,马克扎克伯克和他的女朋友在酒馆里因为琐事分手,气急败坏的他回到了宿舍,在舍友的鼓励和帮助下,充分发挥了作为技术天才的动手能力,做出了Facemash网站,对大学女生的相貌进行分级打分,结果网站访问流量过大,直接把大学网络都搞宕机了。而Facemask就是著名的FaceBook的前身,Facemask大受欢迎的关键就在于扎克伯格的同学爱德华多(他也是facebook的联合创始人之一)写在窗户上的排名公式   这个公式就是鼎鼎有名的ELO等级分制度   ELO的应用非常广泛,大部分棋类比赛,现在流行的MODB游戏,像11平台的DOTA天梯系统,以及炉石传说匹配对手系统,都是采用ELO等级分。   ELO等级分制度是由匈牙利裔美国物理学家Elo创建的一个衡量各类对弈活动选手水平的评分方法,是当今对弈水平评估的公认的权威方法。被广泛应用于国际象棋、围棋、足球等运动,以及很多网游与电子竞技产业。游戏界比较著名的应用有:Fifaonline,炉石传说、DOTA、LOL。   ELO计算方法   Ra:A玩家当前的积分   Rb:B玩家当前的积分   Sa:实际

  • 【思维模式】拥抱复杂性(第 2 部分数据)

    如何通过三个简单(ish)步骤将您的组织网络化……从数据开始您的信息不想被困在一个盒子里 在本文的第一部分中,我们确定了工业时代将复杂性组织成漂亮、整洁的线性盒子,尽管这是一种高效的机器制造方式,但这种方法已不再足以满足现代组织的需求。信息时代的全球网络。不管我们喜不喜欢,“网络化”的过程正在进行中,任何组织都无法阻止它;唯一现实的选择是加入并在内部反映网络结构。 如第一部分所述,信息时代的三个主要驱动力(数据、云和人工智能)可以统一为一个“网络化”过程,因此本文的其余部分分为三个相应的部分:数据:组织如何将他们的数据从单独的盒形表格中移出,并进入像拼图一样组合在一起的网络形碎片,以及这些组织中的人员如何将他们的知识和概念理解作为这些网络的一部分——形状的碎片。云:组织如何将数据保存在原处并将其“从源头”集成,而不是将其移动到中央位置以由小型中央团队进行工业化清理和集成,以及这种分散式架构如何使数据集成过程民主化一个组织。人工智能:组织如何能够停止追赶,而是通过致力于一种新型的尖端人工智能算法来领先一步,这些算法旨在与网络形数据和纵横交错的路径一起工作。为了保持真实,每个部分都将以实用

  • Flutter开发桌面端程序

    前言先说结论,目前Flutter还不能作为生成环境的桌面开发技术,这里仅作为尝鲜来学习。比如在Windows上目前还不支持发布模式,仅支持调试模式,这意味着编出来的桌面程序,始终有一个黑框控制台,且不断的输出日志。环境配置Flutter环境安装Flutter下载FlutterSDK解压,比如我放到了D:\Tools\flutter目录设置环境变量,添加D:\Tools\flutter\bin 开启Windows支持flutterconfig--enable-windows-desktop复制目前正式版已经支持桌面端,如果想尝鲜新的特性可以切换到其他分支。设置Flutter镜像添加环境变量属性值PUB_HOSTED_URLhttps://pub.flutter-io.cnFLUTTER_STORAGE_BASE_URLhttps://storage.flutter-io.cn查看设置是否成功CMDecho%PUB_HOSTED_URL% echo%FLUTTER_STORAGE_BASE_URL%复制PowerShell$env:PUB_HOSTED_URL $env:FLUTTER_S

  • 微信淘宝QQ被疑在后台反复读取用户相册,微信回应:便于快速发图;联想集团科创板IPO审核终止;Facebook服务再次宕机

    01微信回应用户相册问题:为便于聊天时快速发图,最新版本将取消10月8日,有网友爆料称,微信、淘宝、QQ等多款国产App均存在后台频繁读取用户相册的行为。该网友开启了iOS15的隐私新特性“记录App活动”,对所有App的隐私读取行为进行7天的监控,并使用AppPrivacyInsights对记录进行读取。监控发现,微信在用户未主动激活App的情况下,在后台数次读取用户相册,每次读取时间长达1分钟。微信方面回应称,iOS系统为App开发者提供相册更新通知标准能力,相册发生内容更新时会通知到App,提醒App可以提前做准备,App的该准备行为会被记录成读取系统相册。微信还称,当用户授权微信可以读取“系统相册权限”的前提后,为便于用户在微信聊天中按“+”时可以快速发图,微信使用了该系统能力,使用户发送图片体验更快速流畅。微信指出,上述行为均仅在手机本地完成,最新版本中微信将取消对该系统能力的使用,优化快速发图功能。(雷锋网)02字节跳动回应“进军房地产中介”传闻:旗下平台幸福里并未收购麦田房产10月8日,有消息称字节跳动进军线下房地产中介业务,字节跳动旗下的幸福里平台收购了北京麦田房产。不

  • Android获得所有存储设备位置的最佳方法

    本方式可以获得内部存储设备地址、SD卡地址、USB设备地址,兼容性能达到99%(别问我为什么这么保证,因为是借鉴了Android设置-存储页面的源码)。由于调用了几个被@hide的方法,所以采用了反射。具体代码如下:publicstaticList<HomeDirBeangetAllExternalStorage(Contextcontext){ List<HomeDirBeanstoragePath=newArrayList<(); StorageManagerstorageManager=(StorageManager)context.getSystemService(STORAGE_SERVICE); StorageVolume[]storageVolumes; try{ MethodgetVolumeList=StorageManager.class.getDeclaredMethod("getVolumeList"); storageVolumes=(StorageVolume[])getVolumeList.invoke(storage

  • 内存泄漏三问—vivo真题

    说到性能优化,就不得不提下内存泄漏了,内存泄漏发生的原因以及解决办法你是否都已了解呢?看看今天的三问:内存泄漏是什么,为什么会发生?内存泄漏发生的情况有哪些?该怎么发现和解决内存泄漏?内存泄漏是什么,为什么会发生?内存泄漏(MemoryLeak)是指程序中己动态分配的堆内存由于某种原因程序未释放或无法释放,造成系统内存的浪费,导致程序运行速度减慢甚至系统崩溃等严重后果。简单点说,手机给我们的应用提供了一定大小的堆内存,在不断创建对象的过程中,也在不断的GC(java的垃圾回收机制),所以内存正常情况下会保持一个平稳的值。但是出现内存泄漏就会导致某个实例,比如Activity的实例,应用被某个地方引用到了,不能正常释放,从而导致内存占用越来越大,这就是内存泄漏。内存泄漏发生的情况有哪些?主要有四类情况:集合类泄漏单例/静态变量造成的内存泄漏匿名内部类/非静态内部类资源未关闭造成的内存泄漏1)集合类泄漏集合类添加元素后,仍引用着集合元素对象,导致该集合中的元素对象无法被回收,从而导致内存泄露。staticList<Object>mList=newArrayList<>

  • 如何使用私有仓库的 Go Modules

    本文我们将讨论gomodules的基本用法,以及如何创建自己的gomodules,如何在自己的go项目中引用私有git仓库的模块。模块大大提高了go的代码可维护性,它是golang官方提供的依赖管理工具,就像Java应用中的Maven一样,如果你对gomodules了解不多,可以查看官方文档相关介绍。创建gomodule在Java中,一个制品可以通过Nexus这样的仓库来维护的,同样,我们可以将自己的gomodules托管在Git或Bitbucket上,比如我们这里使用非常方便的GitHub。创建一个如下所示的目录,在目录中初始化modules:$mkdircommon-module $cdcommon-module 复制在项目中初始化go模块的名称,这里的名称格式为<hosting-site>/<repository>/<module>。hosting-site:就是github.comrepository:自己的github帐号名(ereshzealous)module:模块名称common-module所以最后go模块的名称就是github.c

  • 磁盘扩容

    磁盘扩容磁盘分区parted/dev/sdb #GPT就是GRUB分区表,如果是MBR,最大支持2T分区 mktablegpt #创建一个2G的磁盘空间 mkpartprimary0K2048G #给1好分区更改为lvm格式 toggle1lvm复制centos7xfs文件系统lvm扩展因为Centos7默认文件系统是xfs文件系统类型,在xfs文件系统中,只能增大分区而不能减小。 Centos6,Centos5系统都是ext4,ext3文件系统。所以操作方法有一点区别。 增加物理卷(pv),扩大卷组(vg),扩大逻辑卷(lv)操作方法都一样。但扩容磁盘操作命令就不一样。 下面是具体操作方法: 1、添加一块磁盘或者在现有的磁盘空间新分一个逻辑分区或者扩展分区。命令如下: $fdisk-l#查看磁盘信息 $fdisk/dev/sda#注意/dev/sda按着你自己机器的实际分区名来写 进入后,可以使用m帮助查看使用方法 n是增加一个逻辑分区或者扩展分区,根据提示写 t是更改分区的系统标识(创建完分区,使用t更改标识,lvm标示是:8e) w是保存退出 q是退出不保存更改 2、创建物理

  • 设计模式之观察者模式

    简介观察者模式(ObserverPattern)隶属于设计模式中的行为型模式。通过发布事件来将状态变化与处理逻辑解耦开来,可以拥有更好的可扩展性和可维护性。定义观察者模式,又叫发布-订阅模式,通过定义对象间一种一对多的依赖关系,使得当每一个对象改变状态,则所有依赖于他的对象都会得到通知。观察者模式是典型的生产者消费者问题模式,被观察的对象状态改变后产生事件,对此事件感兴趣的观察者可以做出某些行为。角色观察者模式的角色可分为两类,总共四种角色,分别是:抽象被观察者,在日常实践中可以不存在具体被观察者抽象观察者,在实践中一般是listener具体观察者,接受事件,作出反应在Java中,jdk自带了观察者模式需要的接口,分别是被观察者Observable,抽象观察接口Observer,遗憾的是Java中的被观察者Observable是一个类而不是接口,在需要继承的场景中就无法使用它提供的功能了。模式说明消息队列可以说是观察者模式的高级别应用了,直接提升到了中间件的高度,不过我们还是在具体代码里来说明这个模式。以前在写单一职责原则时举过登录成功之后使用观察者模式来通知各方,以实现登录主逻辑和登

  • 走进Java接口测试之测试报告ExtentReport

    引言在走进Java接口测试之测试框架TestNG中我们详细介绍了TestNG的各种用法,在本文中,我将详细介绍如何将ExtentReports测试报告与TestNG集成。ExtentReports简介主要特点:生成的报告简洁美观生成的单html方便Jenkins集成发邮件自带集中展示历史报告的服务端支持Java和.NetTestNG原生报告有点丑,信息整理有点乱。ExtentReports是用于替换TestNG原生报告。当然也可以使用ReportNg,个人偏好ExtentReports样式。官网已经给了很多demo了,大家可以参考练习。官网:http://extentreports.com/客户端:https://github.com/anshooarora/extentreports-java/commits/master服务端:https://github.com/anshooarora/extentx 具体步骤Step-1:添加Maven依赖包引入pom.xml<!--引入extentreports相关包--> <dependency> <group

  • Markdown的简单实例

    本文简单的记录使用markdown的方式,完成一篇博客必备的基础语法。1.导航:markdown代码:#一级导航 ##二级导航 ###三级导航 ####四级导航复制显示效果:一级导航二级导航三级导航四级导航2.列表:markdown代码:-这是列表 Markdown是一种可以使用普通文本编辑器编写的标记语言,<br>通过简单的标记语法,它可以使普通文本内容具有一定的格式。 *这也是列表 *这个缩进可以使用tab键 -再缩进一下 +这还是一种列表 1.这是有序列表 2.有序列表复制这是列表 Markdown是一种可以使用普通文本编辑器编写的标记语言, 通过简单的标记语法,它可以使普通文本内容具有一定的格式。这也是列表这个缩进可以使用tab键再缩进一下这还是一种列表1.这是有序列表 2.有序列表注:-、1.和文本之间要保留一个字符的空格。 3.添加超级链接或者图片:图片可以直接拖拽到编辑区即可,插入图片的语法和链接的语法很像,只是前面多了一个!。 markdown代码:这是我的博客主页[流川枫debug](http://www.jianshu.com/users/c87c

  • Linux 屏幕取词解决方法:Chrome 插件

      我的工作用电脑的桌面环境是Ubuntu17.10,作为一个Linux用户,一直困扰我的一个问题是没有找到一个比较理想的可以取词划词的英语词典,之前我尝试过几种方法: 有道:有道是有Linux版的,不过没有集成到官方的包管理工具中,软件商店也找不到,只能下安装包。而且我上次尝试时遇到了不小的问题,不光安装不上,甚至还造成了apt的崩溃,所以就没再尝试,哪位有成功经验,一定要分享一下。google的dictchrome插件:我觉得也能用,但有两个问题:第一是因为谷歌的服务,国内都要访问外国网站,所以速度很慢;第二是只有英文解释,虽然能提高英文能力,不过从效率上讲总归是不如有中文解释来得快。  今天偶然遇到了一个更好的解决方案,也是一个chrome浏览器的插件:ImTranslator,我觉得体验不错,推荐给大家。我觉得这个软件主要有以下几个优点: 支持的语言非常丰富:看下面的图片就知道了,我觉得足够满足了绝大部分人的需求了。语言选择界面 无需访问外国网站:不走代理,所以查词速度比dict插件好了很多。取词操作非常方便:支持多种取词方式鼠标取词:鼠标双击查询单词,会弹出一个小气球,点击气

  • 记武汉2016年第一期学习力提升工作坊——MVP效果总结篇工作坊结束效果:

    在《改造我们的学习——记武汉2016年第一期学习力提升工作坊——POC验证实验篇》中,我介绍了”学习力提升工作坊”这个POC的实验情况。经过四周的实验,工作坊最后完成并取得了阶段性的成果,本文介绍了工作坊的效果以及未来工作坊的改进情况。 工作坊结束效果:在为期4周的工作坊练习中,我不仅设计了一些试验,同时收集了一些反馈和实验数据作为对工作坊整体效果的衡量。第一次工作坊总计14名学员,最后一次工作坊剩下7名学员。在最后一次工作坊开始,基于学员的自我感受对工作坊的效果进行了一轮反馈。根据学员自己的主观感受回答以下问题:1.是否掌握了工作坊介绍的学习技巧?是:5否:2总结:从个人体验来看,没有使用并掌握工作坊的技巧。究其原因是因为缺少对工作坊工具和方法的联系。2.是否学习到新技能?是:7否:03.是否完成学习计划?是:1否:6总结:对自己的学习时间和对学习材料的难度估计不准导致了没有完成学习计划。4.是否掌握了克服拖延症的方法?是:7否:0总结:大家都明白了“如何克服拖延症”。5.是否克服了拖延症?是:0否:7总结:很不幸,克服拖延症的第一次努力全军覆没。不过对于我自己来说,通过交付这一次工

  • 深度学习性能提升的诀窍

    一、克服过拟合和提高泛化能力的20条技巧和诀窍你是如何提升深度学习模型的效果? 这是我经常被问到的一个问题。 有时候也会换一种问法: 我该如何提高模型的准确率呢? ……或者反过来问: 如果我的网络模型效果不好,我该怎么办? 通常我的回答是“具体原因我不清楚,但我有一些想法可以试试”。 然后我会列举一些我认为能够提升性能的方法。 为了避免重复罗列这些内容,我打算在本文中把它们都写出来。 这些想法不仅可以用于深度学习,事实上可以用在任何机器学习的算法上。二、如何提升深度学习的性能1、提升算法性能的想法这个列表并不完整,却是很好的出发点。 我的目的是给大家抛出一些想法供大家尝试,或许有那么一两个有效的方法。 往往只需要尝试一个想法就能得到提升。 如果你用下面某一种想法取得了好效果,请在评论区给我留言! 如果你还有其它想法或是对这些想法有拓展,也请告诉大家,或许会对我们大家有帮助!我把这个列表划分为四块: 从数据上提升性能 从算法上提升性能 从算法调优上提升性能 从模型融合上提升性能性能提升的力度按上表的顺序从上到下依次递减。举个例子,新的建模方法或者更多的数据带来的效果提升往往好于调出最优的

  • 人工智障会玩吃鸡啦,就是玩的不咋地

    下图这个妹子你们有人认识吗?我觉得你们有一部分人应该见过她的表情包……毕竟人工智能的表情包算是相当难见到的,因为它们大多连个形象都没有。就算有形象的,也不会动,只是静态的一个象征。但是这个妹子是会动的,这就很特别了。她是一个虚拟的Youtuber,叫绊爱,又称爱酱。自称16岁,喜欢喝牛奶。不过在后来的回应提问中又自称是5岁。自称非男非女,但又经常经常自称美少女(怎么莫名想起了扶她)。爱酱近日试玩了一下《荒野求生》,可以说整个过程十分暴力。这妹子是看见人就想怼,除非她手无寸铁。不过整个过程也算是又一次的体现出了“人工智障”的特点,可以看到从头到尾她的视角切换都比较僵硬,不是很灵活,而且也没啥枪法。妹子玩的很开心,就是一个人都没干掉。苟吧苟不住,妹子不止多动症还是个话痨,从头到尾一直在和部分人类女玩家一样大呼小叫。虽说,这样子其实很可爱就是了。和人类一样,妹子在受伤或者被袭击的时候也是一脸懵逼,“这哪我谁谁打的我”的表情标准上线。你说你喜欢站着撸,可是连掩体都不找。找了掩体的时候周围还一个人都没有,终于看见人对着打了两枪之后继续懵逼。妹子玩了两把,最好成绩是22名。这就不错了,比起很多人上

  • 马化腾:腾讯只做去中心化赋能者

    构建货币未来,解密虚拟经济专业玩家学习交流切磋未来视频:马化腾谈微信QQ的创新与竞争,时长约27分6秒12月6日,在广州举办的财富全球论坛上,腾讯公司创始人、董事会主席兼首席执行官马化腾与《财富》杂志执行主编亚当·拉辛斯基进行了一场对话。马化腾表示,腾讯在互联网时代要做去中心化的赋能者,并不试图去掌握别人命脉。他对开放、合作生态打了一个通俗的比喻,譬如盖房子,“我们不是出租,而是请你来建房子,建完房子就是你的,你的客户、粉丝都是你的,不需要再交月租,不需要每年涨价。”在马化腾看来,赋能大致可以分为两种,一种中心化,一种是去中心化。“赋能者,我觉得要看最终的格局是被赋能者的安全程度。如果以后我百分之百的渠道都在你的生态里的时候,基本上命运就掌握在别人手上了,利润也掌握在别人手上。从赋能最终格局来看,被赋能者的安全程度、命运、利润等等,都掌握在中心化的赋能者手中。而我们是去中心化的赋能。”马化腾如此向亚当强调。腾讯董事会主席兼首席执行官马化腾(右)半小时的交流过程中,马化腾告诉亚当,微信是三个内部团队竞争之后的结果;两者谈到移动支付用户迅速增长,得益于与支付宝的理性竞争;他谈到腾讯打通线下

  • 千锋重庆Java学习之:5个支持微服务体系结构的Java框架

    在过去的五年中,随着专门为支持新的微服务而构建的技术的发展,该行业出现了爆炸式的发展。但这并不意味着它们最适合每个人的需要。事实上,与通常在考虑技术堆栈的情况下开发的Monolith不同,微服务体系结构中的每个服务都可以使用基于其自身功能的不同框架构建。我们将介绍一些最流行的构建微服务的java框架——传统框架和容器专用框架。 1.用于微服务的JakartaEE/JavaEE 经典的JavaEE(现在称为JakartaEE(JEE))构建应用程序的方法是面向独石的。传统上,使用JavaEE构建的企业应用程序将打包到单个EAR(企业存档)部署单元中,其中包括WAR(Web存档)模块和JAR(Java存档)文件。 尽管没有任何技术限制排除在微服务体系结构中使用JEE的可能性,但存在着巨大的间接成本。每个服务都需要打包为一个独立的单元,这意味着它应该部署在自己的JEE服务器中。这可能意味着部署几十台甚至数百台应用服务器来支持典型的企业应用程序。 幸运的是,社区很早就注意到标准JEE没有解决微服务引入的新构建挑战。自2016年以来,许多额外的开源项目已经开始支持JEE中构建的微服务。 Ecli

  • 笑谈软件工程:烽烟中的敏捷

    本书特色   [   《笑谈软件工程:烽烟中的敏捷》凝聚作者从事软件开发十多年来的思考与实践,从8个方面说明了如何从传统的瀑布开发过渡到敏捷开发。作者以诙谐幽默的文笔,于谈笑间揭示软件开发的现状,探讨scrum的组成,解释何为精益,剖析软件工程的全新思维,同时还涉及软件架构、人机界面、测试等主题。   《笑谈软件工程:烽烟中的敏捷》实用性强,非常适合软件工程相关专业和软件行业开发人员阅读和参考。 ]   作者简介   [   陈建村,泰迪软件(Teddysoft)的创办人,从事敏捷开发顾问、教育训练、软件工具导入服务。毕业于台北科技大学机电科技研究所(信息组)博士班,是一位热衷于软件开发与经验分享的、实事求是的软件工程师。Teddy有超过17年开发商业软件以及参与软件研究项目的经验,曾发表30余篇国内外期刊与研讨会论文。他曾担任程序开发人员、技术总监、敏捷项目经理、软件架构师、敏捷顾问、敏捷课程讲师。对于未来,Teddy有一个梦想,希望改变人们开发软件的方法,让软件开发真正成为愉快而有趣的工作于创作过程。 ]   目录   part1软

  • Testlink集成Jira时如果出现Error咋办?

    TestLink在用SOAP集成Jira时,如果出现: SOAPFault:(code:WSDL,string:SOAP-ERROR:ParsingWSDL:Couldn'tloadfrom'http://xxx.xxx.xxx.xx/rpc/soap/jirasoapservice-v2?wsdl':failedtoloadexternalentity"http://xx.xxx.xx.xxx/rpc/soap/jirasoapservice-v2?wsdl") 其实下面还有个Warning警告: failedtoopenstream:Permissiondenied-in/var/www/html/testlink/lib/issuetrackerintegration   这个问题其实很好解决,问题在于SElinux。把它disable就行了。 没看到网上有这个问题,估计大家都轻松的解决了吧。呵呵呵  

  • 简单搭建内核调试环境--6 ISO制作

     跳转到目录 点这里  制作光盘 大纲: 1)工具命令概览 mkisofs创建ISO启动盘 grub-mkimage生成core.img losetup打开或关闭虚拟磁盘 dd创建虚拟磁盘文件 mkfs.ext2格工化磁盘成ext2格式 光盘制作大概分这么几步 编译内核(并使内核支持内存文件系统) 编译内核模块模块并打包成img镜像(如果你全部编进内核了就用不着这步) 预制内存文件系统内容(光盘启动后的根目录及程序数据) 把内存文件系统内容弄到虚拟磁盘,倒出磁盘映像到img文件 预制光盘内容(你光盘里要保存的程序和数据) 配置光盘grub 把光盘预制内容写入一个新的光盘映像文件,并向映像文件grub引导 2)大概操作步骤 2.1)编译内核得到自己的内核镜像bzImage 要注意两点要调整 2.1.1)DeviceDrivers--->[*]Blockdevices---><*>RAMblockdevicesupport (16)DefaultnumberofRAMdisks (65536)DefaultRAMdisksize(kbytes) [附]

  • IE6~9的css hack写法

    _color:red;/*ie6*/ *color:red;/*ie6/7*/ +color:red;/*ie6/7*/ color:red\0;/*ie8/9*/ color:red\9;/*ie6/7/8/9*/ color:red\9\0;/*ie9*/复制  

相关推荐

推荐阅读