Ubuntu 16.04 पर कॉनकोर्स सीआई को कैसे स्थापित करें और कॉन्फ़िगर करें

परिचय

सतत एकीकरण एक DevOps सॉफ्टवेयर विकास अभ्यास है जो डेवलपर्स को दिन में कई बार साझा किए गए भंडार में बार-बार संशोधित कोड को मर्ज करने में सक्षम बनाता है। प्रत्येक मर्ज के बाद, कोड में समस्याओं का पता लगाने के लिए स्वचालित बिल्ड और परीक्षण किए जाते हैं। यह डेवलपर्स को सॉफ़्टवेयर की गुणवत्ता में सुधार करने और सॉफ़्टवेयर की निरंतर डिलीवरी प्रदान करने के लिए त्रुटियों को जल्दी से खोजने और हल करने में सक्षम बनाता है। कॉनकोर्स से स्विचिंग और फ्रॉंग करना बहुत आसान है क्योंकि यह अपने सभी कॉन्फ़िगरेशन को डिक्लेक्टिव फाइलों में रखता है जिन्हें वर्जन कंट्रोल में चेक किया जा सकता है। यह एक वेब उपयोगकर्ता इंटरफ़ेस भी प्रदान करता है जो बिल्ड जानकारी को अंतःक्रियात्मक रूप से प्रदर्शित करता है।

समास घटक।
  • एटीसी कॉनकोर्स का मुख्य घटक है। यह वेब UI और API चलाने के लिए जिम्मेदार है। यह सभी पाइपलाइन शेड्यूलिंग का भी ध्यान रखता है।
  • TSA एक कस्टम निर्मित SSH सर्वर है। यह एटीसी के साथ एक कार्यकर्ता को सुरक्षित रूप से पंजीकृत करने के लिए जिम्मेदार है।
  • श्रमिक आगे दो अलग-अलग सेवाएं चलाते हैं:
    1. गार्डन एक कंटेनर रनटाइम है और एक कर्मचारी पर दूर से ऑर्केस्ट्रेटिंग कंटेनरों के लिए एक इंटरफ़ेस है।
    2. बैगग्रॉस्क्लेम एक कैश और आर्टिफैक्ट मैनेजमेंट सर्वर है।
  • फ़ोक एक कमांड लाइन इंटरफ़ेस है जिसका उपयोग कॉनकोर्स पाइपलाइन को कॉन्फ़िगर करने के लिए एटीसी के साथ बातचीत करने के लिए किया जाता है।

आवश्यक शर्तें

  • एक Vultr Ubuntu 16.04 सर्वर उदाहरण।
  • एक sudo यूजर

की सभी घटनाओं प्रतिस्थापित करना सुनिश्चित करें 192.0.2.1 और ci.example.com अपने वास्तविक Vultr सार्वजनिक आईपी पते और वास्तविक डोमेन नाम से।

गाइड का उपयोग करके अपने बेस सिस्टम को अपडेट करें Ubuntu 16.04 कैसे अपडेट करें । एक बार आपका सिस्टम अपडेट हो जाने के बाद, PostgreSQL को स्थापित करने के लिए आगे बढ़ें।

PostgreSQL डेटाबेस को स्थापित और कॉन्फ़िगर करें

PostgreSQL एक ऑब्जेक्ट रिलेशनल डेटाबेस सिस्टम है। कॉनकोर्स अपने पाइपलाइन डेटा को पोस्टग्रेक्यूएल डेटाबेस में संग्रहीत करता है। PostgreSQL रिपॉजिटरी जोड़ें।

echo "deb http://apt.postgresql.org/pub/repos/apt/ xenial-pgdg main" | sudo tee /etc/apt/sources.list.d/pgdg.list
wget --quiet -O - https://www.postgresql.org/media/keys/ACCC4CF8.asc | sudo apt-key add -
sudo apt update

PostgreSQL डेटाबेस सर्वर स्थापित करें।

sudo apt -y install postgresql

