Is there any way to install Discourse without Docker?


(bubill) #1

My cloud provider aliyun.com can NOT support Docker .
here is error::

root@AY1:/var/docker# service docker stop
stop: Unknown instance: 
root@AY140222173108710dc0Z:/var/docker# docker -d
2014/06/29 01:33:22 WARNING: You are running linux kernel version 3.2.0-64-generic, which might be unstable running docker. Please upgrade your kernel to 3.8.0.
2014/06/29 01:33:22 docker daemon: 1.0.1 990021a; execdriver: native; graphdriver: 
[ce3a4985] +job serveapi(unix:///var/run/docker.sock)
[ce3a4985] +job initserver()
[ce3a4985.initserver()] Creating server
2014/06/29 01:33:22 Listening for HTTP on unix (/var/run/docker.sock)
[ce3a4985] +job init_networkdriver()
[ce3a4985.init_networkdriver()] creating new bridge for docker0
Could not find a free IP address range for interface 'docker0'. Please configure its address manually and run 'docker -b docker0'
[ce3a4985] -job init_networkdriver() = ERR (1)
Could not find a free IP address range for interface 'docker0'. Please configure its address manually and run 'docker -b docker0'
[ce3a4985] -job initserver() = ERR (1)
2014/06/29 01:33:22 Could not find a free IP address range for interface 'docker0'. Please configure its address manually and run 'docker -b docker0'
root@AY140222173108710dc0Z:/var/docker# service docker start
docker start/running, process 18105
root@AY140222173108710dc0Z:/var/docker# service docker stop
stop: Unknown instance: 
root@AY140222173108710dc0Z:/var/docker# docker -d
2014/06/29 01:34:04 WARNING: You are running linux kernel version 3.2.0-64-generic, which might be unstable running docker. Please upgrade your kernel to 3.8.0.
2014/06/29 01:34:04 docker daemon: 1.0.1 990021a; execdriver: native; graphdriver: 
[585cf499] +job serveapi(unix:///var/run/docker.sock)
[585cf499] +job initserver()
[585cf499.initserver()] Creating server
2014/06/29 01:34:04 Listening for HTTP on unix (/var/run/docker.sock)
[585cf499] +job init_networkdriver()
[585cf499.init_networkdriver()] creating new bridge for docker0
Could not find a free IP address range for interface 'docker0'. Please configure its address manually and run 'docker -b docker0'
[585cf499] -job init_networkdriver() = ERR (1)
Could not find a free IP address range for interface 'docker0'. Please configure its address manually and run 'docker -b docker0'
[585cf499] -job initserver() = ERR (1)
2014/06/29 01:34:04 Could not find a free IP address range for interface 'docker0'. Please configure its address manually and run 'docker -b docker0'
root@AY1:/var/docker#


:[585cf499] -job init_networkdriver() = ERR (1)
Could not find a free IP address range for interface 'docker0'. Please configure its address manually and run 'docker -b docker0'

(Jeff Atwood) #2

You can look in the /docs section of the project for the deprecated manual install guide.

However these are self-support installs only – we cannot support those installs as a matter of policy; any topics you open about a manual Discourse install here will generally be closed or deleted.

read more: discourse/INSTALL.md at master · discourse/discourse · GitHub

I strongly suggest you finder a better cloud provider that supports recent Linux kernels and Docker.


(bubill) #3

use docker is a few simply deploy discouse .Another way is VERY VERY VERY difficult.

Thank you for your suggestion.


(Frank) #5

Would be nice if one could install Discourse the same way one would install GitHub - rubysherpas/forem: The best Rails 3 and Rails 4 forum engine. Ever. – ie. as a Rails Engine. Just generate an empty Rails app, add Forem to the Gemfile, run a Rake task and baam!

From a friend in Freenode #openbsd:

<geggam> could be worse ... could be docker
<geggam> docker is a broken pacakge system with no file validation leveraging unionfs or devicemapper to include the most bugs possible at the filesystem layer... did i mention it doesnt have versions
<geggam> o... and it chroots the processes ...sometimes
<geggam> but if you mount the docker socket inside the docker container you can do whatever you want and not be logged
<geggam> someone.. cant remember who..called it a rootkit generator

(Jeff Atwood) #6

Unfortunately installing Rails apps is a nightmare. Much less supporting them! The goal is to have an easy 30 minute install, and Docker lets us achieve that – while offering sane support.

We’re very committed to Docker. All our internal hosting is on Docker.


(Frank) #7

I see your point. Too bad Docker won’t run on OpenBSD / FreeBSD though.

Choose OpenBSD for your Unix needs. OpenBSD – the world’s simplest and most secure Unix-like OS. Creator of the world’s most used SSH implementation OpenSSH, the world’s most elegant firewall PF, the world’s most elegant mail server OpenSMTPD, the OpenSSL rewrite LibreSSL, and the NTP rewrite OpenNTPD. OpenBSD – the cleanest kernel, the cleanest userland and the cleanest configuration syntax.


(Jeff Atwood) #8

I believe it will, if you use overlayfs. I think zfs also works and is excellent.


(Frank) #9

Cool, I’ll look into it, thanks!


(Frank) #10

Seems like Docker is pretty much a no-go on FreeBSD unless it’s converted to something like Zocker. See posts by Jason Cox and Polytropon:

http://comments.gmane.org/gmane.os.freebsd.questions/313920


(Jeff Atwood) #11

There are also several people there recommending you use Linux, what is forcing you to choose FreeBSD?


(Frank) #12

I just think it’s a better OS – cleaner, less noise, more sensible system configs, less stuff enabled or installed by default, OpenBSD’s pf firewall, superior TCP/IP networking stack etc., but to each his own. I managed to set up Discourse manually and I’m absolutely loving it.

Thank you.


(Sam Saffron) #13

That is fine, but I strongly recommend you review discourse docker templates and ensure you use a configuration similar to what we ship. There is TONS of logic in the templates that you need to ensure you do not lose.


(Flap Jack) #14

Hi there! Where would one find these templates?

Trying to install Discourse without Docker myself, but am having trouble with the migrations:

== Seed from /home/forumworld2000/discourse/db/fixtures/999_settings.rb
Discourse hostname:  is not a valid domain for emails!
 
== Seed from /home/forumworld2000/discourse/db/fixtures/999_topics.rb
rake aborted!
ActiveRecord::StatementInvalid: PG::NotNullViolation: ERROR:  null value in  column "domain" violates not-null constraint
DETAIL:  Failing row contains (2, 5, 5, -1, /privacy, null, t, null, 2015-06 -14 11:27:17.158249, 2015-06-14 11:27:17.158249, f, 0, null, null, null, f).
: INSERT INTO "topic_links" ("created_at", "internal", "post_id", "topic_id" , "updated_at", "url", "user_id") VALUES ($1, $2, $3, $4, $5, $6, $7) RETURN ING "id"
/home/forumworld2000/discourse/app/models/topic_link.rb:154:in `block (2 levels) in ext ract_from'
/home/forumworld2000/discourse/app/models/topic_link.rb:110:in `each'
/home/forumworld2000/discourse/app/models/topic_link.rb:110:in `block in extract_from'
/home/forumworld2000/discourse/app/models/topic_link.rb:100:in `extract_from'
/home/forumworld2000/discourse/lib/post_creator.rb:318:in `extract_links'
/home/forumworld2000/discourse/lib/post_creator.rb:117:in `block in create'
/home/forumworld2000/discourse/lib/post_creator.rb:182:in `call'
/home/forumworld2000/discourse/lib/post_creator.rb:182:in `block in transaction'
/home/forumworld2000/discourse/lib/post_creator.rb:180:in `transaction'
/home/forumworld2000/discourse/lib/post_creator.rb:114:in `create'
(eval):16:in `create_static_page_topic'
(eval):29:in `block (2 levels) in run_file'
/home/forumworld2000/discourse/lib/tasks/db.rake:8:in `block in <top (required)>'
PG::NotNullViolation: ERROR:  null value in column "domain" violates not-nul l constraint
DETAIL:  Failing row contains (2, 5, 5, -1, /privacy, null, t, null, 2015-06 -14 11:27:17.158249, 2015-06-14 11:27:17.158249, f, 0, null, null, null, f).
/home/forumworld2000/discourse/app/models/topic_link.rb:154:in `block (2 levels) in ext ract_from'
/home/forumworld2000/discourse/app/models/topic_link.rb:110:in `each'
/home/forumworld2000/discourse/app/models/topic_link.rb:110:in `block in extract_from'
/home/forumworld2000/discourse/app/models/topic_link.rb:100:in `extract_from'
/home/forumworld2000/discourse/lib/post_creator.rb:318:in `extract_links'
/home/forumworld2000/discourse/lib/post_creator.rb:117:in `block in create'
/home/forumworld2000/discourse/lib/post_creator.rb:182:in `call'
/home/forumworld2000/discourse/lib/post_creator.rb:182:in `block in transaction'
/home/forumworld2000/discourse/lib/post_creator.rb:180:in `transaction'
/home/forumworld2000/discourse/lib/post_creator.rb:114:in `create'
(eval):16:in `create_static_page_topic'
(eval):29:in `block (2 levels) in run_file'
/home/forumworld2000/discourse/lib/tasks/db.rake:8:in `block in <top (required)>'
Tasks: TOP => db:migrate
(See full trace by running task with --trace)

I tried grepping for current_hostname inside discourse/config/ but the only match is in initializers/verify_config.rb and it doesn’t look like it’s meant to be edited.


(Sam Saffron) #15

the key template is here: discourse_docker/web.template.yml at master · discourse/discourse_docker · GitHub but a bunch more in that directory.


(Flap Jack) #16

Thank you! Some interesting stuff in there!

Any idea about the current_hostname though?


(Sam Saffron) #17

Sorry, you are on your own here supporting this install, we are really stretched for time and can only afford to support our official setup.


(Flap Jack) #18

I’ll do my best, thanks!


(Kane York) #19

Really, your best option is to find some way to parse and run the template files in a BSD chroot, so you’ll always be up to date on them.


(Sam Saffron) #20

pups would run just fine under freebsd.


(Tenzan) #21

Sorry for the off-topic, but is your aliyun.com better thant digitalocean?

If not, then use digitalocean. :wink: