Outline: migrate assets to local storage
This commit is contained in:
@@ -5,6 +5,7 @@ services:
|
|||||||
outline_app:
|
outline_app:
|
||||||
image: outlinewiki/outline:1.1.0
|
image: outlinewiki/outline:1.1.0
|
||||||
container_name: outline_app
|
container_name: outline_app
|
||||||
|
user: "{{ user_create_result.uid }}:{{ user_create_result.group }}"
|
||||||
restart: unless-stopped
|
restart: unless-stopped
|
||||||
depends_on:
|
depends_on:
|
||||||
- outline_postgres
|
- outline_postgres
|
||||||
@@ -12,6 +13,8 @@ services:
|
|||||||
networks:
|
networks:
|
||||||
- "outline_network"
|
- "outline_network"
|
||||||
- "web_proxy_network"
|
- "web_proxy_network"
|
||||||
|
volumes:
|
||||||
|
- "{{ media_dir }}:/var/lib/outline/data"
|
||||||
environment:
|
environment:
|
||||||
NODE_ENV: 'production'
|
NODE_ENV: 'production'
|
||||||
URL: 'https://outline.vakhrushev.me'
|
URL: 'https://outline.vakhrushev.me'
|
||||||
@@ -22,16 +25,8 @@ services:
|
|||||||
PGSSLMODE: 'disable'
|
PGSSLMODE: 'disable'
|
||||||
REDIS_URL: 'redis://outline_redis:6379'
|
REDIS_URL: 'redis://outline_redis:6379'
|
||||||
|
|
||||||
FILE_STORAGE: 's3'
|
FILE_STORAGE: 'local'
|
||||||
FILE_STORAGE_UPLOAD_MAX_SIZE: '262144000'
|
FILE_STORAGE_UPLOAD_MAX_SIZE: '262144000' # 250 MB
|
||||||
AWS_ACCESS_KEY_ID: '{{ outline_s3_access_key }}'
|
|
||||||
AWS_SECRET_ACCESS_KEY: '{{ outline_s3_secret_key }}'
|
|
||||||
AWS_REGION: '{{ outline_s3_region }}'
|
|
||||||
AWS_S3_ACCELERATE_URL: ''
|
|
||||||
AWS_S3_UPLOAD_BUCKET_URL: '{{ outline_s3_url }}'
|
|
||||||
AWS_S3_UPLOAD_BUCKET_NAME: '{{ outline_s3_bucket }}'
|
|
||||||
AWS_S3_FORCE_PATH_STYLE: 'true'
|
|
||||||
AWS_S3_ACL: 'private'
|
|
||||||
|
|
||||||
OIDC_CLIENT_ID: '{{ outline_oidc_client_id | replace("$", "$$") }}'
|
OIDC_CLIENT_ID: '{{ outline_oidc_client_id | replace("$", "$$") }}'
|
||||||
OIDC_CLIENT_SECRET: '{{ outline_oidc_client_secret | replace("$", "$$") }}'
|
OIDC_CLIENT_SECRET: '{{ outline_oidc_client_secret | replace("$", "$$") }}'
|
||||||
|
|||||||
@@ -10,10 +10,15 @@
|
|||||||
app_user: "{{ app_name }}"
|
app_user: "{{ app_name }}"
|
||||||
app_owner_uid: 1007
|
app_owner_uid: 1007
|
||||||
app_owner_gid: 1008
|
app_owner_gid: 1008
|
||||||
|
|
||||||
base_dir: "{{ (application_dir, app_name) | path_join }}"
|
base_dir: "{{ (application_dir, app_name) | path_join }}"
|
||||||
data_dir: "{{ (base_dir, 'data') | path_join }}"
|
data_dir: "{{ (base_dir, 'data') | path_join }}"
|
||||||
postgres_data_dir: "{{ (base_dir, 'data', 'postgres') | path_join }}"
|
media_dir: "{{ (base_dir, 'media') | path_join }}"
|
||||||
postgres_backups_dir: "{{ (base_dir, 'backups', 'postgres') | path_join }}"
|
backups_dir: "{{ (base_dir, 'backups') | path_join }}"
|
||||||
|
|
||||||
|
postgres_data_dir: "{{ (data_dir, 'postgres') | path_join }}"
|
||||||
|
postgres_backups_dir: "{{ (backups_dir, 'postgres') | path_join }}"
|
||||||
|
|
||||||
|
|
||||||
tasks:
|
tasks:
|
||||||
- name: "Create user and environment"
|
- name: "Create user and environment"
|
||||||
@@ -35,17 +40,11 @@
|
|||||||
loop:
|
loop:
|
||||||
- "{{ base_dir }}"
|
- "{{ base_dir }}"
|
||||||
- "{{ data_dir }}"
|
- "{{ data_dir }}"
|
||||||
|
- "{{ media_dir }}"
|
||||||
|
- "{{ backups_dir }}"
|
||||||
- "{{ postgres_data_dir }}"
|
- "{{ postgres_data_dir }}"
|
||||||
- "{{ postgres_backups_dir }}"
|
- "{{ postgres_backups_dir }}"
|
||||||
|
|
||||||
- name: "Copy docker compose file"
|
|
||||||
ansible.builtin.template:
|
|
||||||
src: "./files/{{ app_name }}/docker-compose.template.yml"
|
|
||||||
dest: "{{ base_dir }}/docker-compose.yml"
|
|
||||||
owner: "{{ app_user }}"
|
|
||||||
group: "{{ app_user }}"
|
|
||||||
mode: "0640"
|
|
||||||
|
|
||||||
- name: "Copy backup script"
|
- name: "Copy backup script"
|
||||||
ansible.builtin.template:
|
ansible.builtin.template:
|
||||||
src: "./files/{{ app_name }}/backup.template.sh"
|
src: "./files/{{ app_name }}/backup.template.sh"
|
||||||
@@ -54,6 +53,26 @@
|
|||||||
group: "{{ app_user }}"
|
group: "{{ app_user }}"
|
||||||
mode: "0750"
|
mode: "0750"
|
||||||
|
|
||||||
|
- name: "Create backup targets file"
|
||||||
|
ansible.builtin.lineinfile:
|
||||||
|
path: "{{ base_dir }}/backup-targets"
|
||||||
|
line: "{{ item }}"
|
||||||
|
create: true
|
||||||
|
owner: "{{ app_user }}"
|
||||||
|
group: "{{ app_user }}"
|
||||||
|
mode: "0750"
|
||||||
|
loop:
|
||||||
|
- "{{ media_dir }}"
|
||||||
|
- "{{ backups_dir }}"
|
||||||
|
|
||||||
|
- name: "Copy docker compose file"
|
||||||
|
ansible.builtin.template:
|
||||||
|
src: "./files/{{ app_name }}/docker-compose.template.yml"
|
||||||
|
dest: "{{ base_dir }}/docker-compose.yml"
|
||||||
|
owner: "{{ app_user }}"
|
||||||
|
group: "{{ app_user }}"
|
||||||
|
mode: "0640"
|
||||||
|
|
||||||
- name: "Run application with docker compose"
|
- name: "Run application with docker compose"
|
||||||
community.docker.docker_compose_v2:
|
community.docker.docker_compose_v2:
|
||||||
project_src: "{{ base_dir }}"
|
project_src: "{{ base_dir }}"
|
||||||
|
|||||||
Reference in New Issue
Block a user