مقالات

[5 Mins Docker] جعبه ابزار آنلاین خود را مستقر کنید – IT-Tools – 51 Security


IT-Tools توسط Corentin Thomasset توسعه داده شده است که ابزارهای عملی مختلفی را در مخزن GitHub گنجانده است که در موارد استفاده مختلف مانند تبدیل کد، تولید کد OTP، تجزیه و تحلیل JWT، ساخت پرس و جوی SQL، تولید کننده رمز عبور و موارد دیگر مفید است. استفاده از طیف گسترده ای از ابزارهای موجود در IT-Tools به طور چشمگیری کارایی گردش کار شما را افزایش می دهد زیرا استفاده از چندین سرویس آنلاین را نفی می کند.

در این مقاله، راهنمای گام به گام نصب و استقرار IT-Tools با Docker را بر روی دستگاه خود ارائه خواهم داد.

ابزارهای فناوری اطلاعات

سایت Github: https://github.com/CorentinTh/it-tools

نویسنده: Corentin Thomasett – https://github.com/CorentinTh

سایت آزمایشی: https://it-tools.tech/

10 دسته و 80+ ابزار

محوطه کشتی

بیایید با Docker Playground برای آزمایش آن شروع کنیم

1 به https://labs.play-with-docker.com/ بروید

2 یک نمونه ایجاد کنید، سپس دستور زیر را برای اجرای docker قرار دهید

کپی: ctrl + ins

گذشته: ctrl + shift + v

docker run -d --name it-tools --restart unless-stopped -p 8080:80 corentinth/it-tools:latest

3 روی پورت 8080 کلیک کنید تا این صفحه برنامه وب در یک تب جدید باز شود

CodeSandbox – داکر

طرح: رایگان

  • راه اندازی 400 اعتبار VM، حداکثر 40 ساعت اعتبار VM در ماه (10 اعتبار در ساعت)
  • 5 جعبه شنی

اجرای Vercel

پروژه (https://github.com/CorentinTh/it-tools) را در مخزن Github خود فورک کنید.

یک پروژه جدید در حساب Vercel خود ایجاد کنید.

دامنه خود را از صفحه تنظیمات پروژه Vercel اضافه کنید:

سپس یک رکورد cname در CloudFlare اضافه کنید که از آن برای مدیریت رکوردهای dns خود استفاده می کنم:

استقرار Docker خود میزبان

1 دستور Docker Run

docker run -d --name it-tools --restart unless-stopped -p 8080:80 corentinth/it-tools:latest

2 Docker در کنار Docker Compose شروع می شود

3 فایل Docker Compose

نسخه: ‘3.9’

خدمات:

it-tools:

image: ‘corentinth/it-tools:latest’

پورت ها:

– “8080:80”

راه اندازی مجدد: مگر اینکه متوقف شود

نام ظرف: it-tools

4 داکر ساخت -d

از دامنه خود استفاده کنید

Cloudflare: یک رکورد dns A اضافه کنید تا به NPM خود اشاره کنید

اضافه کردن یک سایت جدید در NPM (Nginx Proxy Manager)

پیش نیازهای نصب Docker خود میزبان

منابع رایگانی که ممکن است برای تکمیل این پروژه داکر نیاز داشته باشید:

خدمات از پیش نصب شده:

  • بارانداز،
    • به روز رسانی مناسب
    • apt install docker.io
    • apt install docker-compose
    • آپدیت apt docker.io
    • mkdir /root/data/docker_data/
  • Docker-Compose (با استفاده از سیستم عامل اوبونتو برای دستورات)
    • Docker-کامپایل کردن
    • دستور اختیاری: از دستور زیر برای پشتیبان گیری از داده های Docker خود استفاده کنید. ممکن است لازم باشد نام پوشه خود را بر اساس پیکربندی docker خود تغییر دهید
      • cp -r /root/data/docker_data/ /root/data/docker_data_backup/
    • pull docker نوشتن
    • docker-compile -d
    • برش تصویر داکر
  • دربان (اختیاری)
    • حجم docker ایجاد portainer_data
    • docker run -d -p 9000:9000 –name portainer – restart always -v /var/run/docker.sock:/var/run/docker.sock -v portainer_data:/data portainer/portiner-ce:latest
  • چند برنامه را نصب کنید: apt نصب wget curl sudo vim git (اختیاری)
  • aapanel با Nginx (اختیاری)
  • مدیر پروکسی Nginx (اختیاری)
  • صفحه نصب (اختیاری)
    • صفحه نصب (بستگی به توزیع لینوکس دارد که از قبل نصب شده باشد یا نه): صفحه نصب yum
    • شروع صفحه: صفحه نمایش یا صفحه نمایش -S
    • جدا کردن از صفحه: “CTRL+A,D” نه “CTRL+A+D”
    • فهرست همه صفحه‌های در حال اجرا: صفحه نمایش -ls
    • دوباره به صفحه وصل کنید: صفحه نمایش -ص یا صفحه -p
    • یک صفحه نمایش خاص را بکشید: صفحه نمایش -X -S ترک
    • همه صفحه ها را بکشید: صفحه نمایش pkill

نظارت بر استفاده، به ویژه برای استفاده از دیسک

Docker و پوشه های مرتبط را حذف کنید

  • توقف داکر # داکر را متوقف کنید اما چیزی را حذف نکنید.
  • داکر rm -f # یک ظرف خاص را حذف کنید اما حجم های نصب شده را حذف نمی کند
  • rm -rf /root/data/docker_data/ # تمام حجم های نقشه برداری شده را حذف کنید

محدود کردن اندازه فایل لاگ:

  • journalctl –vac size=100M
  • آن را به 25 میلیون محدود کنید:

nano /etc/systemd/journald.conf
SystemMaxUse=25M
systemctl systemd-journald.service را مجددا راه اندازی کنید

یا

sudo bash -c 'echo "SystemMaxUse=100M" >> /etc/systemd/journald.conf'
sudo systemctl restart systemd-journald

فعال کردن IPv6 و Limit Log File Size (Ubuntu)

دستور ویژه برای تمام سیاهههای مربوط را پاک می کند و نیازی نیست ظروف را متوقف کنید.

  • sudo sh -c 'truncate -s 0 /var/lib/docker/containers/*/*-json.log'

Add customized self defined IPv6 address segment to enable container’s IPv6 fucntion. And limit log file’s size and numbers in case log file to fill all hard drive’s space. 

cat > /etc/docker/daemon.json EOF
{
    "log-driver": "json-file",
    "log-opts": {
        "max-size": "20m",
        "max-file": "3"
    },
    "ipv6": true,
    "fixed-cidr-v6": "fd00:dead:beef:c0::/80",
    "eixperimental":true,
    "ip6tables":true
}
EOF

اگر اشکالی وجود دارد یا ممکن است قسمت IPv6 در پلتفرم کار نکند، ممکن است بخواهید آن را در لیست تغییر دهید:

cat  /etc/docker/daemon.json
{
  "live-restore": true,
  "storage-driver": "overlay2",
  "log-opts": {
    "max-size": "10m"
  }
}
EOF
سرویس Docker را مجددا راه اندازی کنید:

systemctl restart docker

تعداد محدود لاگ:

cat /etc/logrotate.d/rsyslog
/var/log/syslog
/var/log/mail.info
/var/log/mail.warn
/var/log/mail.err
/var/log/mail.log
/var/log/daemon.log
/var/log/kern.log
/var/log/auth.log
/var/log/user.log
/var/log/lpr.log
/var/log/cron.log
/var/log/debug
/var/log/messages
{
    rotate 4
    weekly
    missingok
    notifempty
    compress
    delaycompress
    sharedscripts
    postrotate
        /usr/lib/rsyslog/rsyslog-rotate
    endscript
}

شما می توانید تغییر دهید 4 به مقدار دیگری مانند 1به طوری که فقط یک فایل ذخیره می شود.

ویدیوها


Source link

نوشته های مشابه

دیدگاهتان را بنویسید

دکمه بازگشت به بالا