It might just be me, but it seems like a section is missing. In start and test it says visit your domain, however unless I am missing something pretty major that shouldn't work since neither apache nor nginx are ever setup / pointed to the webapp.--Theflyingfool (talk) 08:15, 8 April 2014 (UTC)
Resolving dependencies and testing gitlab on remote server
This is a reply to the question above, as well some things that was missed during the installation I made.
I'm not sure if it should be added, so I'm putting it here for discussion:
You should install the following packages, before installing the GitLab from AUR:
Also, after finally starting the gitlab with unicorn, if you have installed gitlab on a remote server and not locally, you won't be able to access it using domain:8080. It is even mentioned in /etc/webapps/gitlab/unicorn.rb. In order to be able to access it, I have changed 127.0.0.1 to the servers IP, and made sure that shell.yml reflect the change as well (including the port).
After restarting the daemons, I was able to access giltab using domain:8080.
- Closing as not applicable anymore - gitlab is in the community repository now and the IP addresses are properly explained on the page. -- Lahwaacz (talk) 19:50, 14 November 2017 (UTC)
After completing the steps above I continued to nginx installation, however, being not familiar with nginx it took me some time, so I'll put it here for discussion as well. This is the full guide, I know that some things are already mentioned in the page, just not very organized.
After installing nginx, it is mentioned that you should make the following command:
# ln -s /etc/nginx/sites-available/gitlab /etc/nginx/sites-enabled/gitlab
However, it will not work, since there is no site-available or sites-enabled directories, with include section in nginx.conf. It is true however in debian installations, but since we're in arch everything comes with no changes from the distro side.
Since there was no site-available file to copy the vhosts from, I read the official gitlab guide, and found that the file is located in /usr/share/webapps/gitlab/lib/support/nginx/ after installing the gitlab package.
I just put everything inside the file to nginx.conf inside the http section, just before the last
}, and changed the following:
server_nameto reflect my server's domain.
proxy_passconfig to reflect unicorn listening address. I just put
localhost:8080in nginx.conf and set back unicorn.rb to point to 127.0.0.1 as it was before (including the port 8080).
serverto point to
unix:/usr/share/webapps/gitlab/tmp/sockets/gitlab.socket;- I'm NOT sure about this. I also had a permissions problem, so I changed group permission to http for the sockets folder.
- Point the config
- Comment out the gzip section - it was not working for me, and made the site with no assets, so I didn't bother with it.
Edit shell.yml as follows:
gitlab_url: "http://domain/" - domain is the same as server_name in nginx.conf.
Also make sure that in gitlab.yml the host is set to your domain and the port is the same as in nginx.conf.
Restart the daemons:
$ systemctl restart gitlab-sidekiq gitlab-unicorn nginx
Should be working now.
As I said, this is my rough way of installing it, so before I put it on the page, would like to know if that's the right steps.
- The page points to
/usr/share/doc/gitlab/nginx.conf.exampleand Nginx#Managing server entries now. There is no place on this page to teach nginx basics and everything that Gitlab needs should be in the example file. Closing. -- Lahwaacz (talk) 19:56, 14 November 2017 (UTC)
Using Sudo instead of su -
I don't have any root password on my pi, only my user password (for sudo). As the rest of the documentation uses sudo, it would be better to use sudo here too : https://wiki.archlinux.org/index.php?title=Gitlab§ion=13
- I'm also having issues without being root, unfortunately there are more issues, and I couldn't install (the latest version) at all.
- Going to add Stub template, because more commands listed doesn't seem to work (correctly).
- Beta990 (talk) 11:42, 21 December 2015 (UTC)
I went through the install, I didn't make it work yet but I have a few questions on confusing instructions:
-I want to use my already set-up nginx webserver. Should I still use reddis, and the gem/bundle install commands ?
- Yes, you should proxy-pass nginx to unicorn. Redis is used for internal communication, gem/bundle for setup. You can find good explanations at the GitLab website. DenBrahe (talk) 21:43, 19 April 2016 (UTC)
-What are the pros/cons to use the AUR package v. using the official package ?
- AUR package is finetuned for Arch to work with systemd and linux conventions and things like that (don't know exactly). Basically if you're not an expert, you're better off with the AUR package. Wiki page should get an update though. DenBrahe (talk) 21:43, 19 April 2016 (UTC)
-How can we uninstall the components installed by the gem/bundle install commands ?
-the su - gitlab command is not working but sudo -u gitlab works (as mentionned in this thread), is that ok ?
-I don't have any shell.yml file, which is mentionned only once for the HTTPS configuration, is it normal ?
-what is /dev/null in the nginx config ?
-how do I setup resque.timer ? I can't load it? ('unit resque.timer not found).
I am adding my two cents to this section as well, because after trying for around 5 hours, I am giving up on the gitlab package and will try Gogs/Gitea instead. As I cannot say for sure what are actual problems and which are design choices made by the package maintainer that are just not well documented, someone else who has the necessary knowledge has to decide which changes are appropiate to make.
This is summary of the problems/confusion I faced:
- The package depends on ruby2-3, which does not provide the bin 'ruby'. This throws off the environment check at the very least, yet no note is made of that.
- Despite stating that the Arch package uses the user gitlab instead of git, the latter keeps getting mentioned in the article, sometimes even together with gitlab.
- As described below, rvm seems to be neither necessary nor supported, yet the article implies that its usage is good practise.
- All GitLab files seem to belong to root, leaving the gitlab with insufficient rights to save config files. As a result, at the very least the copy&paste solutions provided by the environment checks cannot be used because of that.
- The article states that Unicorn is a HTTP server on its own, yet GitLab is shipped with nginx by default.
- The article says that gitlab-workhorse is optional, yet at the very least the current Apache examples provided by GitLab all assume it to be configured. The package itself also depends on it.
Right now, it might be a better idea to intall GitLab from source, as the official documentation is more up-to-date and can be used with less adjustments. --Krukai (talk) 09:15, 8 September 2017 (UTC)
Another small thing: the wiki page says we should enable
gitlab-unicorn services, but these are already part of
gitlab.target, so I believe there is no need in enabling them separately. --Nplatis (talk) 06:04, 26 September 2017 (UTC)
Check that the secret file exists
The Initialize Gitlab database section tells us to check if there's a secret file at /etc/webapps/gitlab/secret, while the file is found at /etc/webapps/gitlab/secrets.yml now. Sava (talk) 08:21, 25 September 2016 (UTC)
Regarding 'Running GitLab with rvm'
According to Gitlab#Running_GitLab_with_rvm, Ruby version 1.9.3 is recommended. However, GitLab seems to recommend 2.3 since at least v9.2.1: .
Also, the section is not very clear whether rvm should be downloaded as the new user or not. It seems that this should be the case, but the section only mentions it after the first step.
Finally, it refers to the user
git, while Arch installs Gitlab for the user
gitlab by default.
Does the section need to be updated, or am I missing something here? Right now, I feel like installing GitLab without rvm. --Krukai (talk) 09:50, 6 September 2017 (UTC)
- This section still needs to be updated. I haven't performed a test of that topic yet. Feel free to update that section as I don't plan to use Gitlab with rvm any time soon (at least professionally). Regards. -- wget (talk) 14:54, 6 September 2017 (UTC)
- Thanks for the heads-up, but I don't see any reason right now to use rvm, either, as the package depends on exactly the Ruby version needed. I assume that once GitLab moved to Ruby 2.4, the package maintainer will as well. Perhaps the section could use a note indication something along those lines. --Krukai (talk) 15:17, 6 September 2017 (UTC)
Rewrite of the article
Hello everyone. If I look at your comments, we clearly see there is an issue with this installation guide. I talked on IRC with Sven-Hendrik Haase, the maintainer of the
gitlab package, and it seems only him has abilities to make this package 'work' properly without issue. Being the packager and knowing how Gitlab internals working is clearly an advantage, but this isn't the case for the newbie/simple Arch Linux user just wanting to have Gitlab installed in a matter of minutes. This is why I decided to completely rewrite this page. Please let me know your idea and comments wrt. this rewrite. New commits are ongoing. -- wget (talk) 13:46, 19 November 2017 (UTC)
- I've also recently successfully set up Gitlab using the Arch packages. There are a couple of things specific to my setup which are not mentioned on this page, but overall I don't see a need for a rewrite. It would also be hard to impossible to compare the differences from the current page. If you do that anyway, please use your user page for the draft. -- Lahwaacz (talk) 15:02, 19 November 2017 (UTC)
- What I mean by rewrite, the structure won't change, this is basically the same but all sentences have been reworded, because when you come along as a newbie, the package split seems weird and you do not know the different parts that constitutes Gitlab. But anyway, no worry, I can use this page is you want me to. I'm quite used in rewriting article (VirtualBox for example is a topic I have rewritten two years ago, Odoo and Mattermost as well). Since you're here, I have a question I would' like to ask you wrt. MediaWiki syntax with ArchLinux specific templates. I used bullet points in my rewrite:
MediaWiki formatting question
- In the database config file
/etc/webapps/gitlab/database.yml, for the sections
test, unless you know what you are doing), replace the fields with the credentials created above.
[...] database: gitlab_database [...] username: gitlab_database_user password: "gitlab_database_password" [...]
How do you prevent the header split in this case. ^ As you can see the file content is not shifted as well while I made sure I used the trailing colon (
:)? -- wget (talk) 16:09, 19 November 2017 (UTC)