[b]前言[/b]
最近想在测试环境下快速搭建一套gitlab ci环境,推进下项目组内规范化开发管理。自己在家里的nas上是用docker部署的gitlab,体验非常的好,正好ubuntu 16.04 lts发布了,也想借此机会接触下新版内核和systemd。
[b]Ubuntu的安装[/b]
这里就省略不介绍了。唯一的问题是当前版本的官方镜像,选中文在安装阶段会报一个busybox的错误,换成英文就好了。
大家也可以参考这篇文章:[url=http://www.1sucai.cn/article/100919.htm]http://www.1sucai.cn/article/100919.htm[/url],里面介绍的也非常详细。
[b]Docker的安装[/b]
Docker的官方文档一向给力,16.04 LTS才发布了一周就已经及时的更新了的[url=https://docs.docker.com/engine/installation/linux/ubuntu/]安装文档[/url],基本上跟14.04没有差别:
1、安装docker 官方apt源公钥:[code]sudo apt-key adv --keyserver hkp://p80.pool.sks-keyservers.net:80 --recv-keys 58118E89F3A912897C070ADBF76221572C52609D[/code]
2、添加apt源:[code]sudo touch /etc/apt/sources.list.d/docker.list && echo "deb https://apt.dockerproject.org/repo ubuntu-xenial main" >>/etc/apt/sources.list.d/docker.list[/code]
3、更新下apt列表:[code]sudo apt-get update[/code]
4、官方文档里提到16.04 LTS需要安装下内核补丁,但是执行完命令后发现其实已经都装好了:[code]sudo apt-get install linux-image-extra-$(uname -r)[/code]
5、安装docker:[code]sudo apt-get install docker-engine[/code]
6、验证下安装的结果:[code]yi@tsenv-vcs:~$ docker -vDocker version 1.11.1, build 5604cbe [/code](哟,已经到1.11版了,赶紧去看看release note)
给自己授个权,加到docker组里,这样不需要每次执行docker前都加个sudo了:[code]sudo usermod -aG docker yi[/code]。官方非常明确的给出了warning,这个命令还是要谨慎:
Warning: The docker group is equivalent to the root user; For details on how this impacts security in your system, see Docker Daemon Attack Surface for details.
7、启动docker:[code]sudo systemctl start docker[/code]
8、设置开机自启动:[code]sudo systemctl start docker[/code]
systemd看起来还是挺简单的,服务管理反而比之前service、chkconfig要好用,直到…
因为需要通过代理连接docker hub,按照之前的经验直接配置了/etc/default/docker, 结果不管用…
各种测试、验证代理,直到在这个文件里看到了这么一样注释:# THIS FILE DOES NOT APPLY TO SYSTEMD。还好注释后面给了一个[url=https://docs.docker.com/engine/admin/systemd/]链接[/url],阅读了下发现systemd配置是不一样的。
具体原理等熟悉了systemd的操作后再研究,先make it work:
1、创建一个配置文件/etc/systemd/system/docker.service.d/http-proxy.conf,添加如下配置:
Environment="HTTP_PROXY=http://xxxxxxxx:1080"
2、刷新配置:[code]sudo systemctl daemon-reload[/code]
3、验证下配置是否正常加载:[code]systemctl show --property=Environment docker[/code]
4、重启docker:[code]sudo systemctl restart docker[/code]
[b]配置gitlab[/b]
先把gitlab配置起来,gitlab-ci、jenkins稍后再做研究。docker hub上搜索了下,选择了sameersbn/gitlab这个镜像,比官方的文档更友好,更新也不错,最重要的是提供了docker-compose构建。
1、得先安装docker-compose, 这个比较简单,可以直接下载:[code]sudo curl -L https://github.com/docker/compose/releases/download/1.7.0/docker-compose-uname -s-uname -m> /usr/local/bin/docker-compose[/code],然后加个权限[code]sudo chmod +x /usr/local/bin/docker-compose[/code]
2、创建一个专用目录,下载compose文件:[code]wget https://raw.githubusercontent.com/sameersbn/docker-gitlab/master/docker-compose.yml[/code]
3、启动:[code]docker-compose up -d[/code]这里比文档上多了一个-d的参数,是以daemon进程启动。
4、直接访问http://ip地址:10080,可以用了~
[b]总结[/b]
以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作能带来一定的帮助,如果有疑问大家可以留言交流,谢谢大家对编程素材网的支持。