Siapkan Django di Debian 8

Tutorial ini menerangkan cara menyiapkan Django di Debian 8 (jessie). Saya akan menunjukkan cara menggunakan kedua Python 2 dan 3 serta Nginx dan PostgreSQL.

Semua yang dilakukan dalam tutorial ini dilakukan sebagai root.

Pasang Pakej

Untuk memulakan, kita perlu memasang beberapa pakej.

Untuk Python 2:

apt-get install python-pip python-dev virtualenv nginx postgresql postgresql-contrib libpq-dev sudo gcc

Untuk Python 3:

apt-get install python3-pip python3-dev virtualenv nginx postgresql postgresql-contrib libpq-dev sudo gcc

Sediakan Pangkalan Data

Pertama, kami log masuk ke pengguna postgres.

sudo -u postgres -s

Seterusnya, kami membuat pangkalan data baru. Nama pangkalan data boleh menjadi apa sahaja yang anda mahukan ( dbnamedigunakan di sini), tetapi anda mesti konsisten dengan persediaan yang lain.

createdb dbname

Buat pengguna untuk pangkalan data baru. Sekali lagi, ini boleh menjadi apa sahaja yang anda mahukan, tetapi saya pernah menggunakannya dbuser. Ini juga akan meminta anda menetapkan kata laluan.

createuser -P dbuser

Pengguna kini mesti diberi akses ke pangkalan data. Pastikan anda menggunakan nama pangkalan data dan nama pengguna yang betul.

psql
postgres=# GRANT ALL PRIVILEGES ON DATABASE dbname TO dbuser;
postgres=# \q

Keluar ke root.

exit

Dayakan dan mulakan PostgreSQL:

systemctl enable postgresql
systemctl start postgresql

Sediakan Persekitaran Maya

Daripada hanya menggunakan fail python global, kami akan menggunakan persekitaran maya. Kita mulakan dengan membuat direktori untuk menyimpan semuanya.

mkdir -p /opt/project

Kami kini mencipta persekitaran. Ini berbeza untuk pengguna python 2 dan 3.

Untuk Python 2:

virtualenv . -p python

Untuk Python 3:

virtualenv . -p python3

Masukkan persekitaran maya.

source bin/activate

Pasang Django, gunicorn, dan psycopg2.

pip install django
pip install gunicorn
pip install psycopg2

Sekiranya anda memerlukan Django versi tertentu, ubah perintah pemasangan agar sesuai dengan format di bawah. Contoh ini memasang 1.7.8.

pip install django==1.7.8

Kita sekarang sudah selesai dengan itu, jadi kita boleh menyahaktifkan persekitaran maya kita.

deactivate

Muat Naik dan Konfigurasi Projek

Inilah masanya kami memuat naik projek kami ke pelayan, dan kami memastikan bahawa semua tetapannya betul. Anda boleh menggunakan kaedah apa pun untuk melakukan ini. FTP, SFTP, git, dan lain-lain adalah semua cara untuk melakukan ini. Sekiranya anda menggunakan git untuk mengesan kod projek, anda boleh mengklonnya ke pelayan. Perintah git ini akan mengklon projek ke pelayan dan memasukkannya ke dalam /opt/project/project/.

git clone http://example.com:project.git

Buka settings.pyfail di mana-mana penyemak imbas teks.

Perkara pertama yang pertama, mod debug perlu dimatikan. Cari DEBUG = Truegaris dan tukar Trueke False. Selepas ini, pastikan bahawa anda telah ALLOWED_HOSTSmenetapkan beberapa nilai.

ALLOWED_HOSTS = ['*']

Cari DATABASESkamus, dan kelihatan seperti ini:

DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.postgresql_psycopg2',
        'NAME': 'dbname',
        'USER': 'dbuser',
        'PASSWORD': 'password you set',
        'HOST': 'localhost',
        'PORT': ''
    }
}

Langkah terakhir di sini adalah menetapkan punca statik. Letakkan perkara berikut terus di bawah STATIC_URL.

STATIC_ROOT = '/opt/project/static/'

Keluar dari fail dan buat direktori root statik.

mkdir -p /opt/project/static

Sekarang pindahkan pangkalan data, buat pengguna super, dan kumpulkan semua fail statik.

