diff --git a/.github/workflows/build-self-host-docker-images.yml b/.github/workflows/build-self-host-docker-images.yml index 5f1503781..51548174d 100644 --- a/.github/workflows/build-self-host-docker-images.yml +++ b/.github/workflows/build-self-host-docker-images.yml @@ -39,71 +39,71 @@ jobs: with: platforms: linux/amd64,linux/arm64 push: true - tags: ghcr.io/omnivore-app/sh-web:latest,ghcr.io/omnivore-app/sh-web:${{ github.sha }} + tags: ghcr.io/omnivore-app/sh-web:latest file: packages/web/Dockerfile-self - cache-from: type=registry,ref=ghcr.io/omnivore-app/sh-web:${{ github.sha }} - cache-to: type=registry,ref=ghcr.io/omnivore-app/sh-web:${{ github.sha }},mode=max + cache-from: type=registry,ref=ghcr.io/omnivore-app/sh-web:cache + cache-to: type=registry,ref=ghcr.io/omnivore-app/sh-web:cache,mode=max - name: Build and push image-proxy uses: docker/build-push-action@v6 with: platforms: linux/amd64,linux/arm64 push: true - tags: ghcr.io/omnivore-app/sh-image-proxy:latest,ghcr.io/omnivore-app/sh-image-proxy:${{ github.sha }} + tags: ghcr.io/omnivore-app/sh-image-proxy:latest context: imageproxy/ file: imageproxy/Dockerfile - cache-from: type=registry,ref=ghcr.io/omnivore-app/sh-image-proxy:${{ github.sha }} - cache-to: type=registry,ref=ghcr.io/omnivore-app/sh-image-proxy:${{ github.sha }},mode=max + cache-from: type=registry,ref=ghcr.io/omnivore-app/sh-image-proxy:cache + cache-to: type=registry,ref=ghcr.io/omnivore-app/sh-image-proxy:cache,mode=max - name: Build and push content-fetch uses: docker/build-push-action@v6 with: platforms: linux/amd64,linux/arm64 push: true - tags: ghcr.io/omnivore-app/sh-content-fetch:latest,ghcr.io/omnivore-app/sh-content-fetch:${{ github.sha }} + tags: ghcr.io/omnivore-app/sh-content-fetch:latest file: packages/content-fetch/Dockerfile - cache-from: type=registry,ref=ghcr.io/omnivore-app/sh-content-fetch:${{ github.sha }} - cache-to: type=registry,ref=ghcr.io/omnivore-app/sh-content-fetch:${{ github.sha }},mode=max + cache-from: type=registry,ref=ghcr.io/omnivore-app/sh-content-fetch:cache + cache-to: type=registry,ref=ghcr.io/omnivore-app/sh-content-fetch:cache,mode=max - name: Build and push migrate uses: docker/build-push-action@v6 with: platforms: linux/amd64,linux/arm64 push: true - tags: ghcr.io/omnivore-app/sh-migrate:latest,ghcr.io/omnivore-app/sh-migrate:${{ github.sha }} + tags: ghcr.io/omnivore-app/sh-migrate:latest file: packages/db/Dockerfile - cache-from: type=registry,ref=ghcr.io/omnivore-app/sh-migrate:${{ github.sha }} - cache-to: type=registry,ref=ghcr.io/omnivore-app/sh-migrate:${{ github.sha }},mode=max + cache-from: type=registry,ref=ghcr.io/omnivore-app/sh-migrate:cache + cache-to: type=registry,ref=ghcr.io/omnivore-app/sh-migrate:cache,mode=max - name: Build and push local-mail-watcher uses: docker/build-push-action@v6 with: platforms: linux/amd64,linux/arm64 push: true - tags: ghcr.io/omnivore-app/sh-local-mail-watcher:latest,ghcr.io/omnivore-app/sh-local-mail-watcher:${{ github.sha }} + tags: ghcr.io/omnivore-app/sh-local-mail-watcher:latest file: packages/local-mail-watcher/Dockerfile - cache-from: type=registry,ref=ghcr.io/omnivore-app/sh-local-mail-watcher:${{ github.sha }} - cache-to: type=registry,ref=ghcr.io/omnivore-app/sh-local-mail-watcher:${{ github.sha }},mode=max + cache-from: type=registry,ref=ghcr.io/omnivore-app/sh-local-mail-watcher:cache + cache-to: type=registry,ref=ghcr.io/omnivore-app/sh-local-mail-watcher:cache,mode=max - name: Build and push backend uses: docker/build-push-action@v6 with: platforms: linux/amd64,linux/arm64 push: true - tags: ghcr.io/omnivore-app/sh-backend:latest,ghcr.io/omnivore-app/sh-backend:${{ github.sha }} + tags: ghcr.io/omnivore-app/sh-backend:latest file: packages/api/Dockerfile - cache-from: type=registry,ref=ghcr.io/omnivore-app/sh-backend:${{ github.sha }} - cache-to: type=registry,ref=ghcr.io/omnivore-app/sh-backend:${{ github.sha }},mode=max + cache-from: type=registry,ref=ghcr.io/omnivore-app/sh-backend:cache + cache-to: type=registry,ref=ghcr.io/omnivore-app/sh-backend:cache,mode=max - name: Build and push queue-processor uses: docker/build-push-action@v6 with: platforms: linux/amd64,linux/arm64 push: true - tags: ghcr.io/omnivore-app/sh-queue-processor:latest,ghcr.io/omnivore-app/sh-queue-processor:${{ github.sha }} + tags: ghcr.io/omnivore-app/sh-queue-processor:latest file: packages/api/queue-processor/Dockerfile - cache-from: type=registry,ref=ghcr.io/omnivore-app/sh-queue-processor:${{ github.sha }} - cache-to: type=registry,ref=ghcr.io/omnivore-app/sh-queue-processor:${{ github.sha }},mode=max + cache-from: type=registry,ref=ghcr.io/omnivore-app/sh-queue-processor:cache + cache-to: type=registry,ref=ghcr.io/omnivore-app/sh-queue-processor:cache,mode=max diff --git a/self-hosting/GUIDE.md b/self-hosting/GUIDE.md index 531ee2af0..0c7ee9738 100644 --- a/self-hosting/GUIDE.md +++ b/self-hosting/GUIDE.md @@ -42,36 +42,16 @@ The following environment variables should be changed to reflect where you are r | BASE URL | The URL of the Front End of the Application. | http://localhost:3000 | | SERVER_BASE_URL | The URL of the API Server. | http://localhost:4000 | | HIGHLIGHTS_BASE_URL | The URL of the Front end of the Application | http://localhost:3000 | -| NEXT_PUBLIC_BASE_URL | Same as above BASE URL, but for NEXT | http://localhost:3000 | -| NEXT_PUBLIC_SERVER_BASE_URL | Same as above SERVER_BASE_URL, but for NEXT | http://localhost:4000 | -| NEXT_PUBLIC_HIGHLIGHTS_BASE_URL | Same as above HIGHLIGHTS_BASE_URL but for NEXT | http://localhost:3000 | | CLIENT_URL | The URL of the Front end of the Application | http://localhost:3000 | | IMAGEPROXY_URL | Service that proxies images to avoid blocking | http://localhost:7070 | -Additionally, when doing a docker-compose build, if you are hosting this application you must change the args in the `docker-compose` file. - -```yaml -web: - build: - context: ../../ - dockerfile: ./packages/web/Dockerfile-self -args: - - APP_ENV=prod - - BASE_URL=http://localhost:3000 - - SERVER_BASE_URL=http://localhost:4000 - - HIGHLIGHTS_BASE_URL=http://localhost:3000 -``` - They are the same as the listed environment variables above. -### 4. Build the docker images. -Running `docker compose build` will go through and build all the necessary docker images. +### 4. Start the service. -### 5. Start the service. - -Running `docker compose up` will start the services. +Running `docker compose up` will pull the images from the github, and then start the services. During the first deployment omnivore-migrate will go through and set up the necessary Postgres tables. This will also create a demo user with email: demo@omnivore.app, password: demo_password. @@ -301,7 +281,7 @@ Following these steps you should see your email imported into Omnivore. ## Youtube Transcripts -Omnivore has the ability to process Youtube Transcripts, using OpenAI to add the necessary grammar, and structure. +Omnivore has the ability to process YouTube Transcripts, using OpenAI to add the necessary grammar, and structure. ### Guide: diff --git a/self-hosting/docker-compose/.env.example b/self-hosting/docker-compose/.env.example index ffc4c7c94..f414eb7d0 100644 --- a/self-hosting/docker-compose/.env.example +++ b/self-hosting/docker-compose/.env.example @@ -45,13 +45,9 @@ SNS_ARN=arn_of_sns #for if you use SES and SNS for Email. # Web APP_ENV=prod -NEXT_PUBLIC_APP_ENV=prod BASE_URL=http://localhost:3000 # Front End - Need to change this when using NGINX SERVER_BASE_URL=http://localhost:4000 # API Server, need to change this when using NGINX HIGHLIGHTS_BASE_URL=http://localhost:3000 # Front End - Need to change this when using NGINX -NEXT_PUBLIC_BASE_URL=http://localhost:3000 # Front End - Need to change this when using NGINX -NEXT_PUBLIC_SERVER_BASE_URL=http://localhost:4000 # API Server, need to change this when using NGINX -NEXT_PUBLIC_HIGHLIGHTS_BASE_URL=http://localhost:3000 # Front End - Need to change this when using NGINX # Content Fetch