Gitlab – add project

Задайте глобальні налаштування Git

git config --global user.name "Ivan Ivanov"
git config --global user.email "[email protected]"

Створити новий репозиторій

git clone https://git.example.site/category/project.git
cd project
touch README.md
git add README.md
git commit -m "add README"
git push -u origin master

Завантажити поточну папку в репозиторій

cd existing_folder
git init
git remote add origin https://git.example.site/category/project.git
git add .
git commit -m "Initial commit"
git push -u origin master

Завантажити існуючий Git репозиторій

cd existing_repo
git remote rename origin old-origin
git remote add origin https://git.example.site/category/project.git
git push -u origin --all
git push -u origin --tags

Gitlab install on Ubuntu 18.04

Інструкція по встановленню Gitlab на Ubuntu 18.04
Обновляємо систему:

sudo apt-get update -y
sudo apt-get upgrade -y

Нам потрібно буде встановити SSL, тому зразу встановлюємо всі необхідні залежності:

sudo apt-get install ca-certificates postfix curl openssh-server wget

Тепер завантажуємо скріпт встановлення з офіційного репозиторія Gitlab:

curl -sS https://packages.gitlab.com/install/repositories/gitlab/gitlab-ce/script.deb.sh | sudo bash

Ця команда скачає Gitlab, після чого нам потрібно буде його налаштувати. Нам потрібно поміняти наш URL в файлі:

sudo vim /etc/gitlab/gitlab.rb

Прописуємо наш домен в рядок:

external_url 'http://git.example.site'

Тепер приступимо до налаштування SSL. Взагалі візьміть за правило встановлювати SSL на всі сервіси, які у вас є. Тим більше, що зробити це можна безкоштовно.

Нам потрібно просто встановити LetsEnctypt

sudo apt-get install letsencrypt -y

Після установки нам потрібно вказати EMail і URL

sudo letsencrypt certonly --standalone --agree-tos --no-eff-email --agree-tos --email [email protected] -d git.example.site

Далі нам потрібно створити ключ

sudo mkdir -p /etc/gitlab/ssl/
sudo openssl dhparam -out /etc/gitlab/ssl/dhparams.pem 2048

Міняємо права доступу на цю директорію

