1) ტერმინალი გახსენი და შექმენი დირექტორია
mkdir -p /home/vito/vito-local/
cd /home/vito/vito-local/
2) შექმენი საჭირო ფაილები (ჯერ ცარიელებიც შეიძლება)
touch index.html style.css script.js nginx.conf Dockerfile .gitlab-ci.yml
index.html— მთავარი ვებ-გვერდი
style.css— ვიზუალური სტილები
script.js— JavaScript კოდი
nginx.conf— ვებ-სერვერის კონფიგურაცია
Dockerfile— კონტეინერის build ინსტრუქცია
.gitlab-ci.yml— CI/CD პროცესის აღწერა
3) Git ინიციალიზაცია და პირველი commit
git init
git add .
git commit -m "First commit"
git branch -m master main
4) GitLab-ზე რეგისტრაცია
შედი GitLab-ზე და შექმენი ანგარიში.
5) SSH Key გენერაცია და GitLab-ზე დამატება
5.1) Key გენერაცია ტერმინალში
your_email@example.com ჩაანაცვლე იმ მეილით, რომლითაც GitLab-ზე დარეგისტრირდი.
ssh-keygen -t ed25519 -C "your_email@example.com"
cat ~/.ssh/id_ed25519.pub
გამოსული ტექსტი არის Public Key — დააკოპირე მთლიანად.
5.2) GitLab-ზე Key-ის ჩასმა
- დააჭირე Avatar
- დააჭირე Preferences
- მარცხენა მხარეს: Access → SSH Keys
- დააჭირე Add new key
- Title-ში ჩაწერე რამე
- დააჭირე Add key
5.3) კავშირის შემოწმება
ssh -T git@gitlab.com
თუ prompt დაგხვდა, აკრიფე yes.
5.4) თუ SSH არ მუშაობს (Fallback)
ფაილში ~/.ssh/config ჩაწერე:
Host gitlab.com
Hostname altssh.gitlab.com
Port 443
User git
6) GitLab-ზე ახალი პროექტის შექმნა (Blank project)
- გადადი მთავარ გვერდზე
- მარცხენა სვეტში გახსენი Projects
- დააჭირე New project
- აირჩიე Create blank project
- Project name-ში დაარქვი სახელი
- Pick a group or namespace-ში აირჩიე შენი group ან username
- მოხსენი Initialize repository with a README
- დააჭირე Create project
7) ლოკალური Git config (შეცვალე შენი სახელითა და მეილით)
git config --local user.name "Mamuka Lagvilava"
git config --local user.email "mamuka921@gmail.com"
8) Push an existing folder (GitLab-ის ინსტრუქციას მიჰყევი)
Project-ის გვერდზე ნახავ ბლოკს Push an existing folder. მაგალითად:
git init --initial-branch=main --object-format=sha1
git remote add origin git@gitlab.com:mamuka-group/sad.git
git add .
git commit -m "Initial commit"
git push --set-upstream origin main
9) კონფიგურაციები: nginx.conf, Dockerfile, .gitlab-ci.yml
9.1) nginx.conf
server {
listen 80; # სერვერი უსმენს 80 პორტს (HTTP)
server_name mamuka.local; # დომენის სახელი
location / {
root /usr/share/nginx/html; # აქ ინახება ვებ-ფაილები
index index.html; # ძირითადი ფაილი
# ეძებს ფაილს, თუ ვერ იპოვა - გადამისამართებს index.html-ზე
try_files $uri $uri/ /index.html;
}
}
9.2) Dockerfile
FROM nginx:alpine
COPY ./nginx.conf /etc/nginx/conf.d/default.conf
COPY ./index.html /usr/share/nginx/html/
COPY ./style.css /usr/share/nginx/html/
COPY ./script.js /usr/share/nginx/html/
9.3) .gitlab-ci.yml
# გაგრძელება იქნება…