Merge pull request #205 from AppFlowy-IO/doc/optional
feat: update optional component of deployment
This commit is contained in:
commit
efdd35a242
|
|
@ -58,7 +58,8 @@ GOTRUE_JWT_SECRET=hello456
|
||||||
# or else no user will be able to be authenticated
|
# or else no user will be able to be authenticated
|
||||||
GOTRUE_MAILER_AUTOCONFIRM=true
|
GOTRUE_MAILER_AUTOCONFIRM=true
|
||||||
|
|
||||||
# if you enable mail confirmation, you need to set the SMTP configuration below
|
# If you require mail confirmation, you need to set the SMTP configuration below
|
||||||
|
# and set `GOTRUE_MAILER_AUTOCONFIRM` to be false
|
||||||
GOTRUE_SMTP_HOST=smtp.gmail.com
|
GOTRUE_SMTP_HOST=smtp.gmail.com
|
||||||
GOTRUE_SMTP_PORT=465
|
GOTRUE_SMTP_PORT=465
|
||||||
GOTRUE_SMTP_USER=user1@example.com
|
GOTRUE_SMTP_USER=user1@example.com
|
||||||
|
|
@ -114,9 +115,19 @@ GOTRUE_EXTERNAL_DISCORD_SECRET=your-discord-secret
|
||||||
GOTRUE_EXTERNAL_DISCORD_REDIRECT_URI=http://your-host/gotrue/callback
|
GOTRUE_EXTERNAL_DISCORD_REDIRECT_URI=http://your-host/gotrue/callback
|
||||||
```
|
```
|
||||||
|
|
||||||
### 3. Running the services
|
### 3. Optional Services
|
||||||
|
Some services in `docker-compose.yml` are optinal and can be commented out if you dont need them, the will be marked as `Optional`
|
||||||
|
- `pgadmin` (Web UI configured easy view into deployed postgres database)
|
||||||
|
- `portainer`/`portainer_init` (Web UI for providing some monitoring and ease of container management)
|
||||||
|
- `tunnel` (cloud flare tunnel: provide secure way to connect appflowy to Cloudflare without a publicly routable IP address)
|
||||||
|
- `admin_frontend` (admin portal to manage accounts and adding authentication method, recommended to keep)
|
||||||
|
If you did not deploy an optional component, else the nginx server will not start properly
|
||||||
|
1. comment out the corresponding `depends_on` in `nginx` service in file `docker-compose.yml`
|
||||||
|
2. comment out the corresponding `location` section in file `nginx/nginx.conf`
|
||||||
|
|
||||||
### Start and run AppFlowy-Cloud
|
### 4. Running the services
|
||||||
|
|
||||||
|
#### Start and run AppFlowy-Cloud
|
||||||
- The following command will build and start the AppFlowy-Cloud.
|
- The following command will build and start the AppFlowy-Cloud.
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
|
|
|
||||||
|
|
@ -1,13 +1,5 @@
|
||||||
version: '3'
|
version: '3'
|
||||||
services:
|
services:
|
||||||
portainer:
|
|
||||||
restart: on-failure
|
|
||||||
image: portainer/portainer-ce:latest
|
|
||||||
ports:
|
|
||||||
- 9442:9000
|
|
||||||
volumes:
|
|
||||||
- /var/run/docker.sock:/var/run/docker.sock
|
|
||||||
|
|
||||||
minio:
|
minio:
|
||||||
restart: on-failure
|
restart: on-failure
|
||||||
image: minio/minio
|
image: minio/minio
|
||||||
|
|
@ -31,19 +23,6 @@ services:
|
||||||
volumes:
|
volumes:
|
||||||
- ./migrations/before:/docker-entrypoint-initdb.d
|
- ./migrations/before:/docker-entrypoint-initdb.d
|
||||||
|
|
||||||
pgadmin:
|
|
||||||
restart: on-failure
|
|
||||||
image: dpage/pgadmin4
|
|
||||||
depends_on:
|
|
||||||
- postgres
|
|
||||||
environment:
|
|
||||||
- PGADMIN_DEFAULT_EMAIL=${PGADMIN_DEFAULT_EMAIL}
|
|
||||||
- PGADMIN_DEFAULT_PASSWORD=${PGADMIN_DEFAULT_PASSWORD}
|
|
||||||
ports:
|
|
||||||
- 5400:80
|
|
||||||
volumes:
|
|
||||||
- ./docker/pgadmin/servers.json:/pgadmin4/servers.json
|
|
||||||
|
|
||||||
redis:
|
redis:
|
||||||
restart: on-failure
|
restart: on-failure
|
||||||
image: redis
|
image: redis
|
||||||
|
|
@ -93,4 +72,26 @@ services:
|
||||||
- GOTRUE_METRICS_ENABLED=true
|
- GOTRUE_METRICS_ENABLED=true
|
||||||
- GOTRUE_METRICS_EXPORTER=prometheus
|
- GOTRUE_METRICS_EXPORTER=prometheus
|
||||||
ports:
|
ports:
|
||||||
- 9998:9999
|
- 9998:9999
|
||||||
|
|
||||||
|
portainer:
|
||||||
|
restart: on-failure
|
||||||
|
image: portainer/portainer-ce:latest
|
||||||
|
ports:
|
||||||
|
- 9442:9000
|
||||||
|
volumes:
|
||||||
|
- /var/run/docker.sock:/var/run/docker.sock
|
||||||
|
|
||||||
|
pgadmin:
|
||||||
|
restart: on-failure
|
||||||
|
image: dpage/pgadmin4
|
||||||
|
depends_on:
|
||||||
|
- postgres
|
||||||
|
environment:
|
||||||
|
- PGADMIN_DEFAULT_EMAIL=${PGADMIN_DEFAULT_EMAIL}
|
||||||
|
- PGADMIN_DEFAULT_PASSWORD=${PGADMIN_DEFAULT_PASSWORD}
|
||||||
|
ports:
|
||||||
|
- 5400:80
|
||||||
|
volumes:
|
||||||
|
- ./docker/pgadmin/servers.json:/pgadmin4/servers.json
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -1,40 +1,12 @@
|
||||||
version: '3'
|
version: '3'
|
||||||
services:
|
services:
|
||||||
tunnel:
|
|
||||||
image: cloudflare/cloudflared
|
|
||||||
restart: unless-stopped
|
|
||||||
command: tunnel --no-autoupdate run
|
|
||||||
environment:
|
|
||||||
- TUNNEL_TOKEN=${CLOUDFLARE_TUNNEL_TOKEN}
|
|
||||||
depends_on:
|
|
||||||
- nginx
|
|
||||||
|
|
||||||
portainer:
|
|
||||||
restart: on-failure
|
|
||||||
image: portainer/portainer-ce:latest
|
|
||||||
ports:
|
|
||||||
- 9442:9000
|
|
||||||
volumes:
|
|
||||||
- /var/run/docker.sock:/var/run/docker.sock
|
|
||||||
|
|
||||||
portainer_init:
|
|
||||||
depends_on:
|
|
||||||
- portainer
|
|
||||||
image: alpine/curl
|
|
||||||
restart: on-failure
|
|
||||||
environment:
|
|
||||||
- PORTAINER_PASSWORD=${PORTAINER_PASSWORD}
|
|
||||||
volumes:
|
|
||||||
- ./docker/portainer/setup.sh:/setup.sh
|
|
||||||
command: ./setup.sh
|
|
||||||
|
|
||||||
nginx:
|
nginx:
|
||||||
restart: on-failure
|
restart: on-failure
|
||||||
image: nginx
|
image: nginx
|
||||||
ports:
|
ports:
|
||||||
- 80:80
|
- 80:80
|
||||||
- 443:443
|
- 443:443
|
||||||
depends_on:
|
depends_on: # If you did not deploy any of the services below, comment those out
|
||||||
- minio
|
- minio
|
||||||
- appflowy_cloud
|
- appflowy_cloud
|
||||||
- gotrue
|
- gotrue
|
||||||
|
|
@ -45,6 +17,7 @@ services:
|
||||||
- ./nginx/ssl/certificate.crt:/etc/nginx/ssl/certificate.crt
|
- ./nginx/ssl/certificate.crt:/etc/nginx/ssl/certificate.crt
|
||||||
- ./nginx/ssl/private_key.key:/etc/nginx/ssl/private_key.key
|
- ./nginx/ssl/private_key.key:/etc/nginx/ssl/private_key.key
|
||||||
|
|
||||||
|
# You do not need this if you have configured to use your own s3 file storage
|
||||||
minio:
|
minio:
|
||||||
restart: on-failure
|
restart: on-failure
|
||||||
image: minio/minio
|
image: minio/minio
|
||||||
|
|
@ -71,19 +44,6 @@ services:
|
||||||
- ./migrations/before:/docker-entrypoint-initdb.d
|
- ./migrations/before:/docker-entrypoint-initdb.d
|
||||||
- postgres_data:/var/lib/postgresql/data
|
- postgres_data:/var/lib/postgresql/data
|
||||||
|
|
||||||
pgadmin:
|
|
||||||
restart: on-failure
|
|
||||||
image: dpage/pgadmin4
|
|
||||||
depends_on:
|
|
||||||
- postgres
|
|
||||||
environment:
|
|
||||||
- PGADMIN_DEFAULT_EMAIL=${PGADMIN_DEFAULT_EMAIL}
|
|
||||||
- PGADMIN_DEFAULT_PASSWORD=${PGADMIN_DEFAULT_PASSWORD}
|
|
||||||
ports:
|
|
||||||
- 5400:80
|
|
||||||
volumes:
|
|
||||||
- ./docker/pgadmin/servers.json:/pgadmin4/servers.json
|
|
||||||
|
|
||||||
redis:
|
redis:
|
||||||
restart: on-failure
|
restart: on-failure
|
||||||
image: redis
|
image: redis
|
||||||
|
|
@ -164,6 +124,7 @@ services:
|
||||||
ports:
|
ports:
|
||||||
- 8000:8000
|
- 8000:8000
|
||||||
|
|
||||||
|
# Optional
|
||||||
admin_frontend:
|
admin_frontend:
|
||||||
restart: on-failure
|
restart: on-failure
|
||||||
build:
|
build:
|
||||||
|
|
@ -175,6 +136,51 @@ services:
|
||||||
ports:
|
ports:
|
||||||
- 3000:3000
|
- 3000:3000
|
||||||
|
|
||||||
|
# Optional
|
||||||
|
tunnel:
|
||||||
|
image: cloudflare/cloudflared
|
||||||
|
restart: unless-stopped
|
||||||
|
command: tunnel --no-autoupdate run
|
||||||
|
environment:
|
||||||
|
- TUNNEL_TOKEN=${CLOUDFLARE_TUNNEL_TOKEN}
|
||||||
|
depends_on:
|
||||||
|
- nginx
|
||||||
|
|
||||||
|
# Optional
|
||||||
|
portainer:
|
||||||
|
restart: on-failure
|
||||||
|
image: portainer/portainer-ce:latest
|
||||||
|
ports:
|
||||||
|
- 9442:9000
|
||||||
|
volumes:
|
||||||
|
- /var/run/docker.sock:/var/run/docker.sock
|
||||||
|
|
||||||
|
# Optional
|
||||||
|
portainer_init:
|
||||||
|
depends_on:
|
||||||
|
- portainer
|
||||||
|
image: alpine/curl
|
||||||
|
restart: on-failure
|
||||||
|
environment:
|
||||||
|
- PORTAINER_PASSWORD=${PORTAINER_PASSWORD}
|
||||||
|
volumes:
|
||||||
|
- ./docker/portainer/setup.sh:/setup.sh
|
||||||
|
command: ./setup.sh
|
||||||
|
|
||||||
|
# Optional
|
||||||
|
pgadmin:
|
||||||
|
restart: on-failure
|
||||||
|
image: dpage/pgadmin4
|
||||||
|
depends_on:
|
||||||
|
- postgres
|
||||||
|
environment:
|
||||||
|
- PGADMIN_DEFAULT_EMAIL=${PGADMIN_DEFAULT_EMAIL}
|
||||||
|
- PGADMIN_DEFAULT_PASSWORD=${PGADMIN_DEFAULT_PASSWORD}
|
||||||
|
ports:
|
||||||
|
- 5400:80
|
||||||
|
volumes:
|
||||||
|
- ./docker/pgadmin/servers.json:/pgadmin4/servers.json
|
||||||
|
|
||||||
volumes:
|
volumes:
|
||||||
postgres_data:
|
postgres_data:
|
||||||
minio_data:
|
minio_data:
|
||||||
|
|
|
||||||
|
|
@ -59,6 +59,7 @@ http {
|
||||||
|
|
||||||
# Minio Web UI
|
# Minio Web UI
|
||||||
# Derive from: https://min.io/docs/minio/linux/integrations/setup-nginx-proxy-with-minio.html
|
# Derive from: https://min.io/docs/minio/linux/integrations/setup-nginx-proxy-with-minio.html
|
||||||
|
# Optional Module, comment this section if you are did not deploy minio in docker-compose.yml
|
||||||
location /minio/ {
|
location /minio/ {
|
||||||
rewrite ^/minio/(.*) /$1 break;
|
rewrite ^/minio/(.*) /$1 break;
|
||||||
proxy_set_header Host $http_host;
|
proxy_set_header Host $http_host;
|
||||||
|
|
@ -86,6 +87,7 @@ http {
|
||||||
}
|
}
|
||||||
|
|
||||||
# PgAdmin
|
# PgAdmin
|
||||||
|
# Optional Module, comment this section if you are did not deploy pgadmin in docker-compose.yml
|
||||||
location /pgadmin/ {
|
location /pgadmin/ {
|
||||||
proxy_set_header X-Script-Name /pgadmin;
|
proxy_set_header X-Script-Name /pgadmin;
|
||||||
proxy_set_header X-Scheme $scheme;
|
proxy_set_header X-Scheme $scheme;
|
||||||
|
|
@ -95,11 +97,13 @@ http {
|
||||||
}
|
}
|
||||||
|
|
||||||
# Portainer
|
# Portainer
|
||||||
|
# Optional Module, comment this section if you are did not deploy portainer in docker-compose.yml
|
||||||
location /portainer/ {
|
location /portainer/ {
|
||||||
proxy_pass http://portainer:9000/;
|
proxy_pass http://portainer:9000/;
|
||||||
}
|
}
|
||||||
|
|
||||||
# Admin Frontend
|
# Admin Frontend
|
||||||
|
# Optional Module, comment this section if you are did not deploy admin_frontend in docker-compose.yml
|
||||||
location / {
|
location / {
|
||||||
proxy_set_header X-Scheme $scheme;
|
proxy_set_header X-Scheme $scheme;
|
||||||
proxy_set_header Host $host;
|
proxy_set_header Host $host;
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue