diff --git a/apps/outline/.env b/apps/outline/.env index 586cef964..e3c649c82 100644 --- a/apps/outline/.env +++ b/apps/outline/.env @@ -1,47 +1,31 @@ -W9_REPO=wordpress -W9_DIST=community -W9_VERSION=latest - -W9_POWER_PASSWORD=1PrMxExC45LsCT - -# Environments which for user settings when create application -# Named expression: W9_xxx_xxx_SET, xxx refer to file fields -W9_HTTP_PORT_SET=9001 -# W9_HTTPS_PORT_SET=9002 -# W9_DB_PORT_SET=3306 -# W9_SSH_PORT_SET=23 -W9_KEY_SET="dfsjdkjf77xjxcjcj" - -#### -- Not allowed to edit below environments when recreate app based on existing data -- #### - -W9_ID=outline - -# W9_HTTP_PORT or W9_HTTPS_PORT is need at leaset and used for proxy for web application -# Some container (e.g teleport) need HTTPS access, then need to set this pra -W9_HTTP_PORT=80 -W9_HTTPS_PORT=81 - -W9_LOGIN_USER=admin -# use https://1password.com/zh-cn/password-generator/ to genarate 14 bit password -# this password can also use password file -W9_LOGIN_PASSWORD=$W9_POWER_PASSWORD -W9_ADMIN_PATH="/wp-login" - -# Container name's suffix must use one of the value -W9_DB_EXPOSE="mysql,postgresql,mariadb,mongodb,redis" - -# It is used when the application APP needs to set an external URL, which can be IP(or domain), IP:PORT -# If have protocols, should be set it in the APP's ENV -W9_URL=internet_ip:$W9_HTTP_PORT_SET -# modifies W9_URL on init when it is true +W9_REPO=docker.getoutline.com/outlinewiki/outline +W9_DIST='community' +W9_VERSION='latest' +W9_POWER_PASSWORD='V1UQbr1#pE1WobAR' +W9_HTTP_PORT_SET='9001' +W9_ID='outline' +W9_HTTP_PORT=3000 +W9_DB_EXPOSE="postgresql" +W9_URL='internet_ip:$W9_HTTP_PORT_SET' W9_URL_REPLACE=true - W9_NETWORK=websoft9 #### ----------------------------------------------------------------------------------------- #### -# Below environment is created by apphub +# Below environment is created by this app: https://github.com/outline/outline/blob/main/.env.sample + +# This key is need, you can use `openssl rand -hex 32` in your terminal to create it +SECRET_KEY=7a741498da0d8bb5180a902358fdd9cd110fc92fab42097be024b115524a64d6 +UTILS_SECRET=7a741498da0d8bb5180a902358fdd9cd110fc92fab42097be024b115524a64d6 +FILE_STORAGE=local +URL=http://$W9_URL +PORT=3000 +COLLABORATION_URL=http://$W9_URL +PGSSLMODE=disable +FORCE_HTTPS=false +LOG_LEVEL=debug +DATABASE_URL=postgres://postgres:postgres@$W9_ID-postgresql:5432/outline -#W9_NAME="" -#W9_RCODE="" \ No newline at end of file +NODE_ENV=production +REDIS_URL=redis://$W9_ID-redis:6379 diff --git a/apps/outline/Dockerfile b/apps/outline/Dockerfile deleted file mode 100644 index 4364b46fb..000000000 --- a/apps/outline/Dockerfile +++ /dev/null @@ -1,21 +0,0 @@ -# image: https://hub.docker.com/r/websoft9dev/discuzq - -FROM ccr.ccs.tencentyun.com/discuzq/dzq:latest - -LABEL org.opencontainers.image.authors="https://www.websoft9.com" \ - org.opencontainers.image.description="Application packaged by Websoft9" \ - org.opencontainers.image.source="https://github.com/Websoft9/docker-library/tree/main/apps/opencart" \ - org.opencontainers.image.title="OpenCart" \ - org.opencontainers.image.vendor="Websoft9 Inc." \ - org.opencontainers.image.version="4.0.1.1" - -ENV DISCUZQ_MYSQL_HOST=mysql -ENV DISCUZQ_MYSQL_USER=discuzq -ENV DISCUZQ_MYSQL_PASSWORD=discuzq -ENV DISCUZQ_MYSQL_DATABASE=discuzq -ENV DISCUZQ_SITENAME=DiscuzQ - -COPY cmd.sh /tmp -RUN chmod +x /tmp/cmd.sh - -CMD ["/tmp/cmd.sh"] diff --git a/apps/outline/Notes.md b/apps/outline/Notes.md index 1fdbbb29d..d62aa46fa 100644 --- a/apps/outline/Notes.md +++ b/apps/outline/Notes.md @@ -1,2 +1,5 @@ -# Appname +# Outline + +- + ## FAQ diff --git a/apps/outline/docker-compose.yml b/apps/outline/docker-compose.yml index b501aed86..93080d0ff 100644 --- a/apps/outline/docker-compose.yml +++ b/apps/outline/docker-compose.yml @@ -1,48 +1,50 @@ -# image,docs: https://hub.docker.com/_/wordpress/ +# docs: https://docs.getoutline.com/s/hosting/doc/docker-7pfeLP5a8t services: - wordpress: + app: image: $W9_REPO:$W9_VERSION container_name: $W9_ID restart: unless-stopped - #This is for access host from container - # extra_hosts: ["host.docker.internal:host-gateway"] - # command: | - # /bin/bash -c "ping -c 3 host.docker.internal" - logging: - driver: "json-file" - options: - max-file: "5" - max-size: 10m - deploy: - resources: - limits: - memory: 5g - cpus: '0.7' ports: - - $W9_HTTP_PORT_SET:80 - env_file: .env + - $W9_HTTP_PORT_SET:3000 + env_file: + - .env volumes: - - wordpress:/var/www/html - - ./src/php_exra.ini:/usr/local/etc/php/conf.d/php_exra.ini + - outline:/var/lib/outline/data + depends_on: + - postgres + - redis - mariadb: - image: mariadb:10.4 - container_name: $W9_ID-mariadb - restart: unless-stopped - command: --character-set-server=utf8mb4 --collation-server=utf8mb4_unicode_ci --innodb_log_buffer_size=30M + postgres: + image: postgres + container_name: $W9_ID-postgresql volumes: - - mysql_data:/var/lib/mysql + - postgres:/var/lib/postgresql/data + healthcheck: + test: ["CMD", "pg_isready", "-d", "outline", "-U", "postgres"] + interval: 30s + timeout: 20s + retries: 3 environment: - MYSQL_DATABASE: $W9_ID - MYSQL_USER: $W9_ID - MYSQL_PASSWORD: $W9_POWER_PASSWORD - MYSQL_ROOT_PASSWORD: $W9_POWER_PASSWORD + POSTGRES_USER: 'postgres' + POSTGRES_PASSWORD: 'postgres' + POSTGRES_DB: 'outline' + + redis: + image: redis + container_name: $W9_ID-redis + command: redis-server --bind 0.0.0.0 --loglevel verbose + healthcheck: + test: ["CMD", "redis-cli", "ping"] + interval: 10s + timeout: 30s + retries: 3 volumes: - wordpress: - mysql_data: + outline: + postgres: + redis: networks: default: diff --git a/apps/outline/src/after_up.sh b/apps/outline/src/after_up.sh deleted file mode 100644 index 8b1378917..000000000 --- a/apps/outline/src/after_up.sh +++ /dev/null @@ -1 +0,0 @@ - diff --git a/apps/outline/src/encrypt.sh b/apps/outline/src/encrypt.sh deleted file mode 100644 index 2939685f7..000000000 --- a/apps/outline/src/encrypt.sh +++ /dev/null @@ -1,12 +0,0 @@ -#!/bin/bash -export PATH=/sbin:/bin:/usr/sbin:/usr/bin:/usr/local/sbin:/usr/local/bin -clear - - - -# Add encrypt script below if use W9_ENCRYPT_PASSWORD at .env file -# ------------- start ------------------------- - - - -# ------------- end --------------------------- diff --git a/apps/outline/src/filelist b/apps/outline/src/filelist deleted file mode 100644 index 341240aed..000000000 --- a/apps/outline/src/filelist +++ /dev/null @@ -1,3 +0,0 @@ -docker-compose.yml -script/test.sh -docker \ No newline at end of file diff --git a/apps/outline/src/get_version.sh b/apps/outline/src/get_version.sh deleted file mode 100644 index 8b1378917..000000000 --- a/apps/outline/src/get_version.sh +++ /dev/null @@ -1 +0,0 @@ - diff --git a/apps/outline/src/nginx-proxy.conf.template b/apps/outline/src/nginx-proxy.conf.template deleted file mode 100644 index 951364ffe..000000000 --- a/apps/outline/src/nginx-proxy.conf.template +++ /dev/null @@ -1,57 +0,0 @@ -proxy_busy_buffers_size 512k; -proxy_buffers 4 512k; -proxy_buffer_size 256k; -client_max_body_size 50m; -# override default location / -location / { - add_header X-Served-By $host; - proxy_set_header Host $host; - proxy_set_header X-Forwarded-Scheme $scheme; - proxy_set_header X-Forwarded-Proto $scheme; - proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; - proxy_set_header X-Real-IP $remote_addr; - proxy_pass $forward_scheme://$server:$port$request_uri; - proxy_set_header Upgrade $http_upgrade; - proxy_set_header Connection upgrade; - } - -location /console { - proxy_pass http://$server:8080; - proxy_http_version 1.1; - proxy_set_header Host $http_host; - proxy_set_header X-Real-IP $remote_addr; - proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; - proxy_set_header X-Forwarded-Proto $scheme; -} - -# for echo some useful information -location / { - default_type text/plain; - return 200 'Hello World'; -} - -location /oida/ { -# this is the address and port of the ORDS installation -proxy_pass http://127.0.0.1:8080/ords/; - -# set Origin to blank to avoid Chrome problems with CORS -proxy_set_header Origin "" ; - -# pass along some header variables with the public host name/port/and so on -proxy_set_header Host $host; -proxy_set_header X-Forwarded-Host $host:$server_port; -proxy_set_header X-Real-IP $remote_addr; -proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; -proxy_set_header X-Forwarded-Proto $scheme; - -# this reverse proxies any "location" headers being passed in the response -proxy_redirect http://$host/ords/ https://$host/oida/; - -# also tell cookies their public path -proxy_cookie_path /ords/ /oida/; - -# reverse proxy links included in response (ie from ORDS webservice) -sub_filter_types application/json ; -sub_filter http://$host/ords/ https://$host/oida/; -sub_filter_once off; -} diff --git a/apps/outline/src/php_exra.ini b/apps/outline/src/php_exra.ini deleted file mode 100644 index b253d5718..000000000 --- a/apps/outline/src/php_exra.ini +++ /dev/null @@ -1,8 +0,0 @@ -file_uploads = On -max_input_time = 800 -max_execution_time = 300 -memory_limit = 600M -upload_max_filesize = 900M -post_max_size = 900M -max_file_uploads = 200 -error_reporting = E_ALL & ~E_DEPRECATED & ~E_STRICT \ No newline at end of file diff --git a/apps/outline/src/replace_url.sh b/apps/outline/src/replace_url.sh deleted file mode 100644 index f737258b3..000000000 --- a/apps/outline/src/replace_url.sh +++ /dev/null @@ -1 +0,0 @@ -# some application have write url to database or config file, once replaced url at .env, it should replace it at config file or database \ No newline at end of file