diff --git a/README.md b/README.md index a09ae39..6da1b27 100644 --- a/README.md +++ b/README.md @@ -15,7 +15,7 @@ $ pnpm dev $ pnpm build ``` -## Bootstrapping +## Production Setup Run the following command to bootstrap a **phCD** instance. As this service doesn't have auth for now, it's strongly recommended to publish only on a local ip like `127.0.0.1` and then access directly or via an ssh tunnel (something like `ssh -L 8080:127.0.0.1:8080 server`). @@ -45,21 +45,21 @@ $ docker run -d \ ### Updating -```bash -$ git pull +Just pull changes and update the docker image, then use the command from before to restart the main container. -$ docker stop phcd -$ docker built . -t phcd -$ docker run -d \ - --name phcd \ - --restart unless-stopped \ - -p 127.0.0.1:8080:4321 \ - -v /var/run/docker.sock:/var/run/docker.sock \ - -v ./data.local:/app/data.local \ - -v ./config.yaml:/app/config.yaml \ - phcd +```bash +git pull +docker stop phcd +docker rm phcd +docker built . -t phcd ``` +### TODO: Self-Updating + +It should be possible to deploy itself using a git+dockerfile deployment. For now this is more complicated as this requires to stop itself and spawn a new docker container of itself. + +~~**Idea 1.** Create another `self-update.Dockerfile` that also gets mounted `/var/run/docker.sock`, this new container will then run the previous commands~~ [...] if we want the volume to be a folder this cannot be easily done + ## Architecture Everything is stored in the `config.yaml` file. This file contains a list of projects to deploy and the configuration for each one.