Not sure what is happening here, but I can’t seem to get my installation for Discourse working on a CoreOS container by Digital Ocean. Everything went fine until the ouput the very end
Yeah I just read the select a storage driver option. Gonna see if I can change it. Will rebuilding the app potentially work, or will I need to rerun the entire script?
Also that’s really strange since CoreOs ships out of box with Docker as it’s baseline program. They even mention it on their about page…
So after a bit of research I found this: https://github.com/coreos/bugs/issues/1142 stating that CoreOS used to support btrfs, but now they’ve switched to overlay. They gave me this link here to switch to btrfs, but it doesn’t seem to be working. Is there anyway I can fix this without actually having to change the filesystem? (To be fair, I’m still really confused about what exactly is going on here that is preventing the app from running and creating a docker instance)
Just read the launcher source code and figured out the error. Gonna see if it works. hostname -s gives me Unknown Host error even though -s is a valid flag. hostname works just fine.
How has CoreOS worked for you? I just moving one small Discourse instance from a server to another, and decided to try CoreOS.
Also, what is your update strategy? I am using Digital Ocean’s CoreOS droplet. I don’t know much about CoreOS, but I understood that the updates are automatic by default?
The main use case for CoreOS is if you have a fleet of servers hosting containers, it is much less centered around hosting a single site with a single machine. So you are getting a bunch of complexity here that you do not need together with the nifty features it has.
The problem with CoreOS is that you cannot run the Discourse tools to build and run the Discourse docker container. ./discourse-setup will not run on CoreOS.
My solution was to run an Ubuntu Docker container which itself runs docker - Docker in Docker - and within this container build and run the Discourse container. This is scripted so when I run the container, it updates Discourse and builds the new Discourse docker image.
The only problem with this is that restarting the container took ages - so I split the process: one container builds the Discourse image and saves it to a shared volume (I only run this when I want to update Discourse). A second Docker image just uses DinD to load the Discourse docker image from the shared volume (a folder on the host) and run it using the Discourse scripts.
All the benefit of CoreOs and still able to run Discourse. Bit of a hassle but it works well. Only issue that I am still looking at is that in order to run Docker in Docker, the Ubuntu container needs higher privileges than I would like.
Oh and I also run postgres in a separate container as this is shared with other containers on the box… finally, another container runs nginx as a reverse proxy which provides the SSL endpoing and some additional security.
(and @ljpp - you can add nano to Coreos, you just need a static build)