diff --git a/LinkStack/.env.example b/LinkStack/.env.example new file mode 100644 index 0000000..da144ee --- /dev/null +++ b/LinkStack/.env.example @@ -0,0 +1,21 @@ +# LinkStack Docker Compose - Environment Variables + +# Docker image tag to use for LinkStack. Defaults to "latest" if not set. +LINKSTACK_VERSION=latest + +# Timezone for the container. Defaults to "America/Los_Angeles" if not set. +# Full list: https://en.wikipedia.org/wiki/List_of_tz_database_time_zones +LINKSTACK_TZ=America/Los_Angeles + +# Email address for the Apache server admin. Used in error pages and logs. +LINKSTACK_ADMIN_EMAIL=admin@example.com + +# Host port to expose the LinkStack web UI on. Maps to container port 443 (HTTPS). +LINKSTACK_PORT=443 + +# IP address or hostname of the NFS server used for the app volume. +LINKSTACK_NFS_SERVER=192.168.1.100 + +# NFS export path for the LinkStack app volume (stores all application data). +# Example: :/mnt/pool/linkstack/app +LINKSTACK_NFS_DEVICE=:/mnt/pool/linkstack/app diff --git a/LinkStack/docker-compose-nfs.yaml b/LinkStack/docker-compose-nfs.yaml new file mode 100644 index 0000000..966e09b --- /dev/null +++ b/LinkStack/docker-compose-nfs.yaml @@ -0,0 +1,26 @@ +services: + app: + image: linkstackorg/linkstack:${LINKSTACK_VERSION:-latest} + container_name: linkstack-app + environment: + TZ: ${LINKSTACK_TZ:-America/Los_Angeles} + SERVER_ADMIN: ${LINKSTACK_ADMIN_EMAIL} + UPLOAD_MAX_FILESIZE: 8M + volumes: + - linkstack-app:/htdocs + ports: + - ${LINKSTACK_PORT:-443}:443 + deploy: + resources: + limits: + memory: 512m + restart: unless-stopped + +volumes: + linkstack-app: + name: linkstack-app + driver: local + driver_opts: + type: nfs + o: "addr=${LINKSTACK_NFS_SERVER},rw,noatime,rsize=65536,wsize=65536,timeo=600,nfsvers=4" + device: "${LINKSTACK_NFS_DEVICE}" \ No newline at end of file