Gitlab在Raspberry上与Apache在子目录中

时间:2015-04-19 20:45:35

标签: apache raspberry-pi gitlab raspberry-pi2

我正在使用Apache的raspberry pi(debian-wheezy),现在我想添加gitlab。

为了测试我在干净的debian操作系统上安装了gitlab,一切顺利。 在“live”系统上我也安装了gitlab,但我仍然坚持将gitlab设置为子目录/重定向。

我将相对网址设置为gitlab.rb/gitlab。我试图设置一个到gitlab根的系统链接,但是我得到一个not found错误。

2 个答案:

答案 0 :(得分:4)

如果你想安装Gitlab,请阅读我的更新答案

哇,已经晚了3个月,但如果有人遇到这篇文章,那么这对我有用:

我在旧的服务器设置上使用Gitlab,但在Pi上我想要更轻的东西(它只有1GB的Ram)。我找到了Gogs,它的工作非常相似,实际安装并不太糟糕,花了一段时间但是是的。 为了让Gogs继续你必须安装Golang,这可能需要一个小时才能建成,所以请确保你有时间。

  

首先安装git和Mysql / PortegeSql。   确保您已经安装了apache或Nginx   您已经需要设置Git全局,这样更容易。   很长一段时间

让我们设置一些我们需要的软件包:

sudo apt-get install -y mercurial gcc libc6-dev

现在我们从repo克隆

hg clone -u default https://code.google.com/p/go $HOME/go

进入并构建GO

cd $HOME/go/src
./all.bash

它需要一段时间,所以去做别的事情lol

完成后我们只需将其添加到PATH

即可
export PATH=$PATH:$HOME/go/bin
go version

如果你没有收到任何错误我们很高兴去! (LOL)

现在安装Gogs!

让我们创建一个目录,我们所有的回购将成为,我的是在外部设备上,因为我不想在我的Pi上用完空间。

sudo mkdir /mnt/MyDrive/Repos
sudo mkdir ~/gopath

为这些文件提供正确的权限

sudo chown $USER:$USER /mnt/MyDrive/Repos
sudo chown $USER:$USER ~/gopath

cd进入主目录并设置系统的路径:

cd ~
echo 'export GOROOT=$HOME/go' >> $HOME/.bashrc
echo 'export GOPATH=$HOME/gopath' >> $HOME/.bashrc
echo 'export PATH=$PATH:$GOROOT/bin:$GOPATH/bin' >> $HOME/.bashrc
source $HOME/.bashrc

让我们下载相关内容

go get -u github.com/gogits/gogs

使用git pull从repo中获取所有文件。 aaaand build!

cd $GOPATH/src/github.com/gogits/gogs
go build
它需要一点点。一旦构建,请确保使用portegeSql或Mysql为其创建数据库,我使用了mysql,因为我已经将它安装在我的系统上。

让我们将repos的根目录更改为我们之前制作的repo文件夹

sudo nano $GOPATH/src/github.com/gogits/gogs/custom/conf/app.ini

并在里面添加

[repository]
ROOT = /mnt/MyDrive/Repos

你也可以从这里添加数据库配置,但是你可以在浏览器中这样做,所以不需要。

让我们测试一下!!!

cd $GOPATH/src/github.com/gogits/gogs
./gogs web

如果你没有看到任何错误,那么你,我的朋友,你很高兴!

另一件事。默认情况下Gogs使用端口3000,在我的配置中我使用已经配置的apache webserver。设置完成后,使用方便的花花公子浏览器并转到yoursite.com:3000以进入gogs的配置。

我认为是这样的。如果我错过了什么,请告诉我。

来源:

Gogs from source config

Gogs detailed config from source

Gogs on rasp pi

installing Golang on rasp pi

答案 1 :(得分:0)

所以,在经历了很多麻烦之后,我实际上设法在我的覆盆子pi2模型B上安装了完整版的Gitlab。

我会推荐它吗?不是真的大声笑,这东西是一个HOG,它将占用你所有的公羊......字面意思......为什么呢?这是一个有趣的小实验,实际上并不是很难放在一起,因为Gitlab团队在编译源代码时汇总了一个非常好的教程......这不是为了佯装。

我实际上是从这里运行我的dev repo :)到目前为止很好lol。

所以,我假设你使用的是ubuntu核心图像,而不是使用raspian。这里已经有一个用于树莓的包裹:Gitlab for raspian。 如果您没有图片,请使用以下图片:link to ubuntu download image,此处是网站的网址:https://ubuntu-pi-flavour-maker.org/download/

所以,一旦安装了图像并且设置了用户帐户......

1-运行sudo apt-get update && sudo apt-get upgrade && sudo apt-get dist-upgrade以获取系统中所有内容的最新版本。

2-现在我们需要在整个SD卡上扩展系统,因为原始图像大小只有2.something GBs。 你可以follow the instructions from Steve Robillard老兄知道他在说什么。

3-一旦完成,我们需要创建一些交换,1GB的ram是不够的。 you can follow these instructions right here.

我选择让我的交换4GB,swapinness 60和压力50.阅读这些。

现在我们已经完成了所有简单的工作:https://gitlab.com/gitlab-org/gitlab-ce/blob/master/doc/install/installation.md

确保你在开始破解之前阅读整个指南,我破坏了我的装置大约3次......它很糟糕。

当你进入第3步,安装Go lang。你需要在这里抓住armv6 tar.gz:https://golang.org/dl/

并且做:

curl --remote-name --progress LINK-TO-TAR.GZ

sudo tar -C /usr/local -xzf YOUR-TAR-FILE.tar.gz

sudo ln -sf /usr/local/go/bin/{go,godoc,gofmt} /usr/local/bin/

然后:

rm YOUR-TAR-FILE.tar.gz

当你到达关于设置Nginx的部分时,确保你不使用端口8080,因为unicorn使用它,当你尝试访问它时gitlab会抛出一个错误页面。

此外,每当您更改gitlab.yml中的设置时,请确保运行

sudo service gitlab restart

sudo -u git -H bundle exec rake gitlab:env:info RAILS_ENV=production

以便验证您的更改。

它需要永远,但我通过在这里和那里搜索和拉动东西学到了很多东西。如果您有任何问题,请与我联系。

来源:

https://gitlab.com/gitlab-org/gitlab-ce/blob/master/doc/install/installation.md

https://golang.org/dl/

https://raspberrypi.stackexchange.com/questions/499/how-can-i-resize-my-root-partition/501#501?newreg=82e5afa8d58046379aebc9b0e7b986d1

https://www.digitalocean.com/community/tutorials/how-to-create-temporary-and-permanent-redirects-with-apache-and-nginx

https://www.digitalocean.com/community/tutorials/how-to-add-swap-space-on-ubuntu-16-04