Files
opensourcepos/docker-compose.yml
T
jekkos f37021a860 docs: move BUILD.md, INSTALL.md, UPGRADE.md into docs/ (#4755)
* docs: move BUILD.md, INSTALL.md, UPGRADE.md into docs/

Closes #4751

- Move the three detailed guides from the repo root into docs/
- Update all links in README.md, .github/ISSUE_TEMPLATE.md,
  docker-compose.yml, and cross-references within the moved guides
- Add docs/**/* to the gulp compress task so release archives
  include the guides under their new docs/ path
- README now links to all three guides
- Root-level files (README, CHANGELOG, LICENSE, SECURITY.md,
  CODE_OF_CONDUCT.md, AGENTS.md) remain in place

* docs: add working-dir note and remove stale 'docs' .gitignore entry

- Add explicit note that Docker/install commands run from repo root
- Remove stale 'docs' line from .gitignore (leftover from old ApiGen
  output) so tracked files under docs/ can be modified normally
2026-10-16 09:20:45 +02:00

38 lines
1.3 KiB
YAML

include:
- docker/docker-mysql.yml
services:
ospos:
image: jekkos/opensourcepos:master
restart: always
depends_on:
- mysql
ports:
- "80:80"
networks:
- app_net
command: ["sh", "-c", "php spark env:provision && exec apache2-foreground"]
volumes:
# .env holds the two runtime-generated secrets (encryption.key +
# throttle.key), persisted as a single host file so the same keys
# survive container recreation (a named volume is a directory and
# forces .env to be a directory, breaking atomicWriteFile's rename).
# create_host_path is explicitly false so a missing host file fails
# startup instead of being auto-created as a directory (see docs/INSTALL.md).
- type: bind
source: ./.env
target: /app/.env
bind:
create_host_path: false
- uploads:/app/public/uploads
- logs:/app/writable/logs
environment:
- CI_ENVIRONMENT=production
- ALLOWED_HOSTNAMES=localhost
- FORCE_HTTPS=false
- PHP_TIMEZONE=UTC
- MYSQL_USERNAME=admin
- MYSQL_PASSWORD=pointofsale
- MYSQL_DB_NAME=ospos
- MYSQL_HOST_NAME=mysql