diff --git a/docs/docs/.vitepress/sidebar.ts b/docs/docs/.vitepress/sidebar.ts index 713dc1b10..683432ba2 100644 --- a/docs/docs/.vitepress/sidebar.ts +++ b/docs/docs/.vitepress/sidebar.ts @@ -74,6 +74,23 @@ export const sidebar = [ }, ], }, + { + text: "Self hosting", + collapsed: true, + items: [ + { text: "Getting started", link: "/self-hosting/" }, + { + text: "Guides", + items: [ + { text: "Introduction", link: "/self-hosting/guides/" }, + { + text: "System requirements", + link: "/self-hosting/guides/system-requirements", + }, + ], + }, + ], + }, { text: "About", link: "/about/", diff --git a/docs/docs/self-hosting/guides/index.md b/docs/docs/self-hosting/guides/index.md new file mode 100644 index 000000000..9f3cd8f5e --- /dev/null +++ b/docs/docs/self-hosting/guides/index.md @@ -0,0 +1,9 @@ +--- +title: Self Hosting +description: Guides for self hosting Ente Photos and/or Ente Auth +--- + +# Guides + +If you've figured out how to do something, help others out by adding +walkthroughs, tutorials and other FAQ pages in this directory. diff --git a/docs/docs/self-hosting/guides/system-requirements.md b/docs/docs/self-hosting/guides/system-requirements.md new file mode 100644 index 000000000..d59df1c47 --- /dev/null +++ b/docs/docs/self-hosting/guides/system-requirements.md @@ -0,0 +1,14 @@ +--- +title: System requirements +description: System requirements for running Ente's server +--- + +# System requirements + +There aren't any "minimum" system requirements as such, the server process is +very light weight - it's just a single go binary, and it doesn't do any server +side ML, so I feel it should be able to run on anything reasonable. + +We've used the server quite easily on small cloud instances, old laptops etc. A +community member also reported being able to run the server on [very low-end +embedded devices](https://github.com/ente-io/ente/discussions/594). diff --git a/docs/docs/self-hosting/index.md b/docs/docs/self-hosting/index.md new file mode 100644 index 000000000..2f72629c1 --- /dev/null +++ b/docs/docs/self-hosting/index.md @@ -0,0 +1,64 @@ +--- +title: Self Hosting +description: Getting started self hosting Ente Photos and/or Ente Auth +--- + +# Self Hosting + +The entire source code for Ente is open source, including the servers. This is +the same code we use for our own cloud service. + +> [!TIP] +> +> To get some context, you might find our [blog +> post](https://ente.io/blog/open-sourcing-our-server/) announcing the open +> sourcing of our server useful. + +## Getting started + +Start the server + +```sh +git clone https://github.com/ente-io/ente +cd ente/server +docker compose up --build +``` + +Then in a separate terminal, you can run (e.g) the web client + +```sh +cd ente/web +git submodule update --init --recursive +yarn install +NEXT_PUBLIC_ENTE_ENDPOINT=http://localhost:8080 yarn dev +``` + +That's about it. If you open http://localhost:3000, you will be able to create +an account on a Ente Photos web app running on your machine, and this web app +will be connecting to the server running on your local machine at +localhost:8080. + +## Next steps + +* More details about the server are in its + [README](https://github.com/ente-io/ente/tree/main/server#readme) + +* More details about running the server (with or without Docker) are in + [RUNNING](https://github.com/ente-io/ente/blob/main/server/RUNNING.md) + +* If you have questions around self-hosting that are not answered in any of the + existing documentation, you can ask in our [GitHub + Discussions](https://github.com/ente-io/ente/discussions). **Please remember + to search first if the query has been already asked and answered.** + +## Contributing! + +While we would love to provide a completely seamless self-hosting experience, +right now we do not have the engineering bandwidth to answer all queries, +document everything exactly etc. We will try (that's why we're writing this!), +but we also hope that community members will step up to fill any gaps. + +One particular way in which you can help is by adding new [guides](guides/) on +this help site. The documentation is written in Markdown and adding new pages is +[easy](https://github.com/ente-io/ente/tree/main/docs#readme). Editing existing +pages is even easier: at the bottom of each page is an _Edit this page_ link.