centos 安装 docker

一,安装EPEL

关于EPELhttps://Fedoraproject.org/wiki/EPEL/zh-cn

>rpm -ivh http://dl.fedoraproject.org/pub/epel/6/i386/epel-release-6-8.noarch.rpm

 >rpm –import /etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-6

 >yum -y install yum-priorities

二,安装Docker

>yum -y install docker-io

如果提示冲突,先卸载 yum remove docker

 >service docker start

> /etc/init.d/docker start

 >chkconfig docker on

 检查安装结果。

  • # docker info

三,应用Docker

1,获取Centos镜像

 >docker pull centos:latest

service docker stop/start/restart

Linux文件夹从系统盘转数据盘

比如你得数据盘是/dev/xvdb, 原来的git目录是/home/git/gitrep
1. 先硬盘建分区和建文件系统: 

(1)fdisk /dev/xvdb (按提示建分区, 会建立类似xvdb1的分区;

(2)mkfs.ext4 /dev/xvdb1 (建立文件系统);

(3)mount -t ext4 /dev/xvdb1 /mnt (挂载到/mnt);

(4)cp -a /home/git/gitrep/.  /mnt/

2. /etc/fstab中编辑添加新的数据(一列)

/dev/xvdb1   /home/git/gitrep  ext4    defaults   0  0 ;

3. 重新启动或mount -a (在这之前可以在新的数据盘中增加一个标记文件,用来区别到底有没有挂上,其实看df -h 也可以)

4. 删除老文件
为了保证cp过去的东西没有问题,先不删除/home/git/gitrep目录下的文件。

如果没有问题,先

umount /home/git/gitrep,

这时再去看/home/git/gitrep目录应该是老的内容,现在删除该内容

rm -rf /home/git/gitrep/* /home/git/gitrep/.[^.]*
然后重新启动或mount -a

Bitnami gitlab 搭建的几个问题

请参考:http://wiki.bitnami.com/Applications/BitNami_GitLab

[切记] IT很折腾,尽量使用测试可行的配套版本,尽量少升级,减少风险!

(1)不要用ubuntu 14.04版本,perl lib版本不匹配会搞死你;

(2)别用ubuntu desktop版本,性能跟不上;

(3)配置文件修改一定要先备份!

1. 修改http和ssh端口,上文写到了;

2. 在/home/git/gitlab-shell/config.yml中配置的gitlab_url为你使用的url;

3. 代码推送:需要配置SSH公钥

4. 配置用户、仓库;

5. 如何导入原来的GIT库和历史?

请在原来GIT的repositories中把所有的仓库都保存下来,然后替换到新的GIT中对应的仓库位置;

6. push失败怎么办?

如果使用ssh推送,请先添加用户的公钥,注意是用户的;

如果你用了步骤5,遇到写权限问题,请再做一次chown操作:

在repositories目录中,使用命令  chown -R git:git  仓库文件夹

如果用http推送半天没有错误提示也是一样的问题!!

7. 发邮件配置(SMTP):

(1)修改config/environments/production.rb ,比如我用的是qq企业邮箱:

config.action_mailer.delivery_method = :smtp                     (原来是sendmail)
config.action_mailer.smtp_settings = {
:address => “smtp.exmail.qq.com”,
:port => 25,
:domain => “qq.com”,
:authentication => :plain,
:user_name => “邮箱地址”,
:password => “密码”,
:enable_starttls_auto => false
}

(2)特别关键!我又忘记了!修改config/gitlab.yml 

email_from:  邮箱地址
#protocol:http                  (千万别加)

8. 推送时http.rb错误解决方案:

如果客户端用ssh连接git出现如下错误:

阅读更多Bitnami gitlab 搭建的几个问题

Bitnami http/SSH端口配置

当你享受一个简单东西的同时,往往要忍受定制之复杂;

Bitnami的配置和标准的Ubuntu配置完全不一样,为了修改下http和ssh端口可算是烦死了,记录下:
1. SSH端口
(1)开启ssh服务:
$ sudo mv /etc/init/ssh.conf.back /etc/init/ssh.conf
$ sudo start ssh
(2)修改ssh端口:
$ sudo nano /etc/ssh/sshd_config
修改port为你要的值
(3)远程访问权限
$ sudo ufw allow 端口
$ sudo iptables -A INPUT -i eth0 -p tcp –dport 端口 -j ACCEPT
$ sudo iptables -A INPUT -i eth0 -p udp –dport 端口 -j ACCEPT

2. HTTP端口
(1)修改apache2的http端口配置
$ sudo nano /opt/bitnami/apache2/conf/httpd.conf
这边需要修改2个地方,切记!
(1)修改bitnami端口配置
$ sudo nano /opt/bitnami/apache2/conf/bitnami/bitnami.conf
这边也是需要修改2个地方,切记!

RedMine邮件配置

1. 管理员登陆后进入“管理”-》“配置”-》“邮件通知”;

2. 根据要求,在server的 /etc/redmine/default 中创建一个configuration.yml 文件

sudo nano configuration.yml

增加以下内容(特别提醒,yml文件中换行不能省略!

production:
  email_delivery:
    delivery_method: :smtp
    smtp_settings:
      address: smtp.example.net
      port: 25
      domain: example.net
      authentication: :login
      user_name: redmine@example.net
      password: redmine
3. 重启服务:
sudo service apache2 restart
4.修改默认发件人
5.发送测试邮件(右下角);

参考:
http://www.redmine.org/projects/redmine/wiki/EmailConfiguration

Ubuntu Server 12.10 安装Redmine

人越成长,学习越来越成为不耐烦的事,很多时候人们就是在”知其然不知其所以然”的情况下受挫的。

在Ubuntu上装Redmine,搞了好几个小时才搞定,挺受伤的,赶紧记录下:

  1. 安装Apache2、Mysql;
  2. 安装passenger:
  • apt-get install libapache2-mod-passenger
  • a2enmod passenger
  • service apache2 restart
  1. 关闭apparmor
  • service apparmor stop
  1. 安装Redmine
  • apt-get install redmine redmine-mysql

    输入正确的mysql root密码

  1. 配置Apache
  • cd /etc/apache2/mods-available
  • nano passenger.conf

    修改为:

    <IfModule mod_passenger.c>

    PassengerDefaultUser www-data

    PassengerRoot /usr

    PassengerRuby /usr/bin/ruby

    </IfModule>

  1. 配置域名:

    参考:

    http://wiki.neal365.com/2013/02/22/ubuntu-apache2-%E9%85%8D%E7%BD%AE%E5%A4%9A%E5%9F%9F%E5%90%8D/

    注意:

    DocumentRoot 需要配置为
    /usr/share/redmine/public,比如:

    DocumentRoot /usr/share/redmine/public

    <Directory />

    Options FollowSymLinks

    RailsBaseURI /

    PassengerResolveSymlinksinDocumentRoot on

    AllowOverride None

    </Directory>

  2. 创建链接:
  • ln -s /usr/share/redmine/public /var/www/redmine
  1. 最后重启应该就可以了:
  • service apache2 restart

参考:

  1. 在ubuntu 12.04上安裝Redminehttp://my.oschina.net/leonzmq/blog/148565
  2. 错误:Passenger error: No such file or directory – config/environment.rb

http://serverfault.com/questions/394783/passenger-error-no-such-file-or-directory-config-environment-rb

Gitolite无法新加用户的解决方案

上次写到在Ubuntu上通过gitolite创建git服务器(这里),刚开始没遇到啥问题,后来来了一些新员工,发现后面新加的key都用不了!

折腾了许久,Google了很多文章后,终于解决了这个问题。

1. 如何查看用户是否添加成功?

用户的添加步骤是,用户自己通过ssh-keygen -t rsa 方式生成key对,然后把公钥通过username.pub发给你(管理员);你给他通过git上传到gitolite-admin\keydir文件夹中。

commit后,你可以在ubuntu上的/home/git/.gitolite/keydir中看到新添加的公钥;如果正常,通过git用户登陆,可以在/home/git/.ssh/authorized_keys看到鉴权通过的用户。

如果失败,就是这个文件里没有你新加的用户!

2.为啥失败呢?

这是gitolite的一个已知的bug!看到很多文章写了不同的解决方案,不过这边就写一个我这边验证可行的方案,升级gitolite。

升级的步骤和安装一样,先clone代码,然后install&setup。另外需要注意的是,用puttygen生成的key对gitolite不认,必须使用ssh-keygen去生成key对。

新站之Apache2/PHP/MySQL/phpMyadmin/域名设置/SendMail/FTP

刚配好一个网站,发现这些步骤之前没写过,记录下。
操作的Ubuntu版本是Ubuntu12.04 64位,不是root需要前面加sudo。
1. Apache2:
apt-get install apache2
2. PHP5
apt-get install php5 libapache2-mod-php5
重启apache:/etc/init.d/apache2 restart
测试PHP: nano /var/www/info.php

阅读更多新站之Apache2/PHP/MySQL/phpMyadmin/域名设置/SendMail/FTP

Ubuntu的本地时间设置

Ubuntu用的是UTC-0时间,一般来说会比我们UTC-8慢8个小时,所以用起来不太方便。

几步设置一下:
$sudo apt-get install ntpdate
$sudo ntpdate cn.pool.ntp.org
$sudo nano /etc/default/rcS 修改UTC=yes为no
$tzselect >选择China-
$cat >>~/.profile<<EOF
> TZ=’Asia/Shanghai’; export TZ
> EOF
$sudo cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
搞定!
参考:http://www.cnblogs.com/xiaoyaoxia/archive/2012/10/30/2746840.html

Ubuntu Apache2 配置多域名

效果: 一个IP,一个服务器,可挂靠多个域名;不同域名连接到不同的文件夹

步骤其实挺简单:

(1)     建立域名配置文件,比如xxx_com:

cd /etc/apache2/sites-available

sudo cp default xxx_com          #创建一个基本格式的文件

sudo nano xxx_com                   #依葫芦画瓢修改,比如:

ServerName xxx.com

ServerAlias xxx.com www.xxx.com

DocumentRoot /var/www/xxx_com

<Directory /var/www/xxx_com>

如果需要禁用index of目录: Options Indexes FollowSymLinks (删除indexs)

(2)    使配置文件生效:

sudo a2ensite xxx_com

(3)   重启apache2:

sudo /etc/init.d/apache2 restart

注,有时候网站不正常,尝试chmod 777,chown -R root:www-data 目录