PostgreSQL सर्वर शुरू करें और इसे बूट समय पर स्वचालित रूप से शुरू करने के लिए सक्षम करें।

sudo systemctl start postgresql
sudo systemctl enable postgresql

डिफ़ॉल्ट PostgreSQL उपयोगकर्ता के लिए पासवर्ड बदलें।

sudo passwd postgres

PostgreSQL उपयोगकर्ता के रूप में लॉगिन करें:

sudo su - postgres

कॉनकोर्स सीआई के लिए एक नया PostgreSQL उपयोगकर्ता बनाएं।

createuser concourse

नोट : डिफ़ॉल्ट PostgreSQL उपयोगकर्ता डेटाबेस के प्रमाणीकरण के लिए इस्तेमाल किया जा सकता है, लेकिन यह एक उत्पादन सेटअप में सम्‍मिलित डेटाबेस के प्रमाणीकरण के लिए एक समर्पित उपयोगकर्ता का उपयोग करने के लिए अनुशंसित है।

PostgreSQL डेटाबेस पर क्वेरीज़ चलाने के लिए एक शेल प्रदान करता है। PostgreSQL शेल पर स्विच करें।

psql

नए बनाए गए कॉनकोर्स डेटाबेस उपयोगकर्ता के लिए एक पासवर्ड सेट करें।

ALTER USER concourse WITH ENCRYPTED password 'DBPassword';

महत्वपूर्ण : एक मजबूत पासवर्ड के साथ बदलें DBPassword। पासवर्ड का एक नोट बनाएं जैसा कि ट्यूटोरियल में बाद में आवश्यक होगा।

कॉनकोर्स के लिए एक नया डेटाबेस बनाएं।

CREATE DATABASE concourse OWNER concourse;

psql खोल से बाहर निकलें ।

\q

वर्तमान postgresउपयोगकर्ता से sudo उपयोगकर्ता पर स्विच करें।

exit

डाउनलोड करें और कॉनकोर्स सीआई स्थापित करें

कॉनकोर्स निष्पादन योग्य का नवीनतम संस्करण डाउनलोड करें और इसे स्टोर करें /usr/bin ताकि इसे सीधे निष्पादित किया जा सके। कॉनकोर्स एंड फ्लाई बायरीज का नवीनतम संस्करण कॉनकोर्स डाउनलोड पेज पर पाया जा सकता है । नई रिलीज बहुत अक्सर हैं। सबसे हाल के संस्करण के लिए नए लिंक के साथ नीचे दिए गए लिंक को बदलें।

sudo wget https://github.com/concourse/concourse/releases/download/v3.10.0/concourse_linux_amd64 -O /usr/bin/concourse

इसी तरह, फ्लाई एग्ज़ेक्टेबल का नवीनतम संस्करण डाउनलोड करें और इसे स्टोर करें /usr/bin

sudo wget https://github.com/concourse/concourse/releases/download/v3.10.0/fly_linux_amd64 -O /usr/bin/fly

फ्लाई कमांड लाइन का इंटरफ़ेस है जो कॉनकोर्स सीआई के एटीसी एपीआई से कनेक्ट करने के लिए उपयोग किया जाता है। लिनक्स, विंडोज और मैकओएस जैसे कई प्लेटफार्मों के लिए फ्लाई उपलब्ध है।

डाउनलोड concourse और fly बायनेरिज़ के लिए अनुमति निष्पादित करें ।

sudo chmod +x /usr/bin/concourse /usr/bin/fly

जाँच करें कि क्या कॉनकोर्स और फ्लाई अपने संस्करण की जाँच करके सही तरीके से काम कर रहे हैं।

concourse -version
fly -version

आरएसए कुंजी उत्पन्न और सेटअप करें

RSA प्रमुख जोड़े कॉनकोर्स के घटकों के बीच संचार को एन्क्रिप्ट करने का एक तरीका प्रदान करते हैं।

कार्य के लिए सम्‍मिलन के लिए, कम से कम तीन जोड़ी कुंजियाँ बनानी होंगी। सत्र डेटा एन्क्रिप्ट करने के लिए, जनरेट करें session_signing_key। इस कुंजी का उपयोग टीएसए द्वारा एटीसी को किए गए अनुरोधों पर हस्ताक्षर करने के लिए भी किया जाएगा। TSA SSH सर्वर को सुरक्षित करने के लिए a tsa_host_key। अंत में, worker_key प्रत्येक कार्यकर्ता के लिए जनरेट करें ।

कॉनकोर्स सीआई से संबंधित कुंजियों और कॉन्फ़िगरेशन को संग्रहीत करने के लिए एक नई निर्देशिका बनाएं।

sudo mkdir /opt/concourse

आवश्यक कुंजी उत्पन्न करें।

sudo ssh-keygen -t rsa -q -N '' -f /opt/concourse/session_signing_key
sudo ssh-keygen -t rsa -q -N '' -f /opt/concourse/tsa_host_key
sudo ssh-keygen -t rsa -q -N '' -f /opt/concourse/worker_key

authorized_worker_keys फ़ाइल की सामग्री को कॉपी करके श्रमिकों की सार्वजनिक कुंजी को अधिकृत करें ।

sudo cp /opt/concourse/worker_key.pub /opt/concourse/authorized_worker_keys

संभोग शुरू करना

कॉनकोर्स दो अलग-अलग घटक प्रदान करता है जिन्हें शुरू करने की आवश्यकता है: वेब और कार्यकर्ता। कॉनकोर्स वेब शुरू करें।

sudo concourse web \
  --basic-auth-username admin \
  --basic-auth-password StrongPass \
  --session-signing-key /opt/concourse/session_signing_key \
  --tsa-host-key /opt/concourse/tsa_host_key \
  --tsa-authorized-keys /opt/concourse/authorized_worker_keys \
  --postgres-user=concourse \
  --postgres-password=DBPassword \
  --postgres-database=concourse \
  --external-url http://192.0.2.1:8080

basic-auth यदि वांछित है , तो उपयोगकर्ता नाम और पासवर्ड बदलें । सुनिश्चित करें कि मुख्य फ़ाइलों का पथ सही है और सुनिश्चित करें कि PostgreSQL डेटाबेस कॉन्फ़िगरेशन में उपयोगकर्ता नाम और पासवर्ड के लिए सही मान प्रदान किया गया है।

नोट : एटीसी डिफ़ॉल्ट पोर्ट 8080 को सुनेगा और टीएसए पोर्ट को सुनेगा 2222। यदि प्रमाणीकरण वांछित नहीं है, --no-really-i-dont-want-any-authतो मूल स्रोत विकल्पों को हटाने के बाद विकल्प पास करें।

वेब सर्वर शुरू होने के बाद, निम्न आउटपुट प्रदर्शित किया जाएगा।

{"timestamp":"1503657859.661247969","source":"tsa","message":"tsa.listening","log_level":1,"data":{}}
{"timestamp":"1503657859.666907549","source":"atc","message":"atc.listening","log_level":1,"data":{"debug":"127.0.0.1:8079","http":"0.0.0.0:8080"}}

सर्वर को अभी के लिए बंद कर दें, क्योंकि कुछ और चीजें अभी भी सेटअप होनी चाहिए।

कॉनकोर्स सीआई वर्कर शुरू करें।

sudo concourse worker \
  --work-dir /opt/concourse/worker \
  --tsa-host 127.0.0.1 \
  --tsa-public-key /opt/concourse/tsa_host_key.pub \
  --tsa-worker-private-key /opt/concourse/worker_key

उपरोक्त कमांड मान लेगा कि TSA लोकलहोस्ट पर चल रहा है और डिफ़ॉल्ट पोर्ट को सुन रहा है 2222

यद्यपि कॉनकोर्स वेब और वर्कर को ऊपर दिए गए कमांड का उपयोग करके आसानी से शुरू किया जा सकता है, लेकिन सर्वर को प्रबंधित करने के लिए सिस्टमड का उपयोग करने की सिफारिश की जाती है।

पर्यावरण और सिस्टम सेवा को कॉन्फ़िगर करें

एप्लिकेशन के प्रबंधन के लिए Systemd सेवा का उपयोग यह सुनिश्चित करता है कि एप्लिकेशन विफलताओं और बूट समय पर स्वचालित रूप से प्रारंभ हो गया है। कॉनकोर्स सर्वर किसी भी कॉन्फ़िगरेशन फ़ाइल से डेटा नहीं लेता है, लेकिन यह पर्यावरण चर से डेटा तक पहुंच सकता है। वैश्विक पर्यावरण चर सेट करने के बजाय, पर्यावरण चर को संग्रहीत करने के लिए एक नई फ़ाइल बनाएं और फिर सिस्टमड सेवा का उपयोग करके चरों को कंसोर्ट सीआई में पास करें।

कॉनकोर्स वेब के लिए एक नई पर्यावरण फ़ाइल बनाएँ।

sudo nano /opt/concourse/web.env

फ़ाइल को पॉप्युलेट करें।

CONCOURSE_SESSION_SIGNING_KEY=/opt/concourse/session_signing_key
CONCOURSE_TSA_HOST_KEY=/opt/concourse/tsa_host_key
CONCOURSE_TSA_AUTHORIZED_KEYS=/opt/concourse/authorized_worker_keys

CONCOURSE_POSTGRES_USER=concourse
CONCOURSE_POSTGRES_PASSWORD=DBPassword
CONCOURSE_POSTGRES_DATABASE=concourse

CONCOURSE_BASIC_AUTH_USERNAME=admin
CONCOURSE_BASIC_AUTH_PASSWORD=StrongPass
CONCOURSE_EXTERNAL_URL=http://192.0.2.1:8080

BASIC_AUTH यदि वांछित है , तो उपयोगकर्ता नाम और पासवर्ड बदलें । सुनिश्चित करें कि मुख्य फ़ाइलों का पथ सही है और सुनिश्चित करें कि PostgreSQL डेटाबेस कॉन्फ़िगरेशन में उपयोगकर्ता नाम और पासवर्ड के लिए सही मान प्रदान किया गया है।

इसी तरह, कार्यकर्ता के लिए एक पर्यावरण फ़ाइल बनाएं।

sudo nano /opt/concourse/worker.env

फ़ाइल को पॉप्युलेट करें।

CONCOURSE_WORK_DIR=/opt/concourse/worker
CONCOURSE_TSA_WORKER_PRIVATE_KEY=/opt/concourse/worker_key
CONCOURSE_TSA_PUBLIC_KEY=/opt/concourse/tsa_host_key.pub
CONCOURSE_TSA_HOST=127.0.0.1

चूंकि पर्यावरण फ़ाइलों में उपयोगकर्ता नाम और पासवर्ड होते हैं, इसलिए इसकी अनुमतियाँ बदलें ताकि इसे अन्य उपयोगकर्ताओं द्वारा एक्सेस नहीं किया जा सके।

sudo chmod 600 /opt/concourse/*.env

अब वेब वातावरण को चलाने के लिए कॉनकोर्स के लिए एक नया उपयोगकर्ता बनाएं। यह सुनिश्चित करेगा कि वेब सर्वर एक अलग वातावरण में चल रहा है।

sudo useradd concourse

सम्‍मिलित उपयोगकर्ता को सम्‍मिलित CI फ़ाइल की डायरेक्टरी पर स्वामित्व दें।

sudo chown -R concourse:concourse /opt/concourse

कॉनकोर्स वेब सेवा के लिए एक नई systemd सेवा फ़ाइल बनाएँ।

sudo nano /etc/systemd/system/concourse-web.service

फ़ाइल को पॉप्युलेट करें।

[Unit]
Description=Concourse CI web server

[Service]
Type=simple
User=concourse
Group=concourse
Restart=on-failure
EnvironmentFile=/opt/concourse/web.env
ExecStart=/usr/bin/concourse web
StandardOutput=syslog
StandardError=syslog
SyslogIdentifier=concourse_web

[Install]
WantedBy=multi-user.target

फ़ाइल को सहेजें और बंद करें। कॉनकोर्स वर्कर सेवा के लिए एक नई सेवा फ़ाइल बनाएँ।

sudo nano /etc/systemd/system/concourse-worker.service

फ़ाइल को पॉप्युलेट करें।

[Unit]
Description=Concourse CI worker process

[Service]
Type=simple
Restart=on-failure
EnvironmentFile=/opt/concourse/worker.env
ExecStart=/usr/bin/concourse worker
StandardOutput=syslog
StandardError=syslog
SyslogIdentifier=concourse_worker

[Install]
WantedBy=multi-user.target

वेब और वर्कर सेवा अब सीधे शुरू की जा सकती है।

sudo systemctl start concourse-web concourse-worker

कार्यकर्ता और वेब प्रक्रिया को बूट समय पर स्वचालित रूप से शुरू करने के लिए, निम्नलिखित चलाने के लिए।

sudo systemctl enable concourse-worker concourse-web

सेवाओं की स्थिति की जांच करने के लिए, निम्नलिखित चलाएं।

sudo systemctl status concourse-worker concourse-web

यदि सेवा शुरू नहीं हुई है, या FAILED राज्य में कैश को /tmp निर्देशिका से हटा दें ।

sudo rm -rf /tmp/*

सेवाओं को पुनरारंभ करें।

sudo systemctl restart concourse-worker concourse-web

ध्यान दें कि इस बार सेवाएं सही ढंग से शुरू हुई हैं। सेवाओं की स्थिति की पुष्टि करने पर आउटपुट निम्न के समान होगा।

[user@vultr ~]$ sudo systemctl status concourse-worker concourse-web
● concourse-worker.service - Concourse CI worker process
   Loaded: loaded (/etc/systemd/system/concourse-worker.service; enabled; vendor preset: disabled)
   Active: active (running) since Sat 2017-08-26 07:27:37 UTC; 55s ago
 Main PID: 3037 (concourse)
   CGroup: /system.slice/concourse-worker.service
           └─3037 /usr/bin/concourse worker

Aug 26 07:27:42 vultr.guest concourse_worker[3037]: {"timestamp":"1503732462.934722900","source":"tsa","message":"t...""}}
Aug 26 07:27:42 vultr.guest concourse_worker[3037]: {"timestamp":"1503732462.941227913","source":"guardian","messag...0"}}

...

● concourse-web.service - Concourse CI web server
   Loaded: loaded (/etc/systemd/system/concourse-web.service; enabled; vendor preset: disabled)
   Active: active (running) since Sat 2017-08-26 07:27:37 UTC; 55s ago
 Main PID: 3036 (concourse)
   CGroup: /system.slice/concourse-web.service
           └─3036 /usr/bin/concourse web

Aug 26 07:27:57 vultr.guest concourse_web[3036]: {"timestamp":"1503732477.925554752","source":"tsa","message":"tsa...ve"}}
Aug 26 07:28:02 vultr.guest concourse_web[3036]: {"timestamp":"1503732482.925430775","source":"tsa","message":"tsa...ve"}}
...
Hint: Some lines were ellipsized, use -l to show in full.

सर्वर से कनेक्ट करना

एक बार सर्वर शुरू होने के बाद, कॉनकोर्स सीआई के वेब इंटरफेस को http://192.0.2.1:8080 किसी भी ब्राउज़र में जाकर एक्सेस किया जा सकता है। पर्यावरण फ़ाइल में दिए गए उपयोगकर्ता नाम और पासवर्ड का उपयोग करके लॉग इन करें।

फ्लाई का उपयोग कर सर्वर से कनेक्ट करने के लिए, निम्नलिखित चलाएँ।

fly -t my-ci login -c http://192.0.2.1:8080

उपरोक्त कमांड क�� उपयोग सर्वर में प्रारंभिक लॉगिन के लिए किया जाता है। -t का उपयोग लक्ष्य नाम प्रदान करने के लिए किया जाता है। my-ci किसी इच्छित लक्ष्य नाम के साथ बदलें । उपर्युक्त आदेश डिफ़ॉल्ट टीम में प्रवेश करेगा main। यह पर्यावरण फाइल में दिए गए उपयोगकर्ता नाम और पासवर्ड के लिए पूछेगा।

आउटपुट निम्न की तरह दिखेगा।

[user@vultr ~]$ fly -t my-ci login -c http://192.0.2.1:8080
logging in to team 'main'

username: admin
password:

target saved

लक्ष्य लॉगिन एक दिन के लिए सहेजा जाएगा। उसके बाद, यह समाप्त हो जाएगा।

तुरंत लॉग आउट करने के लिए।

fly -t my-ci logout

फ्लाई का उपयोग नेटवर्क के बाहर सर्वर में प्रवेश करने के लिए किया जा सकता है, लेकिन केवल अगर सर्वर का सार्वजनिक आईपी पता हो और यह नेटवर्क के बाहर से पहुंच योग्य हो। विंडोज या मैकओएस बाइनरी को डाउनलोड साइट से या सर्वर के वेब यूआई से डाउनलोड किया जा सकता है।

Nginx रिवर्स प्रॉक्सी सेट करना

लॉग इन, और कॉनकोर्स सर्वर को वेब यूआई के माध्यम से भेजी गई अन्य जानकारी सुरक्षित नहीं हैं। कनेक्शन एन्क्रिप्टेड नहीं है। Nginx रिवर्स प्रॉक्सी को लेट्स एनक्रिप्ट फ्री एसएसएल के साथ सेट किया जा सकता है।

Nginx स्थापित करें।

sudo apt -y install nginx

Nginx प्रारंभ करें और इसे बूट समय पर स्वचालित रूप से प्रारंभ करने के लिए सक्षम करें।

sudo systemctl start nginx
sudo systemctl enable nginx

Certbot रिपॉजिटरी जोड़ें।

sudo add-apt-repository --yes ppa:certbot/certbot
sudo apt-get update

सर्टिफिकेट स्थापित करें, जो कि चलो एनक्रिप्ट एनए के लिए क्लाइंट एप्लिकेशन है।

sudo apt -y install certbot

नोट : लेट्स एनक्रिप्ट एन से सर्टिफिकेट प्राप्त करने के लिए, जिस डोमेन के लिए सर्टिफिकेट जेनरेट किया जाना है, उसे सर्वर की ओर इंगित किया जाना चाहिए। यदि नहीं, तो डोमेन के DNS रिकॉर्ड्स में आवश्यक परिवर्तन करें और फिर से प्रमाणपत्र अनुरोध करने से पहले DNS के प्रचार के लिए प्रतीक्षा करें। सर्टिफिकेट सर्टिफिकेट प्रदान करने से पहले डोमेन प्राधिकरण की जांच करता है।

एसएसएल प्रमाणपत्र उत्पन्न करें।

sudo certbot certonly --webroot -w /var/www/html -d ci.example.com

जेनरेट किए गए प्रमाणपत्रों को /etc/letsencrypt/live/ci.example.com/ निर्देशिका में संग्रहीत किए जाने की संभावना है । एसएसएल प्रमाण पत्र के रूप में संग्रहीत किया जाएगा fullchain.pem और निजी कुंजी के रूप में संग्रहीत किया जाएगा privkey.pem

आइए, 90 दिनों में प्रमाणपत्रों को एन्क्रिप्ट करें, इसलिए यह सिफारिश की जाती है कि प्रमाणपत्रों के लिए ऑटो नवीनीकरण cronjobs का उपयोग करके स्थापित किया जाए। क्रोन एक प्रणाली सेवा है जिसका उपयोग आवधिक कार्यों को चलाने के लिए किया जाता है।

क्रोन जॉब फ़ाइल खोलें।

sudo crontab -e

फ़ाइल के अंत में निम्न पंक्ति जोड़ें।

30 5 * * * /usr/bin/certbot renew --quiet

उपरोक्त क्रोन नौकरी प्रतिदिन सुबह 5:30 बजे चलेगी। यदि प्रमाण पत्र समाप्ति के लिए है, तो यह स्वतः नवीनीकृत हो जाएगा।

एक नया वर्चुअल होस्ट बनाएं।

sudo nano /etc/nginx/sites-available/concourse

फ़ाइल को पॉप्युलेट करें।

server {
    listen 80;
    server_name ci.example.com;
    return 301 https://$host$request_uri;
}
server {

    listen 443;
    server_name ci.example.com;

    ssl_certificate           /etc/letsencrypt/live/ci.example.com/fullchain.pem;
    ssl_certificate_key       /etc/letsencrypt/live/ci.example.com/privkey.pem;

    ssl on;
    ssl_session_cache  builtin:1000  shared:SSL:10m;
    ssl_protocols  TLSv1 TLSv1.1 TLSv1.2;
    ssl_ciphers HIGH:!aNULL:!eNULL:!EXPORT:!CAMELLIA:!DES:!MD5:!PSK:!RC4;
    ssl_prefer_server_ciphers on;

    access_log    /var/log/nginx/concourse.access.log;

    location / {

      proxy_set_header        Host $host;
      proxy_set_header        X-Real-IP $remote_addr;
      proxy_set_header        X-Forwarded-For $proxy_add_x_forwarded_for;
      proxy_set_header        X-Forwarded-Proto $scheme;
      proxy_pass          http://localhost:8080;
      proxy_read_timeout  90;

      proxy_redirect      http://localhost:8080 https://ci.example.com;
    }
  }

नोट : वास्तविक डोमेन के साथ बदलें ci.example.com

कॉन्फ़िगरेशन फ़ाइल को सक्रिय करें।

sudo ln -s /etc/nginx/sites-available/concourse /etc/nginx/sites-enabled/concourse

सम्‍मिलित वेब के लिए बनाई गई पर्यावरण फ़ाइल को संपादित करें।

sudo nano /opt/concourse/web.env

का मान बदलें CONCOURSE_EXTERNAL_URL और फ़ाइल के अंत में दो और लाइनें भी जोड़ें।

CONCOURSE_EXTERNAL_URL=https://ci.example.com
CONCOURSE_BIND_IP=127.0.0.1
CONCOURSE_BIND_PORT=8080

फाइल को सेव करें और कॉनकोर्स वेब, वर्कर और नेग्नेक्स को पुनरारंभ करें।

sudo systemctl restart concourse-worker concourse-web nginx

ब्राउज़र से और उसके पास भेजे गए सभी डेटा अब एसएसएल एनक्रिप्ट के साथ सुरक्षित हैं।



Leave a Comment

Ubuntu 16.04 पर लाइटकार्ट शॉपिंग कार्ट प्लेटफ़ॉर्म कैसे स्थापित करें

Ubuntu 16.04 पर लाइटकार्ट शॉपिंग कार्ट प्लेटफ़ॉर्म कैसे स्थापित करें

LiteCart PHP, jQuery और HTML में लिखा गया एक स्वतंत्र और ओपन सोर्स शॉपिंग कार्ट प्लेटफॉर्म है। यह ई-कॉमर्स सॉफ्टवेअर का उपयोग करने के लिए एक सरल, हल���का और आसान है

डेबियन पर सेटअप NFS शेयर

डेबियन पर सेटअप NFS शेयर

एनएफएस एक नेटवर्क-आधारित फाइल सिस्टम है जो कंप्यूटरों को कंप्यूटर नेटवर्क पर फाइलों तक पहुंचने की अनुमति देता है। यह मार्गदर्शिका बताती है कि आप एनएफ पर फ़ोल्डर्स को कैसे उजागर कर सकते हैं

मोटोमो एनालिटिक्स को फेडोरा 28 पर कैसे स्थापित करें

मोटोमो एनालिटिक्स को फेडोरा 28 पर कैसे स्थापित करें

एक अलग प्रणाली का उपयोग? माटोमो (पूर्व में पिविक) एक ओपन सोर्स एनालिटिक्स प्लेटफॉर्म है, जो गूगल एनालिटिक्स का एक खुला विकल्प है। Matomo स्रोत को होस्ट किया गया है

Linux पर एक TeamTalk Server सेटअप करें

Linux पर एक TeamTalk Server सेटअप करें

टीमटॉक एक कॉन्फ्रेंसिंग प्रणाली है जो उपयोगकर्ताओं को उच्च-गुणवत्ता वाले ऑडियो / वीडियो वार्तालाप, टेक्स्ट चैट, स्थानांतरण फ़ाइलें और स्क्रीन साझा करने की अनुमति देती है। यह मैं

विंडोज सर्वर पर Garrys मॉड कैसे स्थापित करें

विंडोज सर्वर पर Garrys मॉड कैसे स्थापित करें

परिचय यह आलेख बताएगा कि विंडोज सर्वर 2012 पर गारस मोड सर्वर को कैसे डाउनलोड और इंस्टॉल किया जाए। यह गाइड गहराई में होने के लिए बनाया गया है।

कैसे स्थापित करें और अपने CentOS 7 सर्वर पर CyberPanel कॉन्फ़िगर करें

कैसे स्थापित करें और अपने CentOS 7 सर्वर पर CyberPanel कॉन्फ़िगर करें

एक अलग प्रणाली का उपयोग? परिचय CyberPanel बाजार पर पहला नियंत्रण पैनल है जो दोनों खुला स्रोत है और OpenLiteSpeed ​​का उपयोग करता है। क्या थी?

CentOS पर FFmpeg कैसे स्थापित करें

CentOS पर FFmpeg कैसे स्थापित करें

FFmpeg ऑडियो और वीडियो रिकॉर्ड करने, कन्वर्ट करने और स्ट्रीम करने के लिए एक लोकप्रिय ओपन सोर्स समाधान है, जो सभी प्रकार की ऑनलाइन स्ट्रीमिंग सेवाओं में व्यापक रूप से उपयोग किया जाता है। मैं

SSH का उपयोग करके LUKS डिस्क एन्क्रिप्शन पर LVM को दूरस्थ रूप से अनलॉक करने के लिए CentOS 7 स्थापित और सेटअप करें

SSH का उपयोग करके LUKS डिस्क एन्क्रिप्शन पर LVM को दूरस्थ रूप से अनलॉक करने के लिए CentOS 7 स्थापित और सेटअप करें

एलयूकेएस (लिनक्स यूनिफाइड की सेटअप) लिनक्स के लिए उपलब्ध विभिन्न डिस्क एन्क्रिप्शन प्रारूपों में से एक है जो प्लेटफॉर्म एग्नॉस्टिक है। यह ट्यूटोरियल आपको बुद्धि प्रदान करेगा

अपने Vultr VPS को कैसे एक्सेस करें

अपने Vultr VPS को कैसे एक्सेस करें

Vultr अपने VPS को कॉन्फ़िगर करने, स्थापित करने और उपयोग करने के लिए कई अलग-अलग तरीके प्रदान करता है। क्रेडेंशियल एक्सेस करें आपके VPS के लिए डिफ़ॉल्ट एक्सेस क्रेडेंशियल ar

CentOS 7 पर अक्टूबर CMS को कैसे स्थापित करें

CentOS 7 पर अक्टूबर CMS को कैसे स्थापित करें

अक्टूबर एक खुला स्रोत सामग्री प्रबंधन प्रणाली है जो लारवेल PHP फ्रेमवर्क पर आधारित है। एक सुरुचिपूर्ण इंटरफ़ेस और एक संक्षिप्त मॉड्यूलर वास्तुकला के साथ