{"id":13469943,"url":"https://github.com/ckulka/baikal-docker","last_synced_at":"2025-03-26T09:31:40.303Z","repository":{"id":34219582,"uuid":"38078801","full_name":"ckulka/baikal-docker","owner":"ckulka","description":"Provides a ready-to-go Baikal server, incl. docker-compose.yml \u0026 Systemd service file","archived":false,"fork":false,"pushed_at":"2025-03-15T14:13:27.000Z","size":374,"stargazers_count":419,"open_issues_count":15,"forks_count":49,"subscribers_count":3,"default_branch":"master","last_synced_at":"2025-03-15T15:22:30.499Z","etag":null,"topics":["amd64","apache","arm32v7","arm64v8","baikal","baikal-server","docker","docker-image","dockerfile","i386","multi-arch","multi-arch-images","multi-arch-support","nginx"],"latest_commit_sha":null,"homepage":"https://hub.docker.com/r/ckulka/baikal","language":"PHP","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/ckulka.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2015-06-25T22:59:26.000Z","updated_at":"2025-03-15T14:13:31.000Z","dependencies_parsed_at":"2023-01-15T05:22:12.948Z","dependency_job_id":"ce3c8c29-c902-446c-ba20-ec451318527f","html_url":"https://github.com/ckulka/baikal-docker","commit_stats":null,"previous_names":[],"tags_count":24,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ckulka%2Fbaikal-docker","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ckulka%2Fbaikal-docker/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ckulka%2Fbaikal-docker/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ckulka%2Fbaikal-docker/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/ckulka","download_url":"https://codeload.github.com/ckulka/baikal-docker/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":245625983,"owners_count":20646275,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["amd64","apache","arm32v7","arm64v8","baikal","baikal-server","docker","docker-image","dockerfile","i386","multi-arch","multi-arch-images","multi-arch-support","nginx"],"created_at":"2024-07-31T16:00:19.328Z","updated_at":"2025-03-26T09:31:40.287Z","avatar_url":"https://github.com/ckulka.png","language":"PHP","funding_links":[],"categories":["PHP","Dockerfile","Apps"],"sub_categories":["Syncing"],"readme":"# Baikal\n\n[![Latest images](https://github.com/ckulka/baikal-docker/actions/workflows/build-latest.yaml/badge.svg)](https://github.com/ckulka/baikal-docker/actions/workflows/build-latest.yaml) [![Experimental images](https://github.com/ckulka/baikal-docker/actions/workflows/build-experimental.yaml/badge.svg)](https://github.com/ckulka/baikal-docker/actions/workflows/build-experimental.yaml) ![Docker Pulls](https://img.shields.io/docker/pulls/ckulka/baikal) ![Docker Architectures](https://img.shields.io/badge/arch-amd64%20%7C%20arm32v7%20%7C%20arm64v8%20%7C%20i386-informational)\n\nThis dockerfile provides a ready-to-go [Baikal server](http://sabre.io/baikal/).\n\nFor more details, see [ckulka/baikal-docker (GitHub)](https://github.com/ckulka/baikal-docker).\n\n## Supported tags and respective Dockerfile links\n\nTags without a version are [weekly re-builds](https://github.com/ckulka/baikal-docker/actions/workflows/build-latest.yaml) to include the latest base image with the most recent updates:\n\n- `latest` and `apache` are re-builds of the latest `*-apache` version\n- `apache-php8.2` are re-builds of the latest `*-apache-php8.2` version\n- `nginx` are re-builds of the latest `*-nginx` version\n- `nginx-php8.2` are re-builds of the latest `*-nginx-php8.2` version\n\nI follow the same version naming scheme as [Baikal](http://sabre.io/baikal/) themselves.\n\nThe following tags support multiple architectures, e.g. `amd64`, `arm32v7`, `arm64v8` and `i386`.\n\n- [`0.10.1`, `0.10.1-apache`](https://github.com/ckulka/baikal-docker/blob/0.10.1/apache.dockerfile)\n- [`0.10.1-apache-php8.2`, `0.10.1-php8.2`](https://github.com/ckulka/baikal-docker/blob/0.10.1/apache-php8.2.dockerfile)\n- [`0.10.1-nginx`](https://github.com/ckulka/baikal-docker/blob/0.10.1/nginx.dockerfile)\n- [`0.10.1-nginx-php8.2`](https://github.com/ckulka/baikal-docker/blob/0.10.1/nginx-php8.2.dockerfile)\n- [`0.10.0`, `0.10.0-apache`](https://github.com/ckulka/baikal-docker/blob/0.10.0/apache.dockerfile)\n- [`0.10.0-apache-php8.2`, `0.10.0-php8.2`](https://github.com/ckulka/baikal-docker/blob/0.10.0/apache-php8.2.dockerfile)\n- [`0.10.0-nginx`](https://github.com/ckulka/baikal-docker/blob/0.10.0/nginx.dockerfile)\n- [`0.10.0-nginx-php8.2`](https://github.com/ckulka/baikal-docker/blob/0.10.0/nginx-php8.2.dockerfile)\n- [`0.9.5`, `0.9.5-apache`](https://github.com/ckulka/baikal-docker/blob/0.9.5/apache.dockerfile)\n- [`0.9.5-apache-php8.2`, `0.9.5-php8.2`](https://github.com/ckulka/baikal-docker/blob/0.9.5/apache-php8.2.dockerfile)\n- [`0.9.5-nginx`](https://github.com/ckulka/baikal-docker/blob/0.9.5/nginx.dockerfile)\n- [`0.9.5-nginx-php8.2`](https://github.com/ckulka/baikal-docker/blob/0.9.5/nginx-php8.2.dockerfile)\n\nFor earlier versions all the way back to version 0.2.7, please search in the [tags](https://hub.docker.com/r/ckulka/baikal/tags) tab. Version 0.4.5 and older are only available for `amd64`. Version 0.9.0 and older do not support `i386`.\n\n## Quick reference\n\n- **Where to file issues**:\n  [https://github.com/ckulka/baikal-docker/issues](https://github.com/ckulka/baikal-docker/issues)\n- **Supported architectures** ([more info](https://github.com/docker-library/official-images#architectures-other-than-amd64)):\n  `amd64`, `arm32v7`, `arm64v8`, `i386`\n- **Image updates**:\n  [PRs for ckulka/baikal-docker](https://github.com/ckulka/baikal-docker/pulls)\n- **Source of this description**:\n  [https://github.com/ckulka/baikal-docker](https://github.com/ckulka/baikal-docker)\n\n## What is Baikal?\n\nFrom [sabre.io/baikal](http://sabre.io/baikal/):\n\n\u003e Baikal is a Cal and CardDAV server, based on sabre/dav, that includes an administrative interface for easy management.\n\u003e\n\u003e For more information, read the main website at baikal-server.com.\n\u003e\n\u003e Baikal is developed by Net Gusto and fruux.\n\n## How to use this image\n\nThe following command will start Baikal:\n\n```bash\ndocker run --rm -it -p 80:80 ckulka/baikal:nginx\n```\n\nAlternatively, use the provided [examples/docker-compose.yaml](https://github.com/ckulka/baikal-docker/blob/master/examples/docker-compose.yaml) from the Git repository:\n\n```bash\ndocker compose up\n```\n\nYou can now open [http://localhost](http://localhost) or [http://host-ip](http://host-ip) in your browser and use Baikal.\n\n### Persistent Data\n\nThe image exposes the `/var/www/baikal/Specific` and `/var/www/baikal/config` folders, which contain the persistent data. These folders should be part of a regular backup.\n\nIf you want to use local folders instead of Docker volumes, see [examples/docker-compose.localvolumes.yaml](https://github.com/ckulka/baikal-docker/blob/master/examples/docker-compose.localvolumes.yaml) to avoid file permission issues.\n\nWhen the container starts, the startup script `/docker-entrypoint.d/40-fix-baikal-file-permissions.sh` ([Apache httpd](https://github.com/ckulka/baikal-docker/blob/master/files/docker-entrypoint.d/httpd/40-fix-baikal-file-permissions.sh), [nginx](https://github.com/ckulka/baikal-docker/blob/master/files/docker-entrypoint.d/nginx/40-fix-baikal-file-permissions.sh)) ensures that the file permissions are correct. You can disable this behaviour by setting the environment variable `BAIKAL_SKIP_CHOWN` to any value, e.g. `FALSE`.\n\n### Further Guides\n\nYou can find more installation and configuration guides here:\n\n- [Email Guide](https://github.com/ckulka/baikal-docker/blob/master/docs/email-guide.md)\n- [Home Assistant Fix](https://github.com/ckulka/baikal-docker/blob/master/docs/home-assistant-fix.md)\n- [SSL Certificate Guide](https://github.com/ckulka/baikal-docker/blob/master/docs/ssl-certificates-guide.md)\n- [systemd Guide](https://github.com/ckulka/baikal-docker/blob/master/docs/systemd-guide.md)\n- [Unraid Installation Guide](https://github.com/ckulka/baikal-docker/blob/master/docs/unraid-installation-guide.md)\n\n## Image Variants\n\nThe `ckulka/baikal` images come in several flavors, each designed for a specific use case.\n\n### `ckulka/baikal:\u003cversion\u003e`\n\nThis is the defacto image and follows the official guidelines the closest using Apache httpd.\n\nWith that being said, it's worth checking out the `nginx` variant as it requires fewer resources and produces no warning messages out-of-the-box.\n\nIf you are unsure about what your needs are, you probably want to use this one though.\n\n### `ckulka/baikal:apache`\n\nThis image relies on Apache httpd and uses the [official PHP image](https://hub.docker.com/_/php/) that's packaged with the Apache web server.\n\nIt also ships with HTTPS support and self-signed certificates, which can be replaced by user-provided certificates - for more details, see the [SSL Certificate Guide](https://github.com/ckulka/baikal-docker/blob/master/docs/ssl-certificates-guide.md).\n\nThis image uses environment variables to set Apache's `ServerName` and `ServerAlias` directives to avoid Apache httpd's warnings in the logs.\n\nThe `BAIKAL_SERVERNAME` environment variable is used to set the global `ServerName` directive, e.g. `dav.example.io`. For more details, see [Apache Core Features: ServerName Directive](https://httpd.apache.org/docs/2.4/mod/core.html#servername).\n\nThe `BAIKAL_SERVERALIAS` environment variable is used to set the `ServerAlias` directive of the `VirtualHost`s, e.g. `dav.example.org dav.example.com`. For more details, see [Apache Core Features: ServerAlias Directive](https://httpd.apache.org/docs/2.4/mod/core.html#serveralias).\n\n### `ckulka/baikal:experimental`\n\nThis image has the latest code from the source repository [ckulka/baikal-docker](https://github.com/ckulka/baikal-docker), mainly used for testing before a version is released. Use this at your own risk.\n\n### `ckulka/baikal:nginx`\n\nThis image relies on [nginx](https://www.nginx.com/) and uses the [official nginx image](https://hub.docker.com/_/nginx/).\n\nCompared to the Apache variant, it is significantly smaller (less than half the size) and produces no warning messages out-of-the-box.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fckulka%2Fbaikal-docker","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fckulka%2Fbaikal-docker","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fckulka%2Fbaikal-docker/lists"}