cd /opt/project/project
../bin/python manage.py makemigrations
../bin/python manage.py migrate
../bin/python manage.py createsuperuser
../bin/python manage.py collectstatic

Konfigurasikan Gunicorn

Gunicorn adalah pelayan WSGI yang akan kita gunakan. Oleh kerana Debian 8 dilengkapi dengan systemd, kami akan memanfaatkan systemd untuk memulakan dan menghentikan pelayan.

Buat fail /etc/systemd/system/django.servicedan tambahkan kandungan berikut.

[Unit]
Description=Django with Gunicorn
After=network.target

[Service]
User=root
Group=root
WorkingDirectory=/opt/project
ExecStart=/opt/project/bin/gunicorn --workers 3 --bind 127.0.0.1:8000 project.wsgi

[Install]
WantedBy=multi-user.target

Aktifkan dan mulakan perkhidmatan yang telah kami buat.

systemctl enable django.service
systemctl start django.service

Nginx

Anda mungkin menyedari bahawa kami mengikat pelayan gunicorn 127.0.0.1. Sekarang kita memerlukan kaedah untuk mengaksesnya dari luar pelayan. Di sinilah Nginx masuk.

Buat fail baru /etc/nginx/sites-available/djangodan tambahkan yang berikut. The domain.example.combahagian boleh ditetapkan untuk apa sahaja yang anda perlukan untuk menjadi.

server {
        listen 80;
        server_name domain.example.com;
        access_log off;

        location /static/ {
                alias /opt/project/static/;
        }

        location / {
                proxy_pass http://127.0.0.1:8000;
        }
}

Buat pautan simbolik untuk mengaktifkan laman web ini.

ln -s /etc/nginx/sites-available/django /etc/nginx/sites-enabled/django

Aktifkan dan mulakan Nginx.

systemctl enable nginx
systemctl start nginx

Kesimpulannya

Tahniah, anda kini mempunyai laman Django yang berfungsi di Debian VPS anda.



Leave a Comment

Sediakan NFS Share di Debian

Sediakan NFS Share di Debian

NFS adalah sistem fail berasaskan rangkaian yang membolehkan komputer mengakses fail di seluruh rangkaian komputer. Panduan ini menerangkan bagaimana anda boleh mendedahkan folder di atas NF

Menggunakan Paparan MySQL pada Debian 7

Menggunakan Paparan MySQL pada Debian 7

Pengenalan MySQL mempunyai ciri hebat yang dikenali sebagai pandangan. Paparan adalah pertanyaan yang disimpan. Anggap mereka sebagai alias untuk pertanyaan yang panjang. Dalam panduan ini,

Menyiapkan Chroot di Debian

Menyiapkan Chroot di Debian

Artikel ini akan mengajar anda cara menyediakan penjara chroot di Debian. Saya menganggap bahawa anda menggunakan Debian 7.x. Sekiranya anda menjalankan Debian 6 atau 8, ini mungkin berfungsi,

Cara Memasang PiVPN pada Debian

Cara Memasang PiVPN pada Debian

Pengenalan Cara mudah untuk menyediakan pelayan VPN di Debian adalah dengan PiVPN. PiVPN adalah pemasang dan pembungkus untuk OpenVPN. Ini membuat perintah mudah untuk anda

Cara Pasang Edisi Komuniti GitLab (CE) 11.x pada Debian 9

Cara Pasang Edisi Komuniti GitLab (CE) 11.x pada Debian 9

Menggunakan Sistem Berbeza? Sejak GitHub diambil alih oleh Microsoft, sebilangan besar pembangun telah merancang untuk memindahkan repositori kod mereka sendiri dari github.co

Pasang PBX dalam Flash 5 pada Debian 8

Pasang PBX dalam Flash 5 pada Debian 8

PBX In A Flash 5 (PIAF5) adalah sistem operasi berasaskan Debian 8 yang menjadikan Vultr VPS anda menjadi PBX lengkap. Ia mempunyai ciri-ciri berikut, dan banyak lagi.

Cara Membangun Brotli Dari Sumber pada Debian 9

Cara Membangun Brotli Dari Sumber pada Debian 9

