Provided a new concise portainer configuration allowing users to deploy sftpgo if they wish.
50 lines
1.6 KiB
YAML
50 lines
1.6 KiB
YAML
services:
|
|
sftpgo:
|
|
image: drakkan/sftpgo:latest
|
|
user: "${PUID}:${PGID}"
|
|
container_name: sftpgo
|
|
ports:
|
|
- 8813:8080 # HTTP
|
|
- 2026:2022 # SFTP
|
|
environment:
|
|
# Fixes the "id_rsa: permission denied" error by using the mapped volume
|
|
SFTPGO_CONFIG_DIR: /srv/sftpgo
|
|
SFTPGO_WEBDAVD__BINDINGS__0__PORT: 5007
|
|
SFTPGO_DATA_PROVIDER__DRIVER: mysql
|
|
SFTPGO_DATA_PROVIDER__NAME: sftpgo
|
|
SFTPGO_DATA_PROVIDER__HOST: mysql
|
|
SFTPGO_DATA_PROVIDER__PORT: 3306
|
|
SFTPGO_DATA_PROVIDER__USERNAME: ${DB_USER}
|
|
SFTPGO_DATA_PROVIDER__PASSWORD: ${MYSQL_USER_PWD}
|
|
SFTPGO_COMMON__DEFENDER__ENABLED: "true"
|
|
SFTPGO_COMMON__DEFENDER__BAN_TIME: 15
|
|
SFTPGO_COMMON__DEFENDER__BAN_TIME_INCREMENT: 100
|
|
SFTPGO_COMMON__DEFENDER__THRESHOLD: 5
|
|
SFTPGO_COMMON__DEFENDER__OBSERVATION_TIME: 15
|
|
volumes:
|
|
- ./data:/srv/sftpgo:rw
|
|
- ./user_data:/user_data
|
|
depends_on:
|
|
mysql:
|
|
condition: service_healthy
|
|
restart: on-failure:8
|
|
|
|
mysql:
|
|
image: mariadb:11.8-noble
|
|
container_name: sftpgo-db
|
|
healthcheck:
|
|
# Standard MariaDB 11.x healthcheck using root credentials
|
|
test: ["CMD-SHELL", "mariadb-admin ping -h localhost -u root -p$${MYSQL_ROOT_PWD} || exit 1"]
|
|
interval: 10s
|
|
timeout: 5s
|
|
retries: 5
|
|
start_period: 30s
|
|
environment:
|
|
TZ: ${TZ}
|
|
MYSQL_DATABASE: sftpgo
|
|
MYSQL_USER: ${DB_USER}
|
|
MYSQL_PASSWORD: ${MYSQL_USER_PWD}
|
|
MYSQL_ROOT_PASSWORD: ${MYSQL_ROOT_PWD}
|
|
volumes:
|
|
- ./db:/var/lib/mysql:rw
|
|
restart: on-failure:5 |