Publishing an OctoPress Site on Shared Hosting is not that difficult than it sounds. As we Can use Git Push on shared hosting services, basically it is as easy as we do on our Cloud Server. Some Preliminary Knowledge, however is required around the things. Shared Hosting Providers like Hostgator uses VirtFS or Jailed Shell – a Shell with limited function. Second thing one need to know is – How to Use Git Repo In Shared Hosting Account. Practically, we will do the exactly same steps like we did while Installing Octopress on Openshift PaaS.
Steps For Publishing an OctoPress Site on Shared Hosting
So, we will start from a main domain’s directory or added sub domain’s directory, first we need to do SSH to the shared host :
1 2 3 4 5 6 7 8 9 10 11 12 13 14 | # commands will have ~ or [~]# before, comments will have only leading hash ( # ) ~ ssh -p 2222 tcwmedia@140.258.189.20 # if you are login for the first time # or deleted the entry from known hosts file The authenticity of host '[140.258.189.20]:2222 ([192.254.189.28]:2222)' can't be established. RSA key fingerprint is bb:6a:51:b4:63:e8:3b:a1:c9:c8:29:3f:b9:1b:4e:49. Are you sure you want to continue connecting (yes/no)? yes Warning: Permanently added '[140.258.189.20]:2222' (RSA) to the list of known hosts. tcwmedia@192.254.189.28's password: # we have lodged in, do a pwd tcwmedia@freehealthfoundation.org [~]# pwd /home3/tcwmedia # this is maximum the upper level you can access tcwmedia@freehealthfoundation.org [~]# cd ~ |
You can initiate in other path than directly on the domain’s directory too :
---
1 2 3 4 5 6 7 8 9 10 11 12 13 | tcwmedia@freehealthfoundation.org [~]# mkdir -p git # go to the directory tcwmedia@freehealthfoundation.org [~]# cd git tcwmedia@freehealthfoundation.org [~]/git# /home3/tcwmedia/git tcwmedia@freehealthfoundation.org [~]/git# mkdir -p git-website.git # git-website is just a name tcwmedia@freehealthfoundation.org [~]/git# cd git-website.git tcwmedia@freehealthfoundation.org [~]/git/git-website# # initialize git tcwmedia@freehealthfoundation.org [~]/git/git-website# git -- bare init # output Initialized empty Git repository in /home3/tcwmedia/git/git-website/ |
In such case, you have to symlink the git with the @www folder of the domain :
1 | ln -s public_html/domain.com/ ./git-location |
How you will design the structure
fully depends on you.
OctoPress Specific Steps For Publishing an OctoPress Site on Shared Hosting
So, we need to clone the git to local computer :
1 2 3 4 5 6 | # this is local computer ~ git clone ssh://tcwmedia@freehealthfoundation.org:2222/home3/tcwmedia/git/git-website.git # understand the command, it is # git clone ssh://your-domain-name-path:port/path/to/git # well you can use normal commands # like git remote add git-website tcwmedia@freehealthfoundation.org:www/git-website |
Now we basically need to clone OctoPress, build it and push it :
1 2 3 4 5 6 7 8 9 10 | # clone octopress git clone git://github.com/imathis/octopress.git # so it will be under $HOME/git-website/octopress # this is my case, your username is different # do a pwd to get the path cp -r /Users/abhishekghosh/git-website/octopress/* /Users/abhishekghosh/git-website # install bundler sudo gem install bundler # do not use sudo for the next command bundle install |
It will take a some time. You can take a break. After its complete, install a theme :
1 2 3 | git clone https://github.com/bkutil/bootstrap-theme.git rake install rake generate |
Final step is to push the git :
1 2 3 | git add . git commit -m 'this is a funny octo' git push |
Themes can break, thats where usually is a slight glitch. There are specific fixes available in Github, do a search if you face some issue.