chmod 600 /etc/gitlab/ssl/*

Готово.

Тепер, щоб активувати HTTPS, потрібно відредагувати файл

sudo vim /etc/gitlab/gitlab.rb

Міняємо рядок “external_url”

external_url 'https://git.example.site'

Далі в цьому ж файлі шукаємо блок, в якому конфігуруєтся NGINX. В кінці цього блоку вставляємо код:

nginx['redirect_http_to_https'] = true
nginx['ssl_certificate'] = "/etc/letsencrypt/live/git.example.site/fullchain.pem"
nginx['ssl_certificate_key'] = "/etc/letsencrypt/live/git.example.site/privkey.pem"
nginx['ssl_dhparam'] = "/etc/gitlab/ssl/dhparams.pem"

Не забудьте поміняти домен git.example.site на ваш.

Тепер нам потрібно знову сконфігурувати Gitlab

sudo gitlab-ctl reconfigure

Готово.

Тепер нам потрібно включити вбудований в Ubuntu фаєрвол і дозволити підключення до сервера по протоколах ssh, http, https

sudo ufw allow ssh
sudo ufw allow http
sudo ufw allow https

Тепер запустимо сервіс

sudo ufw enable

і перевіримо що він працює

sudo ufw status

У нас повинен успішно запуститися наш GitLab. Перевіряємо його за адресою https://git.example.site

Нас відразу ж попросять придумати пароль. Задаємо пароль, а потім заходимо в GitLab з користувачем root і паролем, який ми тільки що вказали.

Microtik – change default route for local network

Якщо до маршрутизатора підключено 2 і більше провайдерів весь трафік іде по маршруту по замовчуванню. Однак бувають ситуації, коли потрібно змінити маршрут по замовчуванню, і направити весь або частану трафіку з локальної мережі на 2 провайдера.

Додаємо новий маршрут до 2 провайдера і прописуємо йому Routing Mark ISP2

В розділі Ip -> Firewall -> Nat добавляємо правила Masquerade для всіх підключених провайдерів:

В розділі Ip->Firewall->Address List створюємо новий список з назвою Local, де прописуємо локальну мережу 10.10.3.0/24

В розділі Ip -> Firewall -> Mangle добавляємо правило яке міняє маршрут для всіх пакетів з мережі, прописаної у списку Local

Docker – install Nextcloud

Щоб запустити Nextcloud в Docker контейнері виконайте команду:

docker run -d -p 8080:80 nextcloud

Зміна каталога з даними:

docker run -d --name nc -p 8080:80 -v /home/user/nextcloud:/var/www/html nextcloud

Linux – зміна прав доступу для файлів та каталогів

Для того, щоб змінити права всіх файлів в поточній папці
використовується команда:

find . -type f -print0 | xargs -0 chmod 665

Для того, щоб змінити права доступу для всіх каталогів в
поточному каталозі використовується команда:

find . -type d -print0 | xargs -0 chmod 751

Linux – робота з архівами

Щоб запакувати та розпакувати ZIP архів, використовуються
наступні команди:

zip -r file.zip ./folder 
unzip file.zip . 

Щоб заархівувати та розархівувати архів в форматі TAR.GZ
використовуються наступні команди:

tar -czvf file.tar.gz ./folder
tar -xvzf file.tar.gz . 

Для того, щоб заархівувати та розархівувати TAR.BZ2 архів
використовуються команди:

tar -cvjf file.tar.bz2 ./folder
tar -xvjf file.tar.bz2 .

Docker – nginx + php-fdm7

Запуск Docker контейнера nginx + php7

docker run --name nginx -v /home/git/docker/public_html:/var/www/html:ro 
-d -p 80:8080 trafex/alpine-nginx-php7

GitHub репозиторій проекту:

https://github.com/TrafeX/docker-php-nginx

Linux – як переглянути розмір диска та розмір каталога

Для перегляду всіх розділів та їх розміру в операційній системі Linux використовується команда:

df -h

Щоб переглянути розмір поточного каталогу та всіх його підкаталогів використовується команда:

du --max-depth=1 -hc

Також ви можете скористатись утилітою ncdu для пошуку великих файлів і каталогів в системі:

sudo apt install ncdu

Linux Mint 19.1 Mate – краща операційна система Linux для домашніх комп’ютерів

Дистрибутив Linux Mint 19.1 формується на пакетній базі Ubuntu 18.04 LTS і підтримується до 2023 року.

Дистрибутив повністю сумісний з Ubuntu, але істотно
відрізняється підходом до організації інтерфейсу користувача і підбором використовуваних за замовчуванням додатків.

Розробники Linux Mint використовують графічні інтерфейси Mate, Cinnamon і Xfce, які відповідають класичним канонам організації робочого столу, та є більш звичним для користувачів, і не використовують нові методи побудови інтерфейсу Unity і GNOME 3.

Інтерфейс робочого столу Mate продовжує розвиток ідей GNOME 2, який на думку багатьох спеціалістів кращий,
зручніщий і простіший за GNOME 3.

Власною розробкою команди Linux Mint в інтерфейсі Mate є головне меню “Mintmenu”

Дане меню чимось нагадує всім знайоме меню Пуск в операційних системах Windows XP, Windows 7, що сильно полегшує людям, які привикли до цих операційних систем,
перехід на Linux

В дистрибутиві Linux Mint 19.1 Mate використовується файловий менеджер Caja (форк славнозвісного файлового менеджера Nautilus)

Також особливої уваги заслуговує менеджер програм “Mintinstall”, який, на думку автора, є набагато зручнішим від менеджера програм в Ubuntu.

Всі налаштування операційної системи Linux Mint зібрані в Центрі керування і розбиті на розділи, для зручного пошуку:

В правій частині панелі задач розміщується блок з іконками запущених програм, а також календар, годинник і прогноз погоди:

Саме завдяки своїй простоті, надійності і візуальній схожості з інтерфейсом операційних систем Windows, Linux Mint
завойовує все більшу популярність на ринку десктопних операційних систем.