Install WordPress from CLI

At my agency, we do a lot of work with WordPress. If you are also a WordPress developer, you may be in the same situation. When you are creating a new local development site with WordPress, it could take time…more time than you want to spend. If this is the case, try to install it all from CLI. It is easy to do if you are able to SSH into your local or remote server.

View This On YouTube

https://www.youtube.com/watch?v=bVaSOMO7sF4

SSH Into Your Server

This entire tutorial relies on you using SSH and having an already existing server. So, stop and set that up if you have not already done so. Also, keep in mind you can use things like Docker to do this but if you normally do this manually, it may save you some time.

Open your CLI and type the following command (change out the username and server ip address to match your setup.

ssh username@192.168.0.1

Enter your password and create your new virtual host / folder. I use Roverwire Virtualhost Manage Script. It makes it as to create virtual hosts on a Linux server using only SSH. You can view more about it here: https://github.com/RoverWire/virtualhost

If you use Roverwire, you can simply type:

sudo virtualhost create sample.local

Once that is done, we can get WordPress set up.

Download and Extract WordPress

First things first, create a new folder for your website. In this tutorial, I will be using sample.local.

The following commands will install a folder called wordpress in your newly created server folder.

Switch to the folder you created on the server

cd /var/www/samplelocal/

Download Latest Version

sudo wget  http://wordpress.org/latest.tar.gz

Extract WordPress

sudo tar xfz latest.tar.gz

Move Folders

Once you have the WordPress folder, you will need to move it and then remove the extractable file you downloaded previously.

Move WordPress folder to the parent

sudo mv wordpress/* ./

Remove WordPress folder

sudo rmdir ./wordpress/

Remove downloaded file

sudo rm -f latest.tar.gz

Finally, after setting this up, you can move on to setting up the database using the MySQL instructions below. Once the database is set up, you can go to the domain you created above and run the typical WordPress installation.

Setup Database

The username and password combination for your MySQL server should already be set up. You can log in by using the following command:

mysql -p -u mysqlusername

You will then be prompted for the password.

Once you have logged in successfully, you should now see a MySQL prompt instead of the normal SSH prompt. It will look like this:

mysql>

Create Your Database

create database databasename;

Exit MySQL

exit

Lastly, you may need to set up shared or global permissions to your new website. You can do this a few different ways, but I found that a shared user works best:

sudo chown -R shareuser /var/www/samplelocal

or for a global user

sudo chown -R www-data:www-data /var/www/samplelocal

Modify Hosts File

Now your WordPress website is ready to go. To view your new website locally, you will need to modify your hosts file. You can do this using the following instructions:

Windows is typically located at
%SystemRoot%\System32\drivers\etc\hosts

OSX and Unix/Linux is typically located at
/etc/hosts

Add the following to your host file. domainname.fdg should be changed to the virtual host that was created above.

192.168.0.1 sample.local

Open Your Website

Now that you have successfully created your virtual host, installed WordPress, and set up your hosts. You can browse the website URL to finish the installation in the WordPress installer.

Here is a quick video on how to set up WordPress once you get to this step.

https://www.youtube.com/watch?v=VWi2ztBnj2Y

Good luck.

--

--

--

Join me as I discuss programming in a way that can help you get started. Created based on a need I have had. Let’s get started.

Love podcasts or audiobooks? Learn on the go with our new app.

Recommended from Medium

Rust for beginners — Part 6 — String

PROPOSALS AND SNAPSHOT SYSTEM CREATION

Upskilling Test Engineers for Chatbot Projects

5 Reasons your Product needs a Vision

Mlm - My Financial Freedom

Key-Value Pair Database Internals

How DevOps Reduces the Operational IT Skill Gaps

Flutter Basic Widgets

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store
TheDevDrawer

TheDevDrawer

Join me as I discuss programming in a way that can help you get started. Created based on a need I have had. Let’s get started.

More from Medium

How To Install PHP 8.1 on Ubuntu 22.04

How you increase the maximum upload filesize in WordPress within your Apache / PHP configuration

Best Free VS Code Themes 2022🤩

How to Implement Symlink with Laravel Project in Shared Hosting (Alternate Storage: link)