.aws | ||
.github | ||
etc | ||
.env | ||
.gitignore | ||
docker-compose-generateconfig.yml | ||
docker-compose.any-sync-consensusnode.yml | ||
docker-compose.any-sync-coordinator.yml | ||
docker-compose.any-sync-filenode.yml | ||
docker-compose.any-sync-node-1.yml | ||
docker-compose.any-sync-node-all.yml | ||
docker-compose.yml | ||
Dockerfile | ||
Dockerfile-generateconfig | ||
gen.sh | ||
LICENSE.md | ||
Makefile | ||
README.md |
Docker-compose for any-sync
Self-host for any-sync, designed for review and testing purposes.
Important
please don't use it for production!
Prepare
-
Create a personal access token:
- go to https://github.com/settings/tokens/
- push "generate new token (classic)" minimal permissions "read:packages"
-
login in ghcr.io:
echo <you token>| docker login ghcr.io -u <github username> --password-stdin
-
install docker and docker compose https://docs.docker.com/compose/install/linux/
usage
-
start stand:
make start
-
stop stand:
make stop
-
restart stand:
make restart
-
update image versions and start:
make update
-
clean unused docker objects:
make clean
-
clean tmp files - deleting data for redis, mongo, s3, any-sync-*:
make cleanTmp
-
show logs:
docker-compose logs -f any-sync-node docker-compose logs -f any-sync-filenode docker-compose logs -f
-
attach to vm:
docker compose exec mongo-1 bash docker compose exec any-sync-node-1 bash docker compose exec any-sync-coordinator bash
-
get current network config
docker compose exec mongo-1 mongosh coordinator db.nodeConf.find().sort( { _id: -1 } ).limit(1)
Set specific versions
Use file .env
Compatible versions
You can find compatible versions on this pages:
- stable versions, used in production - https://puppetdoc.anytype.io/api/v1/prod-any-sync-compatible-versions/
- unstable versions, used in test stand - https://puppetdoc.anytype.io/api/v1/stage1-any-sync-compatible-versions/
"local build" images usage
If you need to create local build binaries for any-sync-*, you can do so by using the "overrides" functionality in docker-compose.
- clone repos
install -d repos && for REPO in any-sync-{node,filenode,coordinator,consensusnode}; do if [[ ! -d repos/$REPO ]]; then git clone git@github.com:anyproto/${REPO}.git repos/$REPO; fi; done
- to create a symlink for the "override file," you can either create it yourself as docker-compose.override.yml or use an existing one
ln -F -s docker-compose.any-sync-node-1.yml docker-compose.override.yml
- restart docker compose
make restart
Contribution
Thank you for your desire to develop Anytype together!
❤️ This project and everyone involved in it is governed by the Code of Conduct.
🧑💻 Check out our contributing guide to learn about asking questions, creating issues, or submitting pull requests.
🫢 For security findings, please email security@anytype.io and refer to our security guide for more information.
🤝 Follow us on Github and join the Contributors Community.
Made by Any — a Swiss association 🇨🇭
Licensed under MIT.