mirror of
https://forgejo.ellis.link/continuwuation/continuwuity.git
synced 2026-05-26 20:49:55 +00:00
Compare commits
4 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| 2f11bf4d74 | |||
| 1e8748d1a0 | |||
| 70ef6e4211 | |||
| 212c1bc14d |
@@ -43,7 +43,7 @@ jobs:
|
|||||||
name: Renovate
|
name: Renovate
|
||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
container:
|
container:
|
||||||
image: ghcr.io/renovatebot/renovate:42.11.0@sha256:656c1e5b808279eac16c37b89562fb4c699e02fc7e219244f4a1fc2f0a7ce367
|
image: ghcr.io/renovatebot/renovate:42.70.2@sha256:3c2ac1b94fa92ef2fa4d1a0493f2c3ba564454720a32fdbcac2db2846ff1ee47
|
||||||
options: --tmpfs /tmp:exec
|
options: --tmpfs /tmp:exec
|
||||||
steps:
|
steps:
|
||||||
- name: Checkout
|
- name: Checkout
|
||||||
|
|||||||
@@ -23,7 +23,7 @@ jobs:
|
|||||||
persist-credentials: true
|
persist-credentials: true
|
||||||
token: ${{ secrets.FORGEJO_TOKEN }}
|
token: ${{ secrets.FORGEJO_TOKEN }}
|
||||||
|
|
||||||
- uses: https://github.com/cachix/install-nix-action@7ab6e7fd29da88e74b1e314a4ae9ac6b5cda3801 # v31.8.0
|
- uses: https://github.com/cachix/install-nix-action@4e002c8ec80594ecd40e759629461e26c8abed15 # v31.9.0
|
||||||
with:
|
with:
|
||||||
nix_path: nixpkgs=channel:nixos-unstable
|
nix_path: nixpkgs=channel:nixos-unstable
|
||||||
|
|
||||||
|
|||||||
@@ -11,10 +11,10 @@ OCI images for Continuwuity are available in the registries listed below.
|
|||||||
|
|
||||||
| Registry | Image | Notes |
|
| Registry | Image | Notes |
|
||||||
| --------------- | --------------------------------------------------------------- | -----------------------|
|
| --------------- | --------------------------------------------------------------- | -----------------------|
|
||||||
| Forgejo Registry| [forgejo.ellis.link/continuwuation/continuwuity:latest][fj] | Latest tagged image. |
|
| Forgejo Registry| [forgejo.ellis.link/continuwuation/continuwuity:latest](https://forgejo.ellis.link/continuwuation/-/packages/container/continuwuity/latest) | Latest tagged image. |
|
||||||
| Forgejo Registry| [forgejo.ellis.link/continuwuation/continuwuity:main][fj] | Main branch image. |
|
| Forgejo Registry| [forgejo.ellis.link/continuwuation/continuwuity:main](https://forgejo.ellis.link/continuwuation/-/packages/container/continuwuity/main) | Main branch image. |
|
||||||
|
| Forgejo Registry| [forgejo.ellis.link/continuwuation/continuwuity:latest-maxperf](https://forgejo.ellis.link/continuwuation/-/packages/container/continuwuity/latest-maxperf) | Performance optimised version. |
|
||||||
[fj]: https://forgejo.ellis.link/continuwuation/-/packages/container/continuwuity
|
| Forgejo Registry| [forgejo.ellis.link/continuwuation/continuwuity:main-maxperf](https://forgejo.ellis.link/continuwuation/-/packages/container/continuwuity/main-maxperf) | Performance optimised version. |
|
||||||
|
|
||||||
Use
|
Use
|
||||||
|
|
||||||
@@ -24,6 +24,15 @@ docker image pull $LINK
|
|||||||
|
|
||||||
to pull it to your machine.
|
to pull it to your machine.
|
||||||
|
|
||||||
|
#### Mirrors
|
||||||
|
|
||||||
|
Images are mirrored to multiple locations automatically, on a schedule:
|
||||||
|
|
||||||
|
- `ghcr.io/continuwuity/continuwuity`
|
||||||
|
- `docker.io/jadedblueeyes/continuwuity`
|
||||||
|
- `registry.gitlab.com/continuwuity/continuwuity`
|
||||||
|
- `git.nexy7574.co.uk/mirrored/continuwuity` (releases only, no `main`)
|
||||||
|
|
||||||
### Run
|
### Run
|
||||||
|
|
||||||
When you have the image, you can simply run it with
|
When you have the image, you can simply run it with
|
||||||
@@ -49,7 +58,7 @@ If you just want to test Continuwuity for a short time, you can use the `--rm`
|
|||||||
flag, which cleans up everything related to your container after you stop
|
flag, which cleans up everything related to your container after you stop
|
||||||
it.
|
it.
|
||||||
|
|
||||||
### Docker-compose
|
### Docker Compose
|
||||||
|
|
||||||
If the `docker run` command is not suitable for you or your setup, you can also use one
|
If the `docker run` command is not suitable for you or your setup, you can also use one
|
||||||
of the provided `docker-compose` files.
|
of the provided `docker-compose` files.
|
||||||
@@ -158,8 +167,19 @@ docker buildx build --load --tag continuwuity:latest -f docker/Dockerfile .
|
|||||||
# Example: Build for specific platforms and push to a registry.
|
# Example: Build for specific platforms and push to a registry.
|
||||||
# docker buildx build --platform linux/amd64,linux/arm64 --tag registry.io/org/continuwuity:latest -f docker/Dockerfile . --push
|
# docker buildx build --platform linux/amd64,linux/arm64 --tag registry.io/org/continuwuity:latest -f docker/Dockerfile . --push
|
||||||
|
|
||||||
# Example: Build binary optimized for the current CPU
|
# Example: Build binary optimised for the current CPU (standard release profile)
|
||||||
# docker buildx build --load --tag continuwuity:latest --build-arg TARGET_CPU=native -f docker/Dockerfile .
|
# docker buildx build --load \
|
||||||
|
# --tag continuwuity:latest \
|
||||||
|
# --build-arg TARGET_CPU=native \
|
||||||
|
# -f docker/Dockerfile .
|
||||||
|
|
||||||
|
# Example: Build maxperf variant (release-max-perf profile with LTO)
|
||||||
|
# Optimised for runtime performance and smaller binary size, but requires longer build time
|
||||||
|
# docker buildx build --load \
|
||||||
|
# --tag continuwuity:latest-maxperf \
|
||||||
|
# --build-arg TARGET_CPU=native \
|
||||||
|
# --build-arg RUST_PROFILE=release-max-perf \
|
||||||
|
# -f docker/Dockerfile .
|
||||||
```
|
```
|
||||||
|
|
||||||
Refer to the Docker Buildx documentation for more advanced build options.
|
Refer to the Docker Buildx documentation for more advanced build options.
|
||||||
@@ -198,5 +218,3 @@ Alternatively, you can use Continuwuity's built-in delegation file capability. S
|
|||||||
## Voice communication
|
## Voice communication
|
||||||
|
|
||||||
See the [TURN](../turn.md) page.
|
See the [TURN](../turn.md) page.
|
||||||
|
|
||||||
[nix-buildlayeredimage]: https://ryantm.github.io/nixpkgs/builders/images/dockertools/#ssec-pkgs-dockerTools-buildLayeredImage
|
|
||||||
|
|||||||
+28
-18
@@ -8,29 +8,39 @@
|
|||||||
|
|
||||||
## Installing Continuwuity
|
## Installing Continuwuity
|
||||||
|
|
||||||
### Static prebuilt binary
|
### Prebuilt binary
|
||||||
|
|
||||||
You may simply download the binary that fits your machine architecture (x86_64
|
Download the binary for your architecture (x86_64 or aarch64) -
|
||||||
or aarch64). Run `uname -m` to see what you need.
|
run the `uname -m` to check which you need.
|
||||||
|
|
||||||
You can download prebuilt fully static musl binaries from the latest tagged
|
Prebuilt binaries are available from:
|
||||||
release [here](https://forgejo.ellis.link/continuwuation/continuwuity/releases/latest) or
|
- **Tagged releases**: [Latest release page](https://forgejo.ellis.link/continuwuation/continuwuity/releases/latest)
|
||||||
from the `main` CI branch workflow artifact output. These also include Debian/Ubuntu
|
- **Development builds**: CI artifacts from the `main` branch
|
||||||
packages.
|
(includes Debian/Ubuntu packages)
|
||||||
|
|
||||||
You can download these directly using curl. The `ci-bins` are CI workflow binaries organized by commit
|
When browsing CI artifacts, `ci-bins` contains binaries organised
|
||||||
hash/revision, and `releases` are tagged releases. Sort by descending last
|
by commit hash, while `releases` contains tagged versions. Sort
|
||||||
modified date to find the latest.
|
by last modified date to find the most recent builds.
|
||||||
|
|
||||||
These binaries have jemalloc and io_uring statically linked and included with
|
The binaries require jemalloc and io_uring on the host system. Currently
|
||||||
them, so no additional dynamic dependencies need to be installed.
|
we can't cross-build static binaries - contributions are welcome here.
|
||||||
|
|
||||||
For the **best** performance: if you are using an `x86_64` CPU made in the last ~15 years,
|
#### Performance-optimised builds
|
||||||
we recommend using the `-haswell-` optimized binaries. These set
|
|
||||||
`-march=haswell`, which provides the most compatible and highest performance with
|
For x86_64 systems with CPUs from the last ~15 years, use the
|
||||||
optimized binaries. The database backend, RocksDB, benefits most from this as it
|
`-haswell-` optimised binaries for best performance. These
|
||||||
uses hardware-accelerated CRC32 hashing/checksumming, which is critical
|
binaries enable hardware-accelerated CRC32 checksumming in
|
||||||
for performance.
|
RocksDB, which significantly improves database performance.
|
||||||
|
The haswell instruction set provides an excellent balance of
|
||||||
|
compatibility and speed.
|
||||||
|
|
||||||
|
If you're using Docker instead, equivalent performance-optimised
|
||||||
|
images are available with the `-maxperf` suffix (e.g.
|
||||||
|
`forgejo.ellis.link/continuwuation/continuwuity:latest-maxperf`).
|
||||||
|
These images use the `release-max-perf`
|
||||||
|
build profile with
|
||||||
|
[link-time optimisation (LTO)](https://doc.rust-lang.org/cargo/reference/profiles.html#lto)
|
||||||
|
and, for amd64, target the haswell CPU architecture.
|
||||||
|
|
||||||
### Compiling
|
### Compiling
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user