Menggunakan Sistem Berbeza? Brotli adalah kaedah pemampatan baru dengan nisbah mampatan yang lebih baik daripada Gzip. Kod sumbernya dihoskan secara umum di Github. Thi

Pasang Lynis di Debian 8

Pasang Lynis di Debian 8

Pengenalan Lynis adalah alat audit sistem sumber terbuka yang percuma yang digunakan oleh banyak pentadbir sistem untuk mengesahkan integriti dan mengeraskan sistem mereka. Saya

Cara Memasang Neos CMS pada Debian 9

Cara Memasang Neos CMS pada Debian 9

Menggunakan Sistem Berbeza? Neos adalah Platform Aplikasi Kandungan dengan CMS dan kerangka aplikasi di terasnya. Panduan ini akan menunjukkan cara pemasangan

Cara Memasang InvoicePlane pada Debian 9

Cara Memasang InvoicePlane pada Debian 9

Menggunakan Sistem Berbeza? InvoicePlane adalah aplikasi invois sumber bebas dan terbuka. Kod sumbernya boleh didapati di repositori Github ini. Panduan ini

Cara Memasang BookStack pada Debian 9

Cara Memasang BookStack pada Debian 9

Menggunakan Sistem Berbeza? BookStack adalah platform yang mudah dihoskan sendiri, mudah digunakan untuk mengatur dan menyimpan maklumat. BookStack adalah percuma dan terbuka

Cara Pasang Matomo Analytics pada Debian 9

Cara Pasang Matomo Analytics pada Debian 9

Menggunakan Sistem Berbeza? Matomo (dahulunya Piwik) adalah platform analitik sumber terbuka, alternatif terbuka kepada Google Analytics. Sumber Matomo dihoskan o

Cara Memasang X-Cart 5 pada Debian 10

Cara Memasang X-Cart 5 pada Debian 10

Menggunakan Sistem Berbeza? X-Cart adalah platform eCommerce sumber terbuka yang sangat fleksibel dengan banyak ciri dan integrasi. Kod sumber X-Cart adalah hoste

Pantau Status Pelayan Debian dengan Munin

Pantau Status Pelayan Debian dengan Munin

Munin adalah alat pemantauan untuk meninjau proses dan sumber di mesin anda dan menyampaikan maklumat dalam grafik melalui antara muka web. Gunakan ikutan

Cara Memasang Pembaca RSS Tiny Tiny pada Debian 9 LAMP VPS

Cara Memasang Pembaca RSS Tiny Tiny pada Debian 9 LAMP VPS

Menggunakan Sistem Berbeza? Tiny Tiny RSS Reader adalah pembaca berita dan agregator suapan berita (RSS / Atom) berasaskan laman web bebas dan terbuka sumber bebas dan terbuka, yang direka untuk semua

Tambahkan Julat Alamat IP ke Pelayan Anda (CentOS / Ubuntu / Debian)

Tambahkan Julat Alamat IP ke Pelayan Anda (CentOS / Ubuntu / Debian)

Pengenalan Dalam tutorial ini, kita akan membahas proses penambahan keseluruhan rangkaian / subnet IP ke pelayan Linux yang menjalankan CentOS, Debian, atau Ubuntu. Proses

Menyiapkan Counter Strike: Sumber pada Debian

Menyiapkan Counter Strike: Sumber pada Debian

Dalam panduan ini, kami akan menyiapkan Counter Strike: Server permainan sumber di Debian 7. Perintah ini diuji pada Debian 7 tetapi mereka juga harus berfungsi

Cara Memasang Revolusi MODX pada VPS Debian 9 LAMP

Cara Memasang Revolusi MODX pada VPS Debian 9 LAMP

Menggunakan Sistem Berbeza? MODX Revolution adalah Sistem Pengurusan Kandungan (CMS) bertaraf perusahaan yang pantas, fleksibel, berskala, bebas dan terbuka, bertulis i

Cara Memasang Dolibarr pada Debian 9

Cara Memasang Dolibarr pada Debian 9

Menggunakan Sistem Berbeza? Dolibarr adalah perancangan sumber perusahaan sumber terbuka (ERP) dan pengurusan hubungan pelanggan (CRM) untuk perniagaan. Dolibarr

Pasang Mailcow pada Debian 7

Pasang Mailcow pada Debian 7

Pengenalan Mailcow adalah suite mailserver ringan berdasarkan pelbagai pakej, seperti DoveCot, Postfix dan banyak pakej sumber terbuka yang lain. Mailcow dll

Pandangan tentang 26 Teknik Analisis Data Besar: Bahagian 1

Pandangan tentang 26 Teknik Analisis Data Besar: Bahagian 1

Pandangan tentang 26 Teknik Analisis Data Besar: Bahagian 1

6 Perkara Yang Sangat Menggila Tentang Nintendo Switch

6 Perkara Yang Sangat Menggila Tentang Nintendo Switch

Ramai daripada anda tahu Switch akan keluar pada Mac 2017 dan ciri baharunya. Bagi yang tidak tahu, kami telah menyediakan senarai ciri yang menjadikan 'Tukar' sebagai 'gajet yang mesti ada'.

Janji Teknologi Yang Masih Tidak Ditepati

Janji Teknologi Yang Masih Tidak Ditepati

Adakah anda menunggu gergasi teknologi memenuhi janji mereka? semak apa yang masih belum dihantar.

Fungsi Lapisan Seni Bina Rujukan Data Besar

Fungsi Lapisan Seni Bina Rujukan Data Besar

Baca blog untuk mengetahui lapisan berbeza dalam Seni Bina Data Besar dan fungsinya dengan cara yang paling mudah.

Bagaimana AI Boleh Mengambil Automasi Proses ke Tahap Seterusnya?

Bagaimana AI Boleh Mengambil Automasi Proses ke Tahap Seterusnya?

Baca ini untuk mengetahui cara Kecerdasan Buatan semakin popular di kalangan syarikat berskala kecil dan cara ia meningkatkan kebarangkalian untuk menjadikan mereka berkembang dan memberikan pesaing mereka kelebihan.

CAPTCHA: Berapa Lama Ia Boleh Kekal Sebagai Teknik Berdaya maju Untuk Perbezaan Manusia-AI?

CAPTCHA: Berapa Lama Ia Boleh Kekal Sebagai Teknik Berdaya maju Untuk Perbezaan Manusia-AI?

CAPTCHA telah menjadi agak sukar untuk diselesaikan oleh pengguna dalam beberapa tahun kebelakangan ini. Adakah ia dapat kekal berkesan dalam pengesanan spam dan bot pada masa hadapan?

Keunikan Teknologi: Masa Depan Tamadun Manusia yang Jauh?

Keunikan Teknologi: Masa Depan Tamadun Manusia yang Jauh?

Apabila Sains Berkembang pada kadar yang pantas, mengambil alih banyak usaha kita, risiko untuk menundukkan diri kita kepada Ketunggalan yang tidak dapat dijelaskan juga meningkat. Baca, apakah makna ketunggalan bagi kita.

Teleperubatan Dan Penjagaan Kesihatan Jauh: Masa Depan Ada Di Sini

Teleperubatan Dan Penjagaan Kesihatan Jauh: Masa Depan Ada Di Sini

Apakah teleperubatan, penjagaan kesihatan jauh dan impaknya kepada generasi akan datang? Adakah ia tempat yang baik atau tidak dalam situasi pandemik? Baca blog untuk mencari paparan!

Pernahkah Anda Terfikir Bagaimana Penggodam Mendapatkan Wang?

Pernahkah Anda Terfikir Bagaimana Penggodam Mendapatkan Wang?

Anda mungkin pernah mendengar bahawa penggodam memperoleh banyak wang, tetapi pernahkah anda terfikir bagaimana mereka memperoleh wang seperti itu? Mari berbincang.

Kemas Kini Tambahan macOS Catalina 10.15.4 Menyebabkan Lebih Banyak Isu Daripada Penyelesaian

Kemas Kini Tambahan macOS Catalina 10.15.4 Menyebabkan Lebih Banyak Isu Daripada Penyelesaian

Baru-baru ini Apple mengeluarkan macOS Catalina 10.15.4 kemas kini tambahan untuk menyelesaikan masalah tetapi nampaknya kemas kini itu menyebabkan lebih banyak masalah yang membawa kepada pemusnahan mesin mac. Baca artikel ini untuk mengetahui lebih lanjut