Introduction: This guide will walk you through setting up a Django server on your Virtual Private Server (VPS) using TurnKey Linux. We'll cover accessing your VPS via SSH, completing the initial TurnKey Linux configuration, pointing your domain to your server's IP address, and deploying your Django applications.
Step 1: Access Your VPS via SSH
-
Obtain Your VPS Details:
- IP Address: Provided in your welcome email.
- Root Password: Provided in your welcome email.
- SSH Port: Default is 22 unless specified otherwise.
-
Install an SSH Client:
- Windows: Download PuTTY.
- macOS/Linux: Use the built-in Terminal application.
-
Connect to Your VPS:
- Open your SSH client.
- For Windows (PuTTY):
- Enter your VPS IP in the "Host Name" field.
- Ensure the port is set to 22.
- Click "Open."
- For macOS/Linux Terminal:
<Your-VPS-IP>
with your server's IP address.
Replace
-
Authenticate:
- When prompted, enter the root password.
- Upon successful login, you'll have terminal access to your VPS.
Step 2: Complete TurnKey Linux First Boot Configuration
Upon first login, TurnKey Linux will guide you through initial setup:
-
Set Root Password:
- You'll be prompted to set a new password for the root user.
-
Configure PostgreSQL Password:
- Set a password for the PostgreSQL
postgres
user.
- Set a password for the PostgreSQL
-
Set Django Admin Credentials:
- Provide a username, password, and email for the Django admin account.
-
Configure Domain and SSL:
- Enter your domain name when prompted.
- Opt to configure a Let's Encrypt SSL certificate for HTTPS support.
Step 3: Point Your Domain to Your VPS
If you have purchased your domain from us, you can configure it directly using our control panel. Otherwise, you will need to log in to your domain registrar's control panel and update the DNS settings to point to your VPS.
Option A: Domain Registered with Us
-
Access Domain Management:
- Log in to your account on our platform.
- Navigate to the "Domain Management" or "DNS Settings" section.
-
Create an A Record:
- Host:
@
(represents the root domain) - Points to: Your VPS IP address
- TTL: Default or 3600 seconds
- Host:
-
Save Changes:
- Apply the new DNS settings.
- Note: DNS changes may take up to 24 hours to propagate.
Option B: Domain Registered Elsewhere
-
Log in to Your Domain Registrar:
- Access the DNS management area.
-
Add an A Record:
- Host:
@
- Points to: Your VPS IP address
- TTL: Default or 3600 seconds
- Host:
-
Save Changes:
- Apply the updated DNS settings.
- Allow time for DNS propagation.
Step 4: Deploy Your Django Application
-
Log in to the Django Admin Interface:
- Navigate to
http://yourdomain.com/admin
orhttps://yourdomain.com/admin
. - Log in using the admin credentials you configured during setup.
- Navigate to
-
Upload Your Application:
- Use
scp
or an SFTP client to upload your Django project to the server.
- Use
-
Configure Your Application:
- Update your
settings.py
to include your domain and configure the database.
- Update your
-
Restart the Server:
- Use
supervisorctl restart all
to restart the Django services.
- Use
Step 5: Management Tools
Additional Resources:
- TurnKey Linux Django Appliance: TurnKey Linux: Django Appliance
- PuTTY SSH Client: PuTTY Download Page
- Let's Encrypt Documentation: Let's Encrypt Official Site
Note:
- DNS changes can take time to propagate globally.
- Ensure your VPS firewall allows HTTP (port 80) and HTTPS (port 443) traffic.
Tips and Troubleshooting
- SSH Connection Issues: Double-check your VPS IP and password.
- DNS Propagation Delay: Use tools like DNS Checker to confirm changes.
- Application Errors: Check logs located in
/var/log/
for debugging issues.