سلام حالا می خواهیم برنامۀ خودمان را با گواهینامۀ https امن کنیم. ساده ترین کار برای انجام آن Let’s Encrypt است. قبل از Let’s Encrypt هرگز تنظیمات https به این راحتی نبوده و مهمتر اینکه اینکار کاملاً رایگان است. آن ها راه حلی به نام certbot را ارائه داده اند …
سلام یکی از بهتر سرویس دهنده های ایمیل Mailgun با قابلیت ۱۲ هزار ایمیل رایگان در ماه است. به صورت رایگان ثبت نام کنید. برای اینکار باید آن را با سرویس دهندۀ دامین خود تنظیم کنید که در این آموزش از tamadon.org استفاده شده است. حالا اولین رکورد DNS را …
سلام کار بعدی که قرار است انجام شود؛ تنظیمان Nginx به شکلی است که پاسخگویی و سرویس دهی مربوط به فایل های استاتیک را خود انجام دهد و سایر درخواست ها را به Gunicorn بفرستد. یک فایل پیکربندی با نام boards را درون /etc/nginx/sites-available/ و با محتوای زیر اضافه می …
سلام ابتدا یک فایل گزارش گیری خالی درون فولدر home/boards/logs/ ایجاد می کنیم.
۱ |
touch logs/gunicorn.log |
حالا یک فایل جدید سوپروایزر می سازیم.
۱ |
sudo vim /etc/supervisor/conf.d/boards.conf |
۱ ۲ ۳ ۴ ۵ ۶ ۷ |
[program:boards] command=/home/boards/gunicorn_start user=boards autostart=true autorestart=true redirect_stderr=true stdout_logfile=/home/boards/logs/gunicorn.log |
فایل را ذخیره کرده و فرمان زیر را ایجاد می کنیم.
۱ ۲ |
sudo supervisorctl reread sudo supervisorctl update |
حالا وضعیت را چک می کنیم.
۱ |
sudo supervisorctl status boards |
۱ |
boards RUNNING pid ۳۰۸, uptime ۰:۰۰:۰۷ |
ترجمۀ اختصاصی توسط تمدن مطلب بعدی: …
سلام Gunicorn مسئولیت اجرای کدهای جنگو در پشت یک سرور پروکسی را بر عهده دارد. یک فایل با نام gunicorn_start را درون فولدر home/boards/ ایجاد می کنیم.
۱ ۲ ۳ ۴ ۵ ۶ ۷ ۸ ۹ ۱۰ ۱۱ ۱۲ ۱۳ ۱۴ ۱۵ ۱۶ ۱۷ ۱۸ ۱۹ ۲۰ ۲۱ ۲۲ ۲۳ ۲۴ ۲۵ ۲۶ |
#!/bin/bash NAME="django_boards" DIR=/home/boards/django-beginners-guide USER=boards GROUP=boards WORKERS=۳ BIND=unix:/home/boards/run/gunicorn.sock DJANGO_SETTINGS_MODULE=myproject.settings DJANGO_WSGI_MODULE=myproject.wsgi LOG_LEVEL=error cd $DIR source ../venv/bin/activate export DJANGO_SETTINGS_MODULE=$DJANGO_SETTINGS_MODULE export PYTHONPATH=$DIR:$PYTHONPATH exec ../venv/bin/gunicorn ${DJANGO_WSGI_MODULE}:application \ --name $NAME \ --workers $WORKERS \ --user=$USER \ --group=$GROUP \ --bind=$BIND \ --log-level=$LOG_LEVEL \ --log-file=- |
این اسکریپت برنامه سرور را راه اندازی می کند. ما اطلاعاتی نظیر محل قرارگیری پروژۀ جنگو، کدام برنامه وظیفه راه اندازی سرور …
سلام به کاربر پروژۀ جنگو سوییچ می کنیم.
۱ |
sudo su - boards |
اول چک می کنیم که کجا قرار داریم.
۱ ۲ |
pwd /home/boards |
کد خود را به ریپازیتوری کپی یا clone می کنیم.
۱ |
git clone https://github.com/sibtc/django-beginners-guide.git |
یک Virtual Environment را راه اندازی می کنیم.
۱ |
virtualenv venv -p python3.۶ |
حالا Virtualenv را مقداردهی می کنیم.
۱ |
source venv/bin/activate |
موارد لازم را نصب می …
سلام ابتدا به کاربر Postgres سوییچ می کنیم.
۱ |
sudo su - postgres |
یک حساب کاربری برای دیتابیس می سازیم.
۱ |
createuser u_boards |
یک دیتابیس جدید ساخته و نام کاربری بالا را برای آن تنظیم می کنیم.
۱ |
createdb django_boards --owner u_boards |
یک پسورد قوی برای کاربر انتخاب می کنیم.
۱ |
psql -c "ALTER USER u_boards WITH PASSWORD 'BcAZoYWsJbvE7RMgBPzxOCexPRVAq'" |
حالا از کاربر Postgres خارج می شویم.
۱ |
exit |
ترجمۀ …
ساخت کاربر برای برنامه با دستور زیر کاربر جدید را می سازیم.
۱ |
adduser boards |
من معمولاً نام برنامه را برای نام کاربری انتخاب می کنم. پسورد و سایر اطلاعات اضافی که از شما می خواهد را وارد کنید. حالا نام کاربری را به لیست sudoer ها (حساب های کاربری با دسترسی …
سلام شما ممکن است قصد استفاده از هر نوع VPSای را داشته باشی و این هیچ عیبی ندارد. نکتۀ مهم آن است که تنظیمات را مشابه من انجام دهید. سیستم عامل روی سرور، اوبونتوی ۱۶.۰۴ است. در مرحلۀ اول یک سرور جدید (در دیجیتال اوشن به آن Droplet می گویند.) …
سلام در زیر تصویری از استراتژی کلی ما در این آموزش را می بینی: در این آموزش برای تهیۀ VPS از شرکت معتبر Digital Ocean استفاده شده است. در صورتی که مشکل خرید از دیجیتال اوشن رو دارید می توانید از شرکت tamadon.org تهیه کنید. ضمناً از Nginx به عنوان …