مقدمه
DNSControl ابزاری زیرساختی به عنوان کد است که به شما امکان می دهد بخش های DNS خود را با استفاده از اصول استاندارد توسعه نرم افزار از جمله کنترل نسخه ، آزمایش و استقرار خودکار گسترش دهید و مدیریت کنید. DNSControl توسط Stack Exchange ایجاد شده و در Go نوشته شده است.
استفاده از DNSControl بسیاری از مشکلات مدیریت دستی DNS را از بین می برد ، زیرا فایل های بخش در یک قالب قابل برنامه ریزی ذخیره می شوند. این امر به شما امکان می دهد بخش های مختلفی را به طور همزمان به چندین ارائه دهنده DNS گسترش دهید ، خطاهای دستوری را شناسایی کرده و پیکربندی DNS خود را به صورت خودکار انجام دهید و خطای انسانی را کاهش دهید. یکی دیگر از کاربردهای متداول DNSControl انتقال سریع DNS شما به یک ارائه دهنده دیگر است. به عنوان مثال ، در صورت حمله DDoS یا قطع سیستم.
در این آموزش ، DNSControl را نصب و پیکربندی خواهید کرد ، یک پیکربندی اساسی DNS ایجاد کرده و شروع به گسترش سوابق DNS به یک ارائه دهنده زنده می کنید. به عنوان بخشی از این آموزش ، ما از vpsgol به عنوان ارائه دهنده DNS نمونه استفاده خواهیم کرد. اگر می خواهید از ارائه دهنده دیگری استفاده کنید ، تنظیمات بسیار مشابه است. پس از اتمام ، می توانید پیکربندی DNS خود را در یک محیط امن آفلاین مدیریت و آزمایش کنید و سپس بطور خودکار آن را به مرحله تولید منتقل کنید.
پیش نیازها
قبل از شروع این راهنما به موارد زیر نیاز خواهید داشت:
⦁ یک سرور مجازی Debian 10 که با دنبال کردن ستاپ سرور مجازی اولیه با Debian 10 راه اندازی شده ، از جمله کاربر sudo غیر ریشه و فایروال فعال برای اینکه پورت های غیر ضروری را مسدود کند. your-server-ipv4-address به آدرس IP سرور مجازی اشاره دارد، جایی که وب سایت یا دامنه خود را میزبانی می کنید. your-server-ipv6-address به آدرس IPv6 سرور مجازی اشاره دارد جایی که میزبان وب سایت یا دامنه خود هستید.
⦁ نام دامنه کاملاً ثبت شده با DNS که توسط یک ارائه دهنده پشتیبانی شده میزبانی می شود. در این آموزش از your_domain و vpsgol به عنوان ارائه دهنده خدمات استفاده می شود.
⦁ یک کلید API vpsgol (نشانه دسترسی شخصی) با مجوزهای خواندن و نوشتن. برای ایجاد یک چنین کلیدی، به نحوه ایجاد نشانه دسترسی شخصی مراجعه کنید.
پس از آماده شدن ، به عنوان کاربر غیر ریشه وارد سرور مجازی خود شوید.
مرحله 1 – نصب DNSControl
DNSControl در Go نوشته شده است ، بنابراین این مرحله را با نصب Go روی سرور مجازی خود و تنظیم GOPATH خود شروع خواهید کرد.
Go در منابع پیش فرض نرم افزار Debian موجود است و نصب آن با استفاده از ابزارهای مدیریت بسته معمولی امکان پذیر است.
همچنین باید Git را نصب کنید ، زیرا این امر به شما اجازه می دهد تا نرم افزار DNSControl را از منبع آن در GitHub دانلود و نصب کنید.
با به روز کردن ایندکس پکیج محلی شروع کنید تا تغییرات جدید بالادست را منعکس کنید:
$ sudo apt update
سپس پکیج های golang-go و git را نصب کنید:
$sudo apt install golang-go git
پس از تأیید نصب ، apt دو برنامه Go و Git و همچنین کلیه موارد مورد نیاز خود را دانلود و نصب خواهد کرد.
در مرحله بعد ، متغیرهای مورد نیاز محیط مسیر را برای Go پیکربندی خواهید کرد. اگر دوست دارید در این باره اطلاعات بیشتری کسب کنید ، می توانید این آموزش آشنایی با GOPATH را بخوانید. با ویرایش فایل ~/.profile شروع کنید:
⦁ $ nano ~/.profile
خطوط زیر را به انتهای فایل خود اضافه کنید:
~/.profile
…
export GOPATH=”$HOME/go”
export PATH=”$PATH:$GOPATH/bin”
پس از افزودن این خطوط به پایین فایل ، آن را ذخیره کرده و ببندید. سپس پروفایل خود را با ورود به سیستم و برگشت مجدد یا سورس دهی فایل دوباره بارگیری کنید:
⦁ $ source ~/.profile
اکنون Go را نصب کرده و پیکربندی کرده اید ، می توانید DNSControl را نصب کنید.
از دستور go get می توان برای گرفتن کپی از کد ، کامپایل آن به صورت خودکار و نصب آن در فهرست Go استفاده کرد:
⦁ $ go get github.com/StackExchange/dnscontrol
پس از اتمام این کار ، می توانید نسخه نصب شده را بررسی کنید تا مطمئن شوید که همه چیز کار می کند:
⦁ $ dnscontrol version
خروجی شما شبیه به زیر خواهد بود:
Output
dnscontrol 2.9-dev
اگر یک خطای dnscontrol: command not found مشاهده کردید ، راه اندازی مسیر Go خود را دو بار بررسی کنید.
اکنون که DNSControl را نصب کرده اید ، می توانید یک دایرکتوری پیکربندی ایجاد کرده و DNSControl را به ارائه دهنده DNS خود متصل کنید تا اجازه دهید تغییراتی در فایل های DNS شما ایجاد کند.
مرحله 2 – پیکربندی DNSControl
در این مرحله ، دایرکتوری های تنظیمات لازم را برای DNSControl ایجاد خواهید کرد و آن را به ارائه دهنده DNS خود وصل کنید تا بتواند شروع به ایجاد تغییرات زنده در سوابق DNS کند.
ابتدا یک دایرکتوری جدید ایجاد کنید که در آن بتوانید پیکربندی DNSControl خود را ذخیره کنید و سپس به داخل آن بروید:
⦁ $ mkdir ~/dnscontrol
⦁ $ cd ~/dnscontrol
توجه: این آموزش در مورد تنظیم اولیه DNSControl است. اما برای استفاده تولیدی، توصیه می شود پیکربندی DNSControl را در سیستم کنترل نسخه (VCS) مانند Git ذخیره کنید. از مزایای این امر می توان به کنترل کامل نسخه ، ادغام با CI / CD برای آزمایش ، گسترش چرخشی یکپارچه و غیره اشاره کرد.
اگر قصد دارید از DNSControl برای نوشتن فایل های بخش BIND استفاده کنید ، باید دیرکتوری zones را نیز ایجاد کنید:
⦁ $ mkdir ~/dnscontrol/zones
فایل های بخش BIND یک روش استاندارد و خام برای ذخیره بخش ها/ فایل های DNS با فرمت متنی ساده است. آنها در ابتدا برای نرم افزار سرور مجازی BIND DNS مورد استفاده قرار گرفتند ، اما اکنون به عنوان روش استاندارد برای ذخیره سازی بخش های DNS مورد استفاده قرار میگیرند. اگر می خواهید آنها را به یک سرور مجازی DNS سفارشی یا میزبان سرخود یا برای اهداف حسابرسی وارد کنید ، فایل های بخش BIND تولید شده توسط DNSControl مفید هستند.
با این حال ، اگر فقط می خواهید از DNSControl برای ایجاد تغییرات DNS به یک ارائه دهنده مدیریت شده استفاده کنید ، دیرکتوری zones مورد نیاز نخواهد بود.
در مرحله بعد ، باید فایل creds.json را پیکربندی کنید ، این همان چیزی است که به DNSControl اجازه می دهد تا به ارائه دهنده DNS خود صدقیت دهید و تغییراتی ایجاد کند. فرمت creds.json بسته به ارائه دهنده DNS مورد استفاده شما کمی متفاوت است. لطفاً به لیست ارائه دهندگان خدمات در اسناد رسمی DNSControl مراجعه کنید تا پیکربندی ارائه دهنده خود را پیدا کنید.
فایل creds.json را در دیرکتوری ~ / dnscontrol ایجاد کنید:
⦁ $ cd ~/dnscontrol
⦁ $ nano creds.json
پیکربندی نمونه creds.json را برای ارائه دهنده DNS خود به فایل اضافه کنید. اگر از vpsgol به عنوان ارائه دهنده DNS خود استفاده می کنید ، می توانید موارد زیر را استفاده کنید:
~/dnscontrol/creds.json
{
“vpsgol“: {
“token”: “your-vpsgol-oauth-token”
}
}
این فایل به DNSControl میگوید که شما میخواهید به کدام ارائه دهندگان DNS متصل شود.
باید برای ارائه دهنده DNS نوعی تأیید اعتبار را ارائه دهید. این معمولاً یک کلید API یا نشان OAuth است ، اما برخی از ارائه دهندگان به اطلاعات اضافی نیاز دارند ، همانطور که در لیست ارائه دهندگان خدمات در اسناد DNSControl ثبت شده است.
هشدار: این نشانه به حساب ارائه دهنده DNS شما دسترسی می یابد ، بنابراین باید آن را مانند رمز عبور خود محافظت کنید. همچنین ، اطمینان حاصل کنید که اگر از سیستم کنترل نسخه استفاده می کنید ، فایلی که حاوی نشانه است ، حذف نشده باشد (مثلاً با استفاده از .gitignore) یا به طریقی رمزگذاری شود.
اگر از vpsgol به عنوان ارائه دهنده DNS خود استفاده می کنید ، می توانید از علائم مورد نیاز OAuth در تنظیمات حساب vpsgol خود که به عنوان بخشی از پیش نیازها تولید کرده اید استفاده کنید.
اگر چندین ارائه دهنده DNS مختلف دارید- مثلاً برای نام های دامنه متعدد ، یا بخش های DNS تفویض شده- می توانید همه اینها را در همان فایل creds.json تعریف کنید.
شما دایرکتوری های پیکربندی اولیه DNSControl را تنظیم کرده اید و creds.json را پیکربندی کرده اید تا به DNSControl اجازه دهید تا ارائه دهنده DNS خود را تأیید کنید و تغییرات ایجاد نمایید. در مرحله بعدی پیکربندی را برای بخش های DNS خود ایجاد خواهید کرد.
مرحله 3 – ایجاد یک فایل پیکربندی DNS
در این مرحله ، یک فایل پیکربندی اولیه DNS ایجاد خواهید کرد ، که شامل سوابق DNS برای نام دامنه یا بخش DNS تفویض شده شما خواهد بود.
dnsconfig.js فایل اصلی پیکربندی DNS برای DNSControl است. در این فایل ، بخش های DNS و سوابق مربوط به آنها با استفاده ازJavaScript تعریف شده است. که به DSL یا Domain Specific Language معروف است. صفحه JavaScript DSL در مطالب DNSControl جزئیات بیشتری را ارائه می دهد.
برای شروع ، فایل پیکربندی DNS را در فهرست ~ / dnscontrol ایجاد کنید:
⦁ $ cd ~/dnscontrol
⦁ $ nano dnsconfig.js
سپس پیکربندی نمونه زیر را به فایل اضافه کنید:
~ / dnscontrol / dnsconfig. ~/dnscontrol/dnsconfig.js
// Providers:
var REG_NONE = NewRegistrar(‘none’, ‘NONE’);
var DNS_vpsgol = NewDnsProvider(‘vpsgol‘, ‘vpsgol‘);
// Domains:
D(‘your_domain’, REG_NONE, DnsProvider(DNS_vpsgol),
A(‘@’, ‘your-server-ipv4-address’)
);
این فایل نمونه نام دامنه یا بخش DNS را در یک ارائه دهنده خاص تعریف می کند ، که در این حالت your_domain به میزبانی vpsgol است. یک سابقه A نیز برای ریشه بخش (@)تعریف شده است ، که به آدرس IPv4 سرور مجازی که میزبان دامنه / وب سایت شما هستند اشاره دارد.
سه کارکرد اصلی وجود دارد که یک فایل پیکربندی اساسی DNSControl را تشکیل می دهند:
⦁ NewRegistrar(name, type, metadata) : ثبت دامنه را برای نام دامنه شما تعیین می کنید. DNSControl می تواند از این روش برای ایجاد تغییرات مورد نیاز مانند تغییر نام سرورهای معتبر استفاده کند. اگر فقط می خواهید از DNSControl برای مدیریت بخش های DNS خود استفاده کنید ، این حالت معمولاً به عنوان NONE باقی می ماند.
⦁ NewDnsProvider(name, type, metadata) : ارائه دهنده خدمات DNS را برای نام دامنه یا بخش واگذار شده تعریف می کند. اینجاست که DNSControl تغییرات DNS را ایجاد می کند.
⦁ D(name, registrar, modifiers) : یک نام دامنه یا بخش DNS تفویض شده برای مدیریت DNSControl ، و همچنین سوابق DNS موجود در بخش تعریف میکند.
شما باید با استفاده از لیست ارائه دهندگان خدمات در مطالب DNSControl ، NewRegistrar () ، NewDnsProvider () و D () را پیکربندی کنید.
اگر از vpsgol به عنوان ارائه دهنده DNS خود استفاده می کنید ، و فقط نیاز دارید بتوانید DNS را تغییر دهید (به جای نام سرورهای معتبر) ، نمونه موجود در بلوک کد قبلی نیز صحیح است.
پس از تکمیل ، فایل را ذخیره کنید و ببندید.
در این مرحله ، یک فایل پیکربندی DNS را برای DNSControl ، با ارائه دهندگان مربوطه تعریف شده، تنظیم می کنید. در مرحله بعد ، فایل را با برخی از سوابق مفید DNS پر می کنید.
مرحله 4 – پر کردن فایل پیکربندی DNS
در مرحله بعد ، می توانید با استفاده از نحو DNSControl ، فایل پیکربندی DNS را با سوابق مفید DNS برای وب سایت یا خدمات خود پر کنید.
بر خلاف فایل های بخش BIND قدیمی ، که در آن فایل های DNS با فرمت خام و خط به خط نوشته می شوند ، سوابق DNS درون DNSControl به عنوان یک پارامتر تابع (اصلاح کننده دامنه) به عملکرد D () تعریف می شوند ، که مختصراً در مرحله 3 نشان داده شده است.
یک اصلاح کننده دامنه برای هر یک از انواع استاندارد رکورد DNS ، از جمله A ، AAAA ، MX ، TXT ، NS ، CAA و غیره وجود دارد. لیست کاملی از انواع رکورد موجود در بخش Domain Modifiers مطالب DNSControl موجود است.
اصلاح کننده های مربوط به سوابق جداگانه نیز در دسترس هستند (اصلاح کننده های سابقه). در حال حاضر اینها در درجه اول برای تنظیم TTL (زمان زندگی) سوابق فردی استفاده می شود. لیست کاملی از اصلاح کننده های ضبط موجود در بخش Record Modifiers در اسناد DNSControl موجود است. اصلاح کننده های ثبت اختیاری هستند و در اکثر موارد استفاده اصلی می توان آنها را کنار گذاشت.
دستور تنظیم سوابق DNS برای هر نوع رکورد کمی متفاوت است. در زیر چند نمونه از رایج ترین انواع رکورد وجود دارد:
رکوردهای A :
هدف: برای اشاره به آدرس IPv4.
دستور: A(‘name’, ‘address’, optional record modifiers)
مثال: A(‘@’, ‘your-server-ipv4-address’, TTL(30))
رکوردهای AAAA :
هدف: برای اشاره به آدرس IPv6.
دستور: AAAA(‘name’, ‘address’, optional record modifiers)
مثال: AAAA(‘@’, ‘your-server-ipv6-address’) (اصلاح کننده رکورد از کار افتاده ، بنابراین TTL پیش فرض استفاده خواهد شد)
رکوردهای CNAME :
هدف: برای تبدیل دامنه / زیر دامنه شما به عنوان یک نام مستعار دیگر.
دستور: CNAME(‘name’, ‘target’, optional record modifiers)
مثال: CNAME(‘subdomain1’, ‘example.org.’) (توجه داشته باشید که اگر نقطه هایی در مقدار وجود داشته باشد باید یک دنباله . درج شود)
رکوردهای MX :
هدف: برای هدایت ایمیل به سرورها و آدرس های خاص.
دستور: MX(‘name’, ‘priority’, ‘target’, optional record modifiers)
مثال: MX(‘@’, 10, ‘mail.example.net’) توجه داشته باشید که اگر نقطه هایی در مقدار وجود داشته باشد باید یک دنباله . درج شود)
رکوردهای TXT :
هدف: برای افزودن متن ساده دلخواه ، اغلب برای تنظیمات بدون نوع رکورد خاص خود استفاده می شوند.
دستور: TXT(‘name’, ‘content’, optional record modifiers)
مثال: TXT(‘@’, ‘This is a TXT record.’)
رکوردهای CAA :
هدف: محدود کردن و گزارش در مورد مجوزها(CA) که می توانند گواهینامه TLS را برای دامنه / زیر دامنه شما صادر کنند.
دستور: CAA(‘name’, ‘tag’, ‘value’, optional record modifiers)
مثال: CAA(‘@’, ‘issue’, ‘letsencrypt.org’)
برای شروع اضافه کردن رکوردهای DNS برای دامنه یا بخش DNS تفویض شده ، پیکربندی DNS خود را ویرایش کنید:
⦁ $ nano dnsconfig.js
در مرحله بعد ، می توانید پر کردن پارامترهای مربوط به عملکرد D () موجود را با استفاده از دستور گفته شده در لیست قبلی ، و همچنین بخش Domain Modifiers از مطالب DNSControl شروع کنید. کاما (،) باید بین هر رکوردی استفاده شود.
برای ارجاع ، بلوک کد در اینجا حاوی یک پیکربندی کامل نمونه برای یک تنظیم DNS ساده اولیه است:
~/dnscontrol/dnsconfig.js
…
D(‘your_domain’, REG_NONE, DnsProvider(DNS_vpsgol),
A(‘@’, ‘your-server-ipv4-address’),
A(‘www’, ‘your-server-ipv4-address’),
A(‘mail’, ‘your-server-ipv4-address’),
AAAA(‘@’, ‘your-server-ipv6-address’),
AAAA(‘www’, ‘your-server-ipv6-address’),
AAAA(‘mail’, ‘your-server-ipv6-address’),
MX(‘@’, 10, ‘mail.your_domain.’),
TXT(‘@’, ‘v=spf1 -all’),
TXT(‘_dmarc’, ‘v=DMARC1; p=reject; rua=mailto:abuse@your_domain; aspf=s; adkim=s;’)
);
پس از تکمیل تنظیمات اولیه DNS ، فایل را ذخیره کنید و ببندید.
در این مرحله فایل پیکربندی اولیه DNS را تنظیم می کنید که شامل سوابق DNS شماست. در مرحله بعد ، پیکربندی را تست کرده و آن را مستقر می کنید.
مرحله 5 – تست و استفاده از پیکربندی DNS
در این مرحله ، شما یک بررسی دستور محلی را بر روی پیکربندی DNS خود اجرا کرده و سپس تغییرات را در سرور مجازی / ارائه دهنده زنده DNS مستقر می کنید.
در مرحله اول ، به فهرست dnscontrol خود بروید:
⦁ $ cd ~/dnscontrol
در مرحله بعدی ، از عملکرد پیش نمایش DNSControl استفاده کنید تا دستور فایل خود را بررسی کنید و تغییرات را ایجاد کنید (بدون اینکه آنها را در واقع ایجاد کنید)
⦁ $ dnscontrol preview
اگر دستور فایل پیکربندی DNS شما صحیح باشد ، DNSControl مروری بر تغییراتی که ایجاد می کند ، ارائه می دهد. که باید شبیه زیر باشد:
Output
******************** Domain: your_domain
—– Getting nameservers from: vpsgol
—– DNS Provider: vpsgol…8 corrections
#1: CREATE A your_domain your-server-ipv4-address ttl=300
#2: CREATE A www.your_domain your-server-ipv4-address ttl=300
#3: CREATE A mail.your_domain your-server-ipv4-address ttl=300
#4: CREATE AAAA your_domain your-server-ipv6-address ttl=300
#5: CREATE TXT _dmarc.your_domain “v=DMARC1; p=reject; rua=mailto:abuse@your_domain; aspf=s; adkim=s;” ttl=300
#6: CREATE AAAA www.your_domain your-server-ipv6-address ttl=300
#7: CREATE AAAA mail.your_domain your-server-ipv6-address ttl=300
#8: CREATE MX your_domain 10 mail.your_domain. ttl=300
—– Registrar: none…0 corrections
Done. 8 corrections.
اگر هشدار خطایی را در خروجی خود مشاهده می کنید ، DNSControl جزئیاتی راجع به اینکه چه خطایی و در کجای فایل شما قرار دارد ارائه میدهد.
هشدار: دستور بعدی تغییراتی را در سوابق DNS شما و احتمالاً سایر تنظیمات ایجاد می کند. لطفاً اطمینان حاصل کنید که برای این کار آمادگی دارید ، از جمله گرفتن نسخه پشتیبان از پیکربندی DNS موجود خود ، و همچنین اطمینان از داشتن ابزارهایی برای بازگرداندن در صورت لزوم.
سرانجام ، می توانید تغییرات را در ارائه دهنده DNS زنده خود ایجاد کنید:
⦁ $ dnscontrol push
خروجی مشابه با زیر را مشاهده خواهید کرد:
Output
******************** Domain: your_domain
—– Getting nameservers from: vpsgol
—– DNS Provider: vpsgol…8 corrections
#1: CREATE TXT _dmarc.your_domain “v=DMARC1; p=reject; rua=mailto:abuse@your_domain; aspf=s; adkim=s;” ttl=300
SUCCESS!
#2: CREATE A your_domain your-server-ipv4-address ttl=300
SUCCESS!
#3: CREATE AAAA your_domain your-server-ipv6-address ttl=300
SUCCESS!
#4: CREATE AAAA www.your_domain your-server-ipv6-address ttl=300
SUCCESS!
#5: CREATE AAAA mail.your_domain your-server-ipv6-address ttl=300
SUCCESS!
#6: CREATE A www.your_domain your-server-ipv4-address ttl=300
SUCCESS!
#7: CREATE A mail.your_domain your-server-ipv4-address ttl=300
SUCCESS!
#8: CREATE MX your_domain 10 mail.your_domain. ttl=300
SUCCESS!
—– Registrar: none…0 corrections
Done. 8 corrections.
حال اگر تنظیمات DNS مربوط به دامنه خود را در کنترل پنل vpsgol بررسی کنید ، تغییرات را مشاهده خواهید کرد.
همچنین می توانید با اجرای یک جستجوی DNS برای بخش دامنه / تفویض شده خود با استفاده از Dig ، ایجاد رکورد را بررسی کنید.
اگر dig را نصب نکردید ، باید بسته dnsutils را نصب کنید:
⦁ $ sudo apt install dnsutils
پس از نصب dig ، می توانید از آن برای جستجوی DNS برای دامنه خود استفاده کنید. خواهید دید که سوابق به همین ترتیب به روز شده اند:
⦁ $ dig +short your_domain
خروجی را مشاهده خواهید کرد که آدرس IP و سابقه DNS مربوطه را از بخش شما که با استفاده از DNSControl مستقر شده است نشان میدهد. سوابق DNS می تواند مدتی طول بکشد تا گسترش یابد ، بنابراین ممکن است لازم باشد که صبر کنید و این دستور را دوباره اجرا کنید.
در این مرحله آخر ، شما یک بررسی نحو محلی فایل پیکربندی DNS را اجرا کردید ، سپس آن را به ارائه دهنده زنده DNS خود مستقر کردید و آزمایش کردید که تغییرات با موفقیت انجام شده اند.
نتیجه
در این مقاله شما DNSControl را تنظیم کرده و پیکربندی DNS را به یک ارائه دهنده زنده مستقر کرده اید. اکنون می توانید تغییرات پیکربندی DNS خود را در یک محیط امن و آفلاین قبل از گسترش آنها ، مدیریت و آزمایش کنید.
اگر می خواهید این موضوع را بیشتر بررسی کنید ، DNSControl به گونه ای طراحی شده است که در خط CI / CD شما ادغام شود ، به شما این امکان را می دهد تا تست های عمیق را انجام دهید و کنترل بیشتری بر روی به کارگیری برای تولید داشته باشید. همچنین می توانید DNSControl را در فرآیندهای ساخت و استقرار زیرساخت خود ادغام کنید ، که به شما امکان می دهد سرورها را مستقر کرده و آنها را به طور کامل به DNS اضافه کنید.
اگر می خواهید با DNSControl بیشتر پیش بروید ، مقالات vpsgol را در ادامه ببینید که مراحل بعدی جالب دیگری را برای کمک به ادغام DNSControl در مدیریت تغییر و گردش کار شما در زمینه استقرار زیرساخت ها ارائه می دهد:
⦁ مقدمه ای برای ادغام مداوم ، تحویل و استقرار
⦁ مقایسه ابزارهای CI / CD: Jenkins ، GitLab CI ، Buildbot ،Drone و Concourse
پاسخ ها