aboutsummaryrefslogtreecommitdiff
path: root/Docker/README.md
diff options
context:
space:
mode:
authorGravatar Benjamin Reich <Benni-Reich@hotmail.de> 2023-11-05 22:46:01 +0100
committerGravatar GitHub <noreply@github.com> 2023-11-05 22:46:01 +0100
commit8f07199777a2a3a6e233f858e110dbb0cfad6fad (patch)
treeb904c32c8112bd5fc00b52f2c653710cb23e4e0a /Docker/README.md
parent3b2e66051bcf1f11c9b1f0ffe45cdfc5b766952f (diff)
add multi arch docker build (#5808)
* Add multi arch container build Co-authored-by: EdJoPaTo <rfc-conform-git-commit-email@funny-long-domain-label-everyone-hates-as-it-is-too-long.edjopato.de> Co-authored-by: Alexandre Alapetite <alexandre@alapetite.fr> * using label from github action * dont remove static labels and split docker readme in seperate action * pin 3rd party action to a commit * enable pushing to dockerhub * Update .github/workflows/build-images.yml Co-authored-by: EdJoPaTo <github@edjopato.de> * remove not needed checkout * set github token permissions * Update .github/workflows/push-dockerhub-readme.yml * update docker readme to match new tags * Apply suggestions from code review * fix suffix for alpine image * fix suffix for alpine image * push images only at upstream repo * push images only at upstream repo * push images only at upstream repo * tag latest-alpine as alpine * tag latest-alpine as alpine * remove no needed falvor * keep falvor for build * Clean more things * Rename action To use same default name than https://github.com/actions/starter-workflows/blob/main/ci/docker-publish.yml * Rename readme action To use same default name than https://github.com/peter-evans/dockerhub-description/blob/main/.github/workflows/dockerhub-description.yml * Use default name for dockerhub-description https://github.com/peter-evans/dockerhub-description/blob/main/.github/workflows/dockerhub-description.yml Plus minor wording * Experiment with build-args * Debug * Add checkout back * Revert back to metadata-action * Remove quotes in version * Try to fix variables * Experiment with automatic label values again * Delete last Docker Hub hooks * Use only git SHA for org.opencontainers.image.revision https://specs.opencontainers.org/image-spec/annotations/#pre-defined-annotation-keys * Comment out semver for now Might be enabled later if desired * Enable major semver --------- Co-authored-by: EdJoPaTo <rfc-conform-git-commit-email@funny-long-domain-label-everyone-hates-as-it-is-too-long.edjopato.de> Co-authored-by: Alexandre Alapetite <alexandre@alapetite.fr> Co-authored-by: EdJoPaTo <github@edjopato.de>
Diffstat (limited to 'Docker/README.md')
-rw-r--r--Docker/README.md32
1 files changed, 7 insertions, 25 deletions
diff --git a/Docker/README.md b/Docker/README.md
index 01d2e59a6..39885b0e3 100644
--- a/Docker/README.md
+++ b/Docker/README.md
@@ -66,13 +66,16 @@ The [tags](https://hub.docker.com/r/freshrss/freshrss/tags) correspond to FreshR
* `:latest` (default) is the [latest stable release](https://github.com/FreshRSS/FreshRSS/releases/latest)
* `:edge` is the rolling release, same than our [git `edge` branch](https://github.com/FreshRSS/FreshRSS/tree/edge)
-* `:x.y.z` are [specific FreshRSS releases](https://github.com/FreshRSS/FreshRSS/releases)
-* `:arm` or `:*-arm` are the ARM `arm32v7` versions (e.g., for Raspberry Pi).
+* `:x.y.z` tags correspond to [specific FreshRSS releases](https://github.com/FreshRSS/FreshRSS/releases), allowing you to target a precise version for deployment
+* `:x.y` tags are tied to a specific major version and minor version number. For example, `:1.23` will automatically receive updates for any `1.23.x` releases, but will not update to `1.24.x`
+* `:x` tags track the latest release within a major version series. For instance, `:1` will update to include any `1.x` releases, but will exclude versions beyond `2.x`
+* `*-alpine` use Linux Alpine as base-image instead of Debian
+* Our Docker images are designed with multi-architecture support, accommodating a variety of Linux platforms including `linux/arm/v7`, `linux/arm64`, and `linux/amd64`.
* For other platforms, see the [custom build section](#build-custom-docker-image)
### Linux: Debian vs. Alpine
-Our default image is based on [Debian](https://www.debian.org/). We offer an alternative based on [Alpine](https://alpinelinux.org/) (with the `:alpine` or `*-alpine` tag suffix).
+Our default image is based on [Debian](https://www.debian.org/). We offer an alternative based on [Alpine](https://alpinelinux.org/) (with the `*-alpine` tag suffix).
In [our tests](https://github.com/FreshRSS/FreshRSS/pull/2205) (2019), Alpine was slower,
while Alpine is smaller on disk (and much faster to build),
and with newer packages in general (Apache, PHP).
@@ -108,7 +111,7 @@ docker rm freshrss_old
## Build custom Docker image
Building your own Docker image is especially relevant for platforms not available on our Docker Hub,
-which is currently limited to `x64` (Intel, AMD) and `arm32v7`.
+which is currently limited to `x64` (Intel, AMD), `arm32v7`, `arm64`.
> ℹ️ If you try to run an image for the wrong platform, you might get an error message like *exec format error*.
@@ -395,27 +398,6 @@ docker-compose down --remove-orphans --volumes
> ℹ️ You can combine it with `-f docker-compose-db.yml` to spin a PostgreSQL database.
-### Docker Compose and ARM64
-
-If you’re working or want to host on an ARM64 system (such as Apple Silicon (M1/M2)) you’ll need to use the `arm` tag in your `docker-compose.yml` file:
-```yaml
-image: freshrss/freshrss:arm
-```
-
-If you then get this error message when running `docker compose up`:
-
-> The requested image’s platform (linux/arm/v7) does not match the detected host platform (linux/arm64/v8) and no specific platform was requested
-
-… you will also need to specify the platform in the `service` part:
-
-```yaml
-services:
- freshrss:
- image: freshrss/freshrss:arm
- platform: linux/arm/v7
- container_name: freshrss
- ```
-
## Run in production
For production, it is a good idea to use a reverse proxy on your host server, providing HTTPS.