not yet, we are probably going to solve this some time in 2015
Can be found here:
- Access your server (use Putty on Windows)
It is good to teach a step by step. Not everyone is familiar to the Discourse way
How to convince my university to use/install Discourse?
How do I manually update Discourse and Docker image to latest?
Step by Step Guide:(for those like me who needed more info the first time)
4.) Arrow down until you see this:
5.) Paste “
- git clone https://github.com/discourse/discourse-spoiler-alert.git” beneath that so that all together it looks like this:
6.) control + O (to save
app.yml), hit enter
8.) control + X (to exit app.yml), then hit enter
git pull (this updates stuff)
./launcher rebuild app (restarts Discourse and includes the plugin)
^ @AdamCapriola showed me that stuff and I did exactly the way I ordered it and it worked for me.
It may seem like an obvious order to those more familiar with it, but that’s what I needed to do it successfully the first time. Now I can do it easy peasy.
Babble - A Chat Plugin [ARCHIVE]
Problem is installing plugin
Change the domain name or rename my Discourse?
Please do beware that indentation in YAML – the file format used through the
app.yml file – matters! Whenever you post YAML documents or snippets, please use the proper markup:
```text <--- paste snippet here! ```
app.yml snippet with proper indentation:
hooks: after_code: - exec: cd: $home/plugins cmd: - mkdir -p plugins - git clone https://github.com/discourse/docker_manager.git - git clone https://github.com/discourse/discourse-spoiler-alert.git
If you use
<blockquote> blocks or, as you did above,
[quote] blocks, whitespace at the beginning of the line will not be preserved and the YAML document’s meaning will change, resulting in errors.
Also… learn Vim.
How to install a private git repository plugin?
To add a private git repository plugin, you need to follow these steps:
Assuming that your private git repo is hosted on GitHub, you need to add your server’s user public SSH key to GitHub repo Deploy keys (https://github.com/SecretOrg/secret-plugin/settings/keys).
app.ymlfile as shown in below example:
run: - exec: echo "Beginning of custom commands" - exec: cd /var/www/discourse && sudo -u discourse bundle install --deployment --without test --without development - exec: echo "Host github.com\n\tStrictHostKeyChecking no\n" >> /user/.ssh/config - file: path: /user/.ssh/id_rsa chmod: 600 contents: | -----BEGIN RSA PRIVATE KEY----- MIIEogIBAAKCAQEArCQG213utzqE5YVjTVF5exGRCkE9OuM7LCp/FOuPdoHrFUXk y2MQcwf29J3A4i8zxpES9RdSEU6iIEsow98wIi0x1/Lnfx6jG5Y0/iQsG1NRlNCC aydGvGaC+PwwWiwYRc7PtBgV4KOAVXMZdMB5nFRaekQ1ksdH/360KCGgljPtzTNl 09e97QBwHFIZ3ea5Eih/HireTrRSnvF+ywmwuxX4ubDr0ZeSceuF2S5WLXH2+TV0 .... etc .... -----END RSA PRIVATE KEY----- - file: path: /user/.ssh/id_rsa.pub chmod: 600 contents: ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAQEAklOUpkDHrfHY17SbrmTIpNLTGK9Tj .... etc .... user@discourse - exec: cd $home/plugins && git clone firstname.lastname@example.org:SecretOrg/secret-plugin.git - exec: cd $home && sudo -E -u discourse bundle exec rake db:migrate - exec: cd $home && rm -fr tmp/cache - exec: cd $home && sudo -E -u discourse bundle exec rake assets:precompile - exec: rm /user/.ssh/id_rsa - exec: rm /user/.ssh/id_rsa.pub - exec: echo "End of custom commands"
- Rebuild the container:
cd /var/discourse ./launcher rebuild app
Your private plugin should be installed on your Discourse instance.
Discourse: Install plugin from Gitlab private repository
Specifying the gem dependecies for plugin - gem does not exist
after following this steps to install this plugin
cd /var/discourse ./launcher rebuild app
There was no errors, but my site stopped working completely.
./launcher restart app,
docker restart also
rebooting serve, but still error persist.
Also tried removing plugin url from
app.yml and again rebuilding app.
Thanks in advance.
Your YAML is probably invalid. Copy and paste it into an online YAML validator. I just set up the tagging plugin for several DO droplets and it worked fine.
Any other pointers to solve issues.
yaml can be well structured yet invalid in some cases.
start from the samples, one change at a time and rebuild.
How do you install a plugin with a hosted instance?
With hosting, plugins are only available in the Enterprise offering, and you email email@example.com with info on the plugin (the URL).
Issue cloning plugin from an internal server.
Cloning into 'xxxx_xxx_xxx'... fatal: unable to access 'https://git.XXXX.XXX/academic-technologies/xxxx_xxx_xxx.git/': server certificate verification failed. CAfile: /etc/ssl/certs/ca-certificates.crt CRLfile: none
I have an internally accessible gitlab server with a valid ‘DigiCert SHA2 Secure Server CA’ intermediary cert. basically Chrome is happy with it and we use certs from the same source for our external services. Because of the datasources and to things that get set it is really not for public consumption so I can not put it on get hub
So is there a cache of server certificates that discourse_docker is allowed to install plugins from?.
Try installing updates on the host:
sudo apt-get update && sudo apt-get upgrade. That should update the certificate files.
Ok I can see why that would work. I had assumed that since connecting from the OS hosting the docker containers worked that it would from inside the container.
So I am running into this while running
./launcher rebuild so do I need to update the docker image that is being used to setup the container. I could put that apt-get commands in to the container file before the plugin is installed but seems kludgy.
FYI: In addition to what @elberet said, the launcher will not let you rebuild if you use tabs! You have to use spaces to indent your YAML. Picky picky…
What kind of animal would use tabs instead of spaces
@codinghorror Haha. I suppose self-taught varmints like @curiositry use tabs when they’re in the heat of battle with a Goliath rails app . (I’m used to using Atom or Sublime, which convert tabs to 2 spaces…)
Thanks for building Discourse by the way, and making it open-source. It’s a sweet piece of software.
…but I always trust my editor to Do The Right Thing (insert spaces) when I press the tab key.
Bzzt. Trust, But Verify.
This may be a dumb question, but do I have to execute these steps every time I want to update a plugin? Or does it update automatically, the way Discourse does?