Commit Graph

1589 Commits

Author SHA1 Message Date
Michael Brown e30ccb9042 CLEANUP: literally this was my own feedback on my own changes I forgot to push before merging 2022-03-31 12:28:55 -04:00
Michael Brown db3894b509 Add label showing image creation time on commit 2022-03-30 22:47:39 -04:00
Michael Brown d0747918e7 Cleanup code in the bootstrap function
I came here to do something else, but could not help cleaning up the bootstrap
code.

* add die() helper
* pull the container ID into an environment variable right away instead of
  interpolating it every time
* we don't need to write out to a file prior to piping it into docker
* use $() instead of backticks
* tidied up messaging from failed docker commits
2022-03-30 22:47:39 -04:00
Grant 62b009bafa
FIX: pg_basebackup parameter in take-database-backup (#611)
take-database-backup tries to use pg_baseback --xlog parameter which
was remove in postgres >=10.
2022-03-24 18:51:41 -04:00
Jarek Radosz 727dad5c48
DEV: Make wget consistently quiet (#612)
That firefox download is ~1.5k log lines long. 😅
2022-03-15 10:43:10 +01:00
Gabe Pacuilla 93906f14f4
DEV: use consistent third-party installation method (#610)
* DEV: use consistent third-party installation method

* FIX: slim base image build on aarch64
2022-03-14 19:22:43 -04:00
Gabe Pacuilla 8e1988c733
DEV: use proper upstream repo path for ruby-build (#609) 2022-03-04 15:38:33 -05:00
Fernando (Ariznaf) b5e3861e68 Add support for btrfs storage driver in docker
After several months of using btrfs in our forum in production with no issue, I can say that btrfs seems quite stable and I am proposing to add it to the supported storage drivers under docker.

Using btrfs makes it a breeze to take snapshots and revert to a previous state of discourse, and taking backups with minimal forum interrupt time.

Here is a discussion about it in discourse forum:
https://meta.discourse.org/t/unable-to-rebuild-app-not-supported-docker-storage-driver-btrfs/209200/14
2022-03-04 17:30:25 -03:00
Eleni Michalaki 99e215415f Bump base image 2022-03-03 16:27:22 +01:00
Gabe Pacuilla 8b0ae9b4da
DEV: compile redis with TLS support in our base image (#606) 2022-02-24 14:14:33 -05:00
Rafael dos Santos Silva edef7d317c FIX: Worker connections are set on nginx.conf 2022-02-23 16:08:15 -03:00
Rafael dos Santos Silva 65fa2054db FEATURE: Bump and allow customization of nginx worker_processes
MessageBus connections on busy sites can easily use more than the max
default number of connections.

Refer to http://nginx.org/en/docs/ngx_core_module.html#worker_connections
2022-02-18 14:11:57 -03:00
Jarek Radosz dc5b37c011 Fix checksums 2022-02-15 10:14:45 -03:00
Jarek Radosz af08dd6669 DEV: Update nginx 2022-02-15 10:14:45 -03:00
Jarek Radosz 738aabaa73 DEV: Update ImageMagick 2022-02-15 10:14:45 -03:00
Jarek Radosz 189c3f60ff DEV: Update oxipng to 5.0.1 2022-02-15 10:14:45 -03:00
Gerhard Schlager b1ed03fedd
DEV: Update phpBB3 template to work with latest base image (#603) 2022-02-11 18:33:41 +01:00
Gabe Pacuilla a87474c239
DEV: update launcher for new base image and pups gem (#602) 2022-01-28 14:47:14 -05:00
Gabe Pacuilla ad0716c442
DEV: Install latest pups via gem instead of git clone (#599) 2022-01-28 12:37:03 -05:00
Jarek Radosz 9ea993948a
DEV: Update ruby to 2.7.5 (#600) 2022-01-28 10:14:45 +11:00
David Taylor 7ba8d4e926
FIX: Use `bundle config` instead of deprecated flags (#598)
Bundler 2.3.0 started re-installing and re-invoking itself based on the `BUNDLED WITH` declaration in the Gemfile.lock. The second run of bundler doesn't receive the flags from the initial invocation.

These flags were deprecated some time ago. The recommended solution is to use `bundle config`, which persists the config to the filesystem for future invocations to load.
2022-01-26 10:18:49 +00:00
Leonardo Mosquera eb643f6478
FIX: md5 auth replace for postgres.13.template.yml (#594)
There has likely been one s/12/13/ too many in this file.
Note: the typo is not present in the default postgres template; only this specific file, which is otherwise identical to the default one.
2022-01-14 14:53:41 -03:00
Leonardo Mosquera c26646bfd5
FIX: script name in run-all-tests (#595) 2022-01-14 14:53:02 -03:00
David Taylor 7c9b93a9cc
FIX: Do not activate plugins before checking compatibility (#593)
https://github.com/discourse/discourse/pull/15537
2022-01-11 12:18:08 +00:00
David Taylor 4cd6a5d96a
DEV: Fix aarch64 build (#592)
buildx can't build `FROM` a local image, so we need to set up a temporary local registry for the intermediate image
2021-12-15 00:09:46 +00:00
David Taylor 1b2c026c2a
DEV: Provide slim versions of the discourse_test image (#586)
Also moves the discourse_test image to use a multi-stage build
2021-12-14 14:53:20 +00:00
David Taylor e5f0b0f5b8
DEV: Tag the correct images as 'slim' (#591) 2021-12-14 00:11:03 +00:00
David Taylor 3f8f4ce464
DEV: Pass `TAG` variable between workflow steps (#590) 2021-12-13 22:57:16 +00:00
David Taylor 9cd2de7b33
DEV: Correct GitHub actions build definition (#589) 2021-12-13 21:44:07 +00:00
David Taylor 3ef754f4ca
Introduce a discourse/base:slim image (#588)
The base-slim image doesn't run `yarn install` or `bundle install`, so it is much more lightweight. This is intended for use by systems which do their own dependency caching (e.g. GitHub Actions)

The image will be released under the `:slim` tag, and also `:v2.0.{timestamp}-slim`
2021-12-13 21:03:00 +00:00
David Taylor ab881fd316
discourse_test: re-use bundled gems from the base file (#587)
By doing `rm -rf .bundle` and `bundle install --standalone`, we were setting up bundle to install gems in `./bundle`. The base file installs gems in `./vendor/bundle`. That means that the test image was ending up with two complete copies of our dependencies.

This commit removes the `--standalone` command, and allows the `./vendor/bundle` artifacts to be re-used in the test image.
2021-12-13 11:56:57 +00:00
Rafael dos Santos Silva 02cd746c6a Use aarch64 tag automatically when necessary 2021-12-06 18:14:52 -03:00
Rafael dos Santos Silva cf296400aa add buildx and qemu setup 2021-12-02 17:19:43 -03:00
Rafael dos Santos Silva d0bb6d7e2f move aarch64 build to CI 2021-12-02 17:19:43 -03:00
Rafael dos Santos Silva 2ff713ba3a try building an image for aarch64 2021-12-02 17:19:43 -03:00
Michael Fitz-Payne cbacbffe11
discourse/base: remove vim package (#582)
A buffer overflow vulnerability (CVE-2021-3973) has been discovered in
vim. As of the moment, this remains unpatched in Debian. Admittedly the
likelihood of encountering this exploit in the wild within the Discourse
base image is pretty low, but given this image is intended to run
non-interactively vim is not strictly required as a part of the image.
In any case, the package can be added at runtime for debugging purposes.

See https://security-tracker.debian.org/tracker/CVE-2021-3973.
2021-11-26 12:18:04 +10:00
Blake Erickson 676479926e
Bump base image used with launcher (#581)
This change includes the oxipng binary.

See: 244c9cb110
2021-11-19 12:32:44 -07:00
Jay Pfaffman 66a6ced341 FIX: add EMBER_CLI_PROD_ASSETS: 1 to web_only.yml
I just noticed that my test of this wasn't much of a test since the change wasn't applied to web_only...
2021-11-12 12:07:47 -03:00
Blake Erickson 244c9cb110
DEV: Add oxipng binary to base image (#579)
image_optim, a ruby library we use, now has support for oxipng:

 https://github.com/toy/image_optim/pull/190#issuecomment-920433324

So I'm adding the oxipng binary to the base image so that we can
start using it. There currently isn't an apt package for it.
2021-11-08 10:40:32 -07:00
Robin Ward e73dd1e8b7
Use Ember CLI production assets by defaults for new installs (#578) 2021-11-04 14:46:08 -04:00
Rafael dos Santos Silva 8e2ccee0f2 FIX: Remove expired LE root cert from our local validation
The old root was getting openssl confused, resulting in a new
certificate on every rebuild that could easily trigger existing let's
encrypt rate-limits.
2021-10-25 15:43:36 -03:00
Michael Fitz-Payne 17c9e6fd53
Bump base image used with launcher (#575) 2021-10-21 15:35:48 +10:00
Jay Pfaffman 6c12b59678 FIX: See that force_https is set for lets encrypt
Recent changes to let's encrypt having to do with the surprisingly tragic root certificate update are causing sites not to have `force_https` set. 

This set force_https.

There remain some issues with let's encrypt requesting certs when it shouldn't but this fixes the worst of the problem with little effort.
2021-10-19 17:12:29 -03:00
Michael Fitz-Payne aadd087790
Update dependencies (#573) 2021-10-19 12:33:03 +10:00
Arpit Jalan ee061f17a9
DEV: replace mailcatcher with mailhog (#572) 2021-10-08 11:06:32 +05:30
Michael Brown e0da21275f FIX: the output from which confuses an integer comparison
Thanks @ldmosquera for identifying the problem and fix
2021-10-01 17:33:23 -04:00
Michael Brown 2cddc0a3e8 FIX: discourse/discourse changed from 'master' to 'main' 2021-10-01 17:33:23 -04:00
Rafael dos Santos Silva 4f29decec9 DEV: Install evergreen Firefox in test image 2021-09-08 14:11:19 -03:00
Rafael dos Santos Silva 8b3e8f7dc8 Update dependencies 2021-09-06 18:18:23 -03:00
David Taylor b259c8d38e
DEV: Clean yarn cache after yarn install (#568)
The cache is not required to run the application. This should make the docker image much smaller.

We may want to re-evaluate this decision when switching to yarn v2, which has a very different caching system.
2021-08-27 11:30:43 +01:00