Hi, community
just starting my very first Jekyll site. Therefore I have a lot of questions. The most important one for rhe moment is: How do I start a website not locally but on a server in order to be displayed in the web. Something like that: https;//example.com
This is a helpful community so ask when you get stuck but also look at the Jekyll docs and the older forum posts with a search.
When you run Jekyll locally, you typically run
jekyll serve
You can add options like --trace for error details and --livereload to reload the page when you save a file change.
Another way to run Jekyll locally is
jekyll build
cd _site
python3 -m http.serve 8000
And then view in your browser as localhost:8000
Once you have the output of HTML files and other assets, you donāt need Jekyll to live as a server or even installed where the site is serving from
You can move your site directory somewhere for nginx or apach to serve it locally.
You can build it on your remote server on AWS with Jekyll and serve it there with nginx. You can use FTP to move it somewhere and serve it.
The easiest way to get started with a remote server is to add your content to master on github pages. Including a homepage index.md file and a config file. No build step necessary, no build output to commit. Just push your site to GitHub and enable GitHub Pages on your repoās settings.
You can take this quickstart and click Use this template.
Hi Michael,
thaks for the answer, but maybe I explained wrongly what I want. I am web designer / developer and a client asked me to code his next project with jekyll due to short loading times. OK. so I will do that. I do not seem to be that difficult.
But what I do not understand at all: All the descriptions on how to start a project are about local development. But I want to show the site in the web under a domain. Therefore - sooner or later - I will have to upload it to my server. So what I am looking for is how to upload/ activate a website on a server, not locally.
I hope I could explain my idea. English is not my first languageā¦ sorry.
rabo
[UPDATE]
Maybe I got it all wrong. I am used to code either HTML or WordPress. In both cases, I upload files to my server by FTP. In case of WordPress I connect to the database via PHP. (short versionā¦ )
So what is different in Jekyll? Do I have to upload it to GitHub? ā¦Just push your site to GitHub and enable GitHub Pages on your repoās settingsā¦
I do not understand one word. Sorry, I think I have a basic problem of undertanding it right from the start. Maybe you can help me in that case.
Thanks
[/UPDATE]
Note the part where it links to CI. So you could use GitHub Actions or CircleCI or Jenkins etc. to build and publish your site.
It is up to you how to do this. Jekyll just makes a folder of files - you need to choose where to run it and serve from.
You might leave out CI and just run this locally
jekyll build
And then copy the files in _site to your server with FTP. Or maybe use AWS to copy the files to S3 using the browser or using the aws CLI. And then restart Nnginx or Apache.
I would highly recommend using GitHub Pages or Netlify to build and serve your site and then you can put a custom domain on top. But if you really want a separate server that you own then follow notes above.
In Jekyll there is no PHP server or database. Only HTML (and images, JS and CSS files).
If you want to build your site locally and then upload using FTP, that sounds like it will work for you. I do that with one of my sites. I donāt even have to restart Apache - the changes are there immediately.
The FTP approach doesnāt need GitHub at all. It is convenient though to share your code on github even in a private repo for your team.
The FTP approach takes manual effort and is an old fashioned way. So maybe you start with that and then move to GitHub + GitHub Pages later. Because simply committing on GitHub or pushing code to GitHub will trigger a build for you. I often edit my GH Pages sites on my phone. I donāt have to touch FTP or Nginx care about building and moving code as it is all all automated.
OK, thanks. I see. Maybe i will hire someone to arrange everything for the first time. Later on he can explain me, what he did. That will be the fastest way.
The coding itself - as I heard - is more or less the same like ānomalā HTML/ CSS stuff. In that case, the start is the only problem now.
when you run jekyll build (or serve) it will create all the html files for your site - and your entire site will be in the _site folder. This would be the classical html you mention. You can take everything in there and ftp it or copy to where ever you want. So if you are already doing that with what you are doing now it should be the same thing.
Using GH for hosting, or using a CI or putting it on AWS S3 are all good options too and can be a little easier once you understand how it all works.
you need to upload everything in your jekyll _site folder to the root folder on your server the way you have always done with ftp (probably sftp). thats it.
Hi roadie,
OK that is good news. But what means everything? Lets say, I just want to craete a very simple website. In HTML it would have - lets say - two pages and a style.css. The pages would be:
index.html (content: āHello worldā)
a subfolder and inide of it another site e.g.- subsite1.html (content: āI am a subsiteā)
style.css(content: body, div, p {font-size: 12px; color: #000;} )
So if you just tell me which files i have to upload in such a case, I think, I can continue on my own.
thanks
Raphael
[UPDATE] Both of my hosters denied, that I can run Jekyll on a shared server. They said, that I will have to rent my own server. That is nor very helpfull, cause it is both expensive and needs much more work then just bookiing a shared hosting.
So if there is any possibility of avoiding to rent a server for running Jekyll in the web, please inform me.
[/UPDATE]
When you run jekyll build or jekyll serve it will create a _site directory at the root of your project - have you seen that? that has your rendered site, you would take everything there and ftp it to your server/host.
Hi everybody,
thank you for all these answers so far. Unfortunately, I had no real success until now. My main problem is the first steps. Once this is done I will mostly work in CSS. This is no problem for me. But until now I always worked on PHP based CMSs. That is why I canāt proceed.
So I did another trial today. Once again I had an error message. I would be very glad if you could have a look at the messages I received on the Mac terminal. They are stored here. https://pastebin.com/TNMnZmSZ
Hi Michael,
Thanks, but unfortunately I am not used to working with the console. So I cannot understand what the messages mean,
Lets start with detailed questions:
line 6: WARNING: You donāt have /Users/raphaelbolius-catalina/.gem/ruby/2.6.0/bin in your PATH,
What does that mean? How can I change that in order to eliminate this warning?
If I can change that, I suppose the result will be better. (?)
I do not find any line that has the content you quote: brew install ruby-dev
Where is that written??
I am now trying since 10 days or more to have a result. But I do not. So maybe it would be better to ask somebody who is familiar with that kind of installing to help me. either by Skype or by teamviewer.
How much time it would take a pro to do that approximately? Knowing that I might ask on freelancer,com for help. Maybe that is better than investing more time in a task I cannot resolve. (?)
Hi Michal,
thank you in the first place.
Then: Oh myGod. The whole thing is a nightmare. I am used to install Wordpress and start working on the code. Now I try to install Jekyll since 10 days.
I had several offers of different freelancers that say, that they can do it, but they need approx. 6 hours to install Jekyll on my machine and connect it to an URL. Ist that right? I cannot believe it and rather think they want to earn lots of money in a short tie.
OK, to make it short:
YES I would gladfully accept your offer of helping me directly. But remember: I have no glue about the whole topic. I never used the command line before and I do not know what is a gem and so on. SORRY!
I suppose after that one is finished, I will have to learn a lot about the command line and all of that stuff. I already learned a lot of things in computing so that will be no problem. but just now, I have no ideaā¦
Thanks for the clarity. It has hard to remember my first time using command line and using Jekyll
If you get no more errors after the current one is solved with brew then I think you are set and donāt need help installing Jekyll and certainly wonāt take 6 hours.
Regarding connecting to a URL, you want to do that separate from your machine. Like use a free service like Netlify or GH Pages to build your site and put your bought domain on top of it. Any self hosted server will be more troublesome - and once someone helps you set it up you wonāt be able to work on it alone.
And you probably have experience with setting up a domain that has a folder for serving and using FTP to move the content there and that you wonāt need an expert to do for you.
Once you have Jekyll installed, you only need to use a build command and a serve command. The deploy using CI or FTP or something can then be figured out.
I think more of the learning will be around syntax and pattern for Jekyll templating. Your knowledge of HTML, CSS and JS will be useful and you can stick to basic Jekyll functionality initially