Files
ampache/README.md

109 lines
3.3 KiB
Markdown
Raw Normal View History

## 👋 Welcome to ampache 🚀
A self-contained Docker image for [Ampache](https://ampache.org/), the open-source web-based music streaming server. Bundles Apache 2, PHP 8.4 via PHP-FPM, MariaDB, and Ampache itself. First run opens the Ampache web installer at `http://localhost:80/`.
## Install my system scripts
```shell
sudo bash -c "$(curl -q -LSsf "https://github.com/systemmgr/installer/raw/main/install.sh")"
sudo systemmgr --config && sudo systemmgr install scripts
```
## Automatic install/update
```shell
dockermgr update ampache
```
## Install and run container
```shell
dockerHome="/var/lib/srv/$USER/docker/casjaysdevdocker/ampache/ampache/latest/rootfs"
mkdir -p "/var/lib/srv/$USER/docker/ampache/rootfs"
git clone "https://github.com/dockermgr/ampache" "$HOME/.local/share/CasjaysDev/dockermgr/ampache"
cp -Rfva "$HOME/.local/share/CasjaysDev/dockermgr/ampache/rootfs/." "$dockerHome/"
docker run -d \
--restart always \
--privileged \
--name casjaysdevdocker-ampache-latest \
--hostname ampache \
-e TZ=${TIMEZONE:-America/New_York} \
-v "$dockerHome/data:/data:z" \
-v "$dockerHome/config:/config:z" \
-p 80:80 \
casjaysdevdocker/ampache:latest
```
## via docker-compose
```yaml
version: "2"
services:
ProjectName:
image: casjaysdevdocker/ampache
container_name: casjaysdevdocker-ampache
environment:
- TZ=America/New_York
- HOSTNAME=ampache
volumes:
- "/var/lib/srv/$USER/docker/casjaysdevdocker/ampache/ampache/latest/rootfs/data:/data:z"
- "/var/lib/srv/$USER/docker/casjaysdevdocker/ampache/ampache/latest/rootfs/config:/config:z"
ports:
- 80:80
restart: always
```
## Environment variables
| Variable | Default | Description |
|----------|---------|-------------|
| `TZ` | `America/New_York` | Container timezone (sets PHP date.timezone) |
| `MARIADB_ROOT_USER_NAME` | `root` | MariaDB root username |
| `MARIADB_ROOT_PASS_WORD` | `random` | MariaDB root password (auto-generated if `random`) |
| `MARIADB_USER_NAME` | `ampache` | MariaDB application username |
| `MARIADB_USER_PASS_WORD` | `random` | MariaDB application password (auto-generated if `random`) |
| `DATABASE_CREATE` | `ampache` | MariaDB database name to create |
| `HOSTNAME` | `ampache` | Container hostname used in Apache vhost |
| `DEBUGGER` | _(unset)_ | Set to `on` to enable bash `set -x` debugging |
Passwords generated on first run are saved to `/config/secure/auth/`.
## Volumes
| Path | Purpose |
|------|---------|
| `/config` | All user-editable config files (Apache 2, PHP 8.4, MariaDB, Ampache) |
| `/data` | MariaDB data (`/data/db/mariadb`), logs (`/data/logs/`), and media library |
## Ports
| Port | Protocol | Description |
|------|----------|-------------|
| `80` | HTTP | Ampache web UI and API |
| `443` | HTTPS | Available when SSL is enabled via `/config/enable/ssl` |
## Get source files
```shell
dockermgr download src casjaysdevdocker/ampache
```
OR
```shell
git clone "https://github.com/casjaysdevdocker/ampache" "$HOME/Projects/github/casjaysdevdocker/ampache"
```
## Build container
```shell
cd "$HOME/Projects/github/casjaysdevdocker/ampache"
buildx
```
## Authors
🤖 casjay: [Github](https://github.com/casjay) 🤖
⛵ casjaysdevdocker: [Github](https://github.com/casjaysdevdocker) [Docker](https://hub.docker.com/u/casjaysdevdocker) ⛵