.aws | ||
.github | ||
docker-generateconfig | ||
.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 | ||
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
- install docker and docker-compose https://docs.docker.com/compose/install/linux/
Usage
-
start stand - at the first run the directories
etc/
of configuration files andstorage/
for data storage will be generated:For Linux, MacOS and other nix* systems:
make start
For Windows (Run this in PowerShell, not cmd.exe):
# Generate config docker build -t generateconfig -f Dockerfile-generateconfig . docker run --rm -v ${PWD}/etc:/opt/processing/etc --name any-sync-generator generateconfig # Run containers docker compose up -d
-
stop stand:
make stop
-
restart stand:
make restart
-
update image versions and start:
make update
-
clean unused docker objects:
make clean
-
clean config and storage files - deleting data for redis, mongo, s3, any-sync-*:
make cleanEtcStorage
-
show logs:
docker-compose logs -f any-sync-node docker-compose logs -f any-sync-filenode docker-compose logs -f
-
attach to container:
docker compose exec mongo-1 bash docker compose exec any-sync-node-1 bash docker compose exec any-sync-coordinator bash
-
restart certain container:
docker compose restart any-sync-node-1
-
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 these pages:
- stable versions, used in production
- unstable versions, used in test stand
"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.