DevOps Tools/SCM/GitLab
(→Dependencies and Configuration) |
(→Download Gitlab and Install) |
||
Line 17: | Line 17: | ||
==Download Gitlab and Install== | ==Download Gitlab and Install== | ||
<nowiki>~$ sudo curl https://packages.gitlab.com/install/repositories/gitlab/gitlab-ce/script.rpm.sh | sudo bash</nowiki> | <nowiki>~$ sudo curl https://packages.gitlab.com/install/repositories/gitlab/gitlab-ce/script.rpm.sh | sudo bash</nowiki> | ||
− | Configure. After Gitlab 10.7, if you specified the External URL to be <code>https</code> then gitlab will automatically use Let's Encrypt to generate the SSL certificate. | + | Configure. After Gitlab 10.7, if you specified the External URL to be <code>https</code> then gitlab will automatically use Let's Encrypt to generate the SSL certificate.<br> |
+ | '''NOTE:''' Make sure to change the ''<code>localhost</code>'' to your hostname and remove the ''<code>s</code>'' from ''<code>https</code>'' if you don't want SSL through let's encrypt. | ||
<nowiki>~$ sudo EXTERNAL_URL="https://localhost/gitlab" yum install -y gitlab-ce</nowiki> | <nowiki>~$ sudo EXTERNAL_URL="https://localhost/gitlab" yum install -y gitlab-ce</nowiki> | ||
Revision as of 12:59, 4 January 2019
Overview | Continuous Integration (CI) | Source Control Management (SCM) | Containerization | Configuration
Contents |
Git Lab
Installing
Done on a CentOS7 machine. Reference
Dependencies and Configuration
~$ sudo yum install -y curl policycoreutils-python openssh-server cronie ~$ sudo systemctl enable sshd ~$ sudo systemctl start sshd ~$ sudo firewall-cmd --permanent --add-service=http ~$ sudo systemctl reload firewalld
Setup Postfix
~$ sudo yum install -y postfix ~$ sudo systemctl enable postfix ~$ sudo systemctl start postfix
Download Gitlab and Install
~$ sudo curl https://packages.gitlab.com/install/repositories/gitlab/gitlab-ce/script.rpm.sh | sudo bash
Configure. After Gitlab 10.7, if you specified the External URL to be https
then gitlab will automatically use Let's Encrypt to generate the SSL certificate.
NOTE: Make sure to change the localhost
to your hostname and remove the s
from https
if you don't want SSL through let's encrypt.
~$ sudo EXTERNAL_URL="https://localhost/gitlab" yum install -y gitlab-ce
Add user
At this time the only known (2) options to manage users are to:
- Use the GitLab API
- Use the GitLab Web Interface
ssh key
Add user ssh key
First create the ssh key pair from the machine you'll be connecting to gitlab from.
~$ ssh-keygen enerating public/private rsa key pair. Enter file in which to save the key (/Users/demo/.ssh/id_rsa): Enter passphrase (empty for no passphrase): Enter same passphrase again: Your identification has been saved in /Users/demo/.ssh/id_rsa. Your public key has been saved in /Users/demo/.ssh/id_rsa.pub.
Next, print the public key
~$ cat ~/.ssh/id_rsa.pub ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDMuyMtMl6aWwqBCvQx7YXvZd7bCFVDsyln3yh5/8Pu23LW88VXfJgsBvhZZ9W0rPBGYyzE/TDzwwITvVQcKrwQrvQlYxTVbqZQDlmsC41HnwDfGFXg+QouZemQ2YgMeHfBzy+w26/gg480nC2PPNd0OG79+e7gFVrTL79JA/MyePBugvYqOAbl30h7M1a7EHP3IV5DQUQg4YUq49v4d3AvM0aia4EUowJs0P/j83nsZt8yiE2JEYR03kDgT/qziPK7LnVFqpFDSPC3MR3b8B354E9Af4C/JHgvglv2tsxOyvKupyZonbyr68CqSorO2rAwY/jWFEiArIaVuDiR9YM5 demo@localhost
Using the gitlab web interface, log in and select the SSH Keys menu item. Follow the instructions and save your SSH Key.
new project
You will need a new project in order to create repos within. From the web interface, create a new project and then from your git IDE (I use iterm2 with zsh) clone it.
~$ git clone git@localhost:user/test-project.git
Now you can being pushing files to gitlab.
Non-standard port
If you are using gitlab on non-standard ports, then you may need to add a config file so that git works.
~$ touch ~/.ssh/config ~$ vim ~/.ssh/config ... Host localhost HostName localhost Port 8922 User demo