मुफ्त ऑन-प्रेम जिट सर्वर चुनना - गिटिया जीत जाता है!
अच्छा ओपन सोर्स जीटी सर्वर चुनने का प्रयास कर रहे हैं।
अपने प्रोजेक्ट्स को ओपन क्लाउड जीटी प्रोवाइडर्स से दूर करने के बारे में सोच रहे हैं और स्वयं-होस्टिंग के लिए अंतर्निहित जीटी सर्वर को स्थानीय रूप से चलाने के बारे में सोच रहे हैं?
सर्वर चुनें
अपना अपना जीटी सर्वर चलाना बहुत कठिन नहीं होना चाहिए, सही?
अब एक छोटी सी सूची के विकल्पों में से एक मुफ्त जीटी सर्वर चुनें। बोनोबो गॉग्स वर्सस गिटिया वर्सस गिटलैब.
हालांकि बोनोबो मुफ्त है लेकिन विंडोज़ के लिए है और लिनक्स के लिए कोई संस्करण नहीं है।
गिटलैब फीचर-विस्तृत और संसाधन-भारी है, यह एक हाथ में अनुभव है। यह एक वाणिज्यिक उत्पाद है लेकिन एक मुफ्त संस्करण भी है ।
गॉग्स बहुत हल्का है, मैंने इसका परीक्षण किया है और यह अच्छा काम करता है, लेकिन इसमें कंटेनर रजिस्ट्री नहीं है।
मेरे अनुसार तुलना गिटिया के पक्ष में है।
गिटिया और पोस्टग्रेसक्व डॉकराइज्ड
https://docs.gitea.com/next/installation/install-with-docker
cd ~
mkdir gitea
cd gitea
docker-compose.yml:
version: "3"
networks:
gitea:
external: false
services:
server:
image: gitea/gitea:latest
container_name: gitea
environment:
- USER_UID=1000
- USER_GID=1000
- GITEA__database__DB_TYPE=postgres
- GITEA__database__HOST=db:5432
- GITEA__database__NAME=gitea
- GITEA__database__USER=gitea
- GITEA__database__PASSWD=gitea
restart: always
networks:
- gitea
volumes:
- ./gitea:/data
- /etc/timezone:/etc/timezone:ro
- /etc/localtime:/etc/localtime:ro
ports:
- "3000:3000"
- "222:22"
depends_on:
- db
db:
image: postgres:14
restart: always
environment:
- POSTGRES_USER=gitea
- POSTGRES_PASSWORD=gitea
- POSTGRES_DB=gitea
networks:
- gitea
volumes:
- ./postgres:/var/lib/postgresql/data
फिर
docker-compose up -d
http://localhost:3000/ पर जाएं
बंद करने के लिए
docker-compose down
वॉल्यूम्स बने रहेंगे
संसाधन उपयोग
दिखाता है कि कंटेनर 260 मेगाबाइट रैम और कुछ सीपीयू लेता है।
डॉकर इमेज आकार कुल 583 मेगाबाइट है। इसमें से 422 मेगाबाइट पोस्टग्रेस:14 इमेज है। यदि संसाधन सीमित हैं तो पोस्टग्रेस:14-अल्पाइन इमेज 239 मेगाबाइट लेता है, यह भी काम कर सकता है।
एनोट। 10 से अधिक रिपोजिटरीज को गिटिया में माइग्रेट करने के बाद, कुछ फॉर्किंग और क्लोनिंग गिटिया कंटेनर अकेले अब 420 मेगाबाइट रैम का उपयोग कर रहा है। इस पर नज़र रखने की आवश्यकता है।
दो रिपोजिटरीज को सिंक करें
https://docs.gitea.com/next/usage/repo-mirror
पुश और पुल कर सकते हैं।
पुल
- शीर्ष दाएं मेनू में “नई माइग्रेशन” को चुनें।
- दूरस्थ रिपोजिटरी सेवा का चयन करें।
- एक रिपोजिटरी यूआरएल दर्ज करें।
- यदि रिपोजिटरी के लिए प्रमाणीकरण आवश्यक है तो अपनी प्रमाणीकरण जानकारी दर्ज करें।
- चेकबॉक्स को चेक करें: यह रिपोजिटरी एक मिरर होगा।
- माइग्रेट रिपोजिटरी को सेवा करने के लिए चुनें।
अब रिपोजिटरी दूरस्थ रिपोजिटरी से अक्सर मिरर करता है। आप रिपोजिटरी सेटिंग्स में “अब सिंक करें” चुनकर एक बल्क रिसिंक कर सकते हैं।
केवल उन रिपोजिटरीज के लिए पुल मिररिंग सेटअप कर सकते हैं जो अभी तक अपने इंस्टैंस पर मौजूद नहीं हैं। एक बार रिपोजिटरी बन जाने के बाद, आप इसे पुल मिरर में बदल नहीं सकते।
एचटीटीपीएस कॉन्फ़िग
एसएसएल कॉन्फ़िग में अधिक है: https://docs.gitea.com/next/administration/https-setup
लेकिन हम अब इसके लिए कोशिश कर रहे हैं (गिटिया साइट से लिया गया):
बिल्ट-इन सर्वर का उपयोग करना
एचटीटीपीएस को योग्य करने से पहले, आपके पास वैध एसएसएल/टीएलएस सर्टिफिकेट होना चाहिए। आप मूल्यांकन और परीक्षण के लिए स्व-जनित सर्टिफिकेट का उपयोग कर सकते हैं। कृपया निम्न आदेश चलाएं:
gitea cert --host [HOST]
स्व-हस्ताक्षरित सर्टिफिकेट जनरेट करने के लिए।
यदि आप सर्वर पर एपैच या एंजिनएक्स का उपयोग कर रहे हैं, तो रिवर्स प्रॉक्सी गाइड की जांच करना अनुरोध करते हैं।
Gitea के बिल्ट-इन एचटीटीपीएस समर्थन का उपयोग करने के लिए, आपको अपने app.ini फ़ाइल को बदलना होगा:
[server]
PROTOCOL = https
ROOT_URL = https://git.example.com:3000/
HTTP_PORT = 3000
CERT_FILE = cert.pem
KEY_FILE = key.pem
ध्यान दें कि यदि आपका सर्टिफिकेट एक तीसरे पक्ष के सर्टिफिकेट अथॉरिटी द्वारा हस्ताक्षरित है (अर्थात, स्व-हस्ताक्षरित नहीं), तो cert.pem में सर्टिफिकेट चेन होना चाहिए। सर्वर सर्टिफिकेट cert.pem में पहला प्रविष्टि होना चाहिए, अगर कोई हो तो मध्यस्थों के क्रम में। मूल सर्टिफिकेट को शामिल करने की आवश्यकता नहीं है क्योंकि एक जोड़ता हुआ क्लाइंट पहले से ही इसके साथ विश्वास संबंध स्थापित करने के लिए आवश्यक है। अधिक जानकारी के लिए कॉन्फ़िग चीट शीट के बारे में जांचें।
CERT_FILE या KEY_FILE क्षेत्र के लिए, यदि यह एक सापेक्ष मार्ग है, तो यह GITEA_CUSTOM परिवेश चर के संबंध में है। यह एक निरपेक्ष मार्ग भी हो सकता है।
एचटीटीपी रीडायरेक्शन सेटअप करें Gitea सर्वर केवल एक पोर्ट सुन सकता है; एचटीटीपी अनुरोधों को एचटीटीपीएस पोर्ट पर रीडायरेक्ट करने के लिए, आपको एचटीटीपी रीडायरेक्शन सेवा को सक्षम करना होगा:
[server]
REDIRECT_OTHER_PORT = true
; रीडायरेक्शन सेवा को सुनने के लिए पोर्ट
PORT_TO_REDIRECT = 3080
यदि आप डॉकर का उपयोग कर रहे हैं, तो यह पोर्ट अपने docker-compose.yml फ़ाइल में सेट करें।
रिवर्स प्रॉक्सी का उपयोग करना
इस पोस्ट में: Gitea-ssl मैं एपैच को टीएलएस टर्मिनेटिंग रिवर्स प्रॉक्सी के रूप में इस्तेमाल कर रहा हूं।
काम करने वाला
एसएसई कॉन्फ़िग: https://docs.gitea.com/next/installation/install-with-docker
बैकअप-रिस्टोर टेस